Produtos digitais

Como criar uma ferramenta de música com IA usando arquivos MIDI

No Midi Plays, comecei com um player de piano e usei arquivos MIDI para criar outras visualizações, páginas de música e vídeos para o YouTube.

Assistir ao vídeo original no YouTube
Thumbnail do vídeo: Usando a IA pra criar uma ferramenta online de música com foco em PSEO

Eu já procurava no YouTube músicas tocadas no estilo Synthesia para acompanhar no piano. O Midi Plays começou com essa vontade de ter um player que eu pudesse abrir no navegador. Depois, percebi que o mesmo arquivo MIDI podia alimentar mais do que as teclas caindo na tela: dava para mostrar outros instrumentos, acordes, partitura e até criar páginas para cada faixa. A primeira versão funcional saiu em um dia com ajuda da IA; fazer esse arquivo continuar útil depois do play foi o trabalho que deu forma ao projeto.

Comece pelo uso que você já sente falta

Eu comecei pelo piano porque era o instrumento que eu já estudava com vídeos de Synthesia. Na primeira versão, o player precisava fazer o básico bem: tocar a faixa, deixar avançar para qualquer ponto e permitir que eu ajustasse a altura da área das notas. Também coloquei zoom e movimento para conseguir enquadrar a parte da música que queria acompanhar.

A partir daí, fui abrindo novas abas para violão, violino, harpa, kalimba e instrumentos de sopro. Cada aba mostra a mesma música de outro jeito, com os acordes e a partitura disponíveis junto da execução. Essa ampliação nasceu do projeto que eu já tinha na tela: em vez de começar dez aplicativos diferentes, eu aproveitei o arquivo que já alimentava o piano e acrescentei outras leituras musicais.

Faça cada arquivo MIDI virar uma página de música

O catálogo público segue uma lógica simples: cada MIDI que eu envio pode ter sua própria página, montada a partir das informações daquela faixa. No meu caso, o nome do arquivo ajuda a identificar a música, e o processamento acrescenta contexto como descrição, autoria e notas. A página nasce do arquivo que eu publiquei, em vez de ser apenas um título acompanhado por um parágrafo igual aos outros.

O caminho que usei para essa página foi este:

  1. Envie a faixa MIDI que vai entrar no catálogo público.
  2. Use o nome do arquivo e os dados da música para preencher o contexto, a autoria, a descrição e as notas exibidas.
  3. Entregue as informações principais no HTML gerado no servidor, para que o conteúdo da faixa já esteja presente quando a página abrir.
  4. Carregue o JavaScript específico de um instrumento quando a pessoa escolher a aba correspondente, em vez de baixar todos os renderizadores de uma vez.

Escolha com cuidado o que realmente precisa de tradução

Eu traduzi os controles da plataforma, mas mantive as páginas do catálogo em inglês. Cada faixa tinha basicamente o nome da música e a identificação do autor; criar dezenas de versões com tão pouco conteúdo para adaptar não me pareceu um bom uso do trabalho. Preferi deixar a interface acessível em outros idiomas e não multiplicar páginas quase iguais só para mudar o idioma do título.

Essa escolha também ajudou a manter o foco no material que a faixa realmente oferece. O visitante encontra a música, os dados musicais e o player; a página não depende de inventar um texto longo que não acrescenta informação àquela gravação.

Mantenha o catálogo público separado dos arquivos pessoais

O player também permite abrir um MIDI que está no computador da pessoa. Eu guardo essa lista no `localStorage` do navegador; o arquivo pessoal não é enviado para o servidor nem passa a fazer parte do diretório público. Assim, dá para estudar uma música própria sem publicar a faixa no site.

Como esse armazenamento é local, a lista pertence àquele navegador e àquele perfil. Ela não funciona como uma biblioteca ligada a uma conta e não acompanha a pessoa em outro dispositivo. Se os dados do navegador forem apagados, a cópia salva ali deixa de aparecer. Por isso mantenho duas coisas separadas: as faixas que eu escolho publicar e os arquivos que cada pessoa abre para uso próprio.

