Fatos Importantes
- Usa TensorFlow.js para detecção de pitch em tempo real.
- Exporta arquivos MIDI e código Strudel/TidalCycles.
- Roda inteiramente no lado do cliente usando Web Audio API.
- Utiliza quatro algoritmos: CREPE, YIN, FFT/HPS e AMDF.
- Criado para facilitar o acesso para usuários sem conhecimento de teoria musical.
Resumo Rápido
Um novo aplicativo de navegador chamado Voice Composer foi lançado, projetado para converter entrada de voz em dados musicais utilizáveis. A ferramenta visa as comunidades de live coding e DJ ao vivo, permitindo que usuários hummelodias e gerem código instantaneamente para sistemas de música baseados em padrões.
O aplicativo utiliza TensorFlow.js e outros algoritmos para detecção de pitch em tempo real. Ele roda inteiramente no navegador via Web Audio API, garantindo que dados de áudio brutos nunca saiam da máquina do usuário. A ferramenta exporta arquivos MIDI, rolos de piano visuais e código compatível com Strudel e TidalCycles.
Funcionalidade Principal e Algoritmos
O Voice Composer aborda um problema específico para aspirantes a live coders: a dificuldade de traduzir ideias melódicas em código sem amplo conhecimento de teoria musical. Ao capturar áudio em tempo real, a ferramenta converte entrada vocal em padrões algoritmicamente imediatamente.
O aplicativo emprega quatro métodos distintos de detecção de pitch para lidar com várias entradas de áudio:
- CREPE: Um modelo de aprendizado de máquina via TensorFlow.js, notado por alta precisão, mas maior custo computacional.
- YIN: Um método de estimativa de frequência fundamental baseado em autocorrelação, rápido e eficaz para entrada monofônica limpa.
- FFT com Espectro de Produto Harmônico: Otimizado para lidar com sons ricos em harmônicos.
- AMDF: Função de Diferença de Magnitude Média, uma opção leve para processamento rápido.
Os usuários podem alternar entre esses algoritmos com base em seu caso de uso específico e qualidade da entrada.
Arquitetura Técnica
Construído usando React, a ferramenta opera inteiramente dentro do navegador. Ela aproveita a Canvas API para fornecer renderização de forma de onda em tempo real e feedback visual através de uma interface de rolo de piano.
A decisão de manter todo o processamento no lado do cliente garante privacidade e baixa latência. O criador visualiza a ferramenta evoluindo para uma Estação de Trabalho de Áudio Digital (DAW) completa ao longo do tempo. Atualmente, ela está otimizada para uso em desktop, onde funciona mais efetivamente.
Integração com Live Coding
A saída principal visa o ambiente de live coding. Ao gerar código Strudel/TidalCycles, a ferramenta permite integração imediata em configurações de performance existentes. Isso remove a barreira de escrever sintaxe manualmente para padrões complexos.
O criador construiu o aplicativo em um fim de semana para resolver seu próprio desafio de aprender live coding sem um background musical. O software resultante torna "trivial capturar ideias melódicas e usá-las imediatamente em sistemas de música baseados em padrões."
Disponibilidade e Desenvolvimento Futuro
A ferramenta está atualmente disponível para testes via link hospedado. O código-fonte foi disponibilizado em um repositório público, convidando contribuições e feedback da comunidade.
Atualizações futuras visam expandir as capacidades do aplicativo, aproximando-se da funcionalidade de um DAW padrão. Isso sugere suporte potencial para gravação multi-track, processamento de efeitos e compatibilidade mais ampla de formato de arquivo em lançamentos subsequentes.