Reaproveite a mesma faixa para montar vídeos

Além do player, criei um aplicativo que usa o MIDI para gerar um vídeo com a execução, os acordes e as notas. Fiz visualizações para piano e violão, aproveitando o mesmo arquivo que já entra no site. Isso evita reconstruir a música para cada formato: a faixa continua sendo a origem dos dados, e cada ferramenta mostra esses dados de uma forma.

Eu ainda estava corrigindo a parte das mãos. O gerador sugeria posições de dedos que pareciam possíveis na tela, mas eram anatomicamente impossíveis ou complicadas demais no instrumento. Também queria completar o fluxo que monta o título e a descrição e publica no canal Midiplays. Naquele estágio, gerar um vídeo já funcionava; deixar a publicação inteira automática ainda era trabalho em andamento.

Use a IA para chegar ao protótipo e revise o que a música denuncia

Eu usei o GPT-5.4 no trabalho principal e chamei o GPT-5.5 quando apareciam erros que eu não estava conseguindo resolver. Foram muitas rodadas de correção e muito token. A primeira versão funcional saiu em um dia; isso descreve o protótipo, não o tempo necessário para deixar cada instrumento, visualização e fluxo de publicação pronto.

Eu não sou programador que domina tudo. Consigo ler o código, reconhecer uma função e desconfiar quando algo está errado. Se estivesse começando hoje, explicaria a ideia para o GPT e usaria a orientação dele para transformar a experiência que quero numa sequência de mudanças para o Codex, o Claude Code ou outra ferramenta de programação. Depois, conferiria o que apareceu na tela e devolveria para a IA os erros concretos que encontrei.

No Midi Plays, conhecer um pouco de música foi essencial para essa revisão. Uma mão desenhada na posição errada pode passar despercebida para quem só olha a animação, mas quem toca percebe na hora. O mesmo vale para notas e acordes sem sentido. A IA acelerou a construção; minha familiaridade com piano e com o uso dessas ferramentas me ajudou a avaliar o resultado e pedir os ajustes certos.

Procure ideias em áreas que você já conhece

Eu gosto de música, toco piano e há anos procurava no YouTube apresentações no estilo Synthesia. Antes de o canal se chamar Midiplays, eu já publicava esse tipo de música. O player e o canal vieram de uma proximidade real com o assunto. É muito mais fácil notar o que falta numa ferramenta quando você mesmo usa esse tipo de produto e conhece a tarefa por dentro.

A concorrência continua existindo e uma ferramenta pode ser copiada. Há sites simples, como cronômetros online, que seguem atraindo público há muito tempo; a dificuldade não está apenas em alguém conseguir programar outro. Também conta a posição que o serviço conquistou, o dinheiro disponível para competir e os links que apontam para ele. Eu prefiro começar por uma utilidade que consigo avaliar a tentar entrar num mercado só porque parece pouco explorado.

Um amigo me mostrou uma plataforma para fotógrafos: o profissional cria um link para a galeria, e o cliente escolhe as fotos. Ele comentou que mais de 20 mil fotógrafos assinavam o serviço. Eu não conhecia aquele mercado, mas entendi o valor da ideia: ela resolve um trecho concreto do trabalho do fotógrafo e do cliente. Um nicho pode parecer pequeno até alguém organizar uma tarefa que já acontece o tempo todo.

No meu caso, o Midi Plays reúne algo que eu já queria fazer: o catálogo transforma cada MIDI em uma página e o canal apresenta a mesma música em vídeo. Minha opinião é que publicar apenas mais um texto ficou bem mais fácil de copiar. Uma ferramenta que deixa a pessoa tocar, enxergar e estudar os dados da música tem uma função própria — e nasceu de uma coisa que eu já conhecia.

A etapa de transformar arquivos MIDI em vídeos aparece com mais detalhes em gerar vídeos automáticos e dinâmicos.