Biblioteca Python para teoria musical, composição e criação de esboços de áudio, que permite analisar acordes e escalas e gerar MIDI tocável e som a partir de código.
Tonejs/Tone.js
Um framework de Web Audio para criar música interativa e sintetizadores no navegador, com agendamento de transporte no estilo de uma DAW.
- Estrelas
- 14,889
- Forks
- 1,087
- Issues abertas
- 50
- Último commit
- há 7 dias
O que é?
Tone.js é um framework JavaScript para criar música interativa no navegador com base na Web Audio API. Ele oferece recursos semelhantes aos de uma DAW, como um Transport global para sincronizar e agendar eventos, além de sintetizadores, samplers e efeitos prontos que podem ser conectados entre si.
A biblioteca também oferece componentes de baixo nível para criar sintetizadores, efeitos e sinais de controle personalizados. O tempo pode ser especificado em unidades musicais, como "8n" ou "1m", ou em segundos, e os callbacks recebem tempos com precisão de amostra para o agendamento. Arquivos de áudio podem ser carregados com Player e Sampler, que alteram a afinação das amostras para preencher os intervalos entre as notas.
Tone.js pode ser instalado via npm e também carregado diretamente do unpkg em uma página HTML. Os navegadores exigem uma interação do usuário antes de reproduzir áudio, então os aplicativos chamam Tone.start() a partir de um handler de clique ou keydown.
Recursos principais
- 01Transport global para sincronizar e agendar eventos, semelhante à visualização de arranjo de uma DAW.
- 02Sintetizadores monofônicos e polifônicos prontos, incluindo FMSynth, AMSynth, NoiseSynth e PolySynth.
- 03Sampler e Player para carregar arquivos de áudio e ajustar a afinação das amostras entre as notas.
- 04Efeitos integrados que podem ser conectados em série ou em paralelo.
- 05Parâmetros Signal na taxa de áudio, com rampas e curvas de automação.
- 06Notação de tempo musical, como "4n" e "8t", além de segundos.
Casos de uso
- Criar sequenciadores musicais ou drum machines para navegador.
- Criar música generativa interativa ou visualizações de áudio em uma página web.
- Prototipar sintetizadores e efeitos com Web Audio.
- Adicionar instrumentos baseados em samples a um jogo web ou aplicativo de educação musical.
Início rápido
- 1
Instale o Tone.js pelo npm
npm install tone - 2
Importe o Tone.js no seu projeto
import * as Tone from "tone"; - 3
Crie um sintetizador, conecte-o aos alto-falantes e toque uma nota depois que o usuário clicar (chame Tone.start() primeiro)
Antes de usar
- Os navegadores bloqueiam o áudio até que o usuário realize uma ação, por isso Tone.start() deve ser chamado a partir de um evento do usuário.
Tópicos
Perguntas frequentes
- O que é Tone.js?
- Um framework de Web Audio para criar música interativa e sintetizadores no navegador, com agendamento de transporte no estilo de uma DAW. Tone.js é um framework JavaScript para criar música interativa no navegador com base na Web Audio API. Ele oferece recursos semelhantes aos de uma DAW, como um Transport global para sincronizar e agendar eventos, além de sintetizadores, samplers e efeitos prontos que podem ser conectados entre si.
- Tone.js é gratuito? Qual é a licença?
- Tone.js é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
- Tone.js ainda é mantido?
- Manutenção ativa. O último commit de Tone.js foi em 1 de nov. de 2026.
- Para que posso usar Tone.js?
- Criar sequenciadores musicais ou drum machines para navegador. Criar música generativa interativa ou visualizações de áudio em uma página web. Prototipar sintetizadores e efeitos com Web Audio. Adicionar instrumentos baseados em samples a um jogo web ou aplicativo de educação musical.
- Como instalar Tone.js?
- Instale o Tone.js pelo npm: npm install tone Importe o Tone.js no seu projeto: import * as Tone from "tone"; Crie um sintetizador, conecte-o aos alto-falantes e toque uma nota depois que o usuário clicar (chame Tone.start() primeiro)
- Onde consigo Tone.js?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/Tonejs/Tone.js
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
DAW online para produzir música no navegador, sem cadastro nem rastreamento.
Uma jornada de barco em 3D por um vale fluvial japonês, direto no navegador e renderizada em tempo real com three.js, em quatro estações e a qualquer hora do dia.
Um player de áudio web de alta precisão que sincroniza músicas entre vários dispositivos com controles de áudio espacial.
Curso para iniciantes liderado pela Microsoft que ensina IA generativa com JavaScript por meio de uma história de viagem no tempo e um app de chat com personagens.
Coleção selecionada de exemplos Docker Compose prontos para executar, que mostram como conectar serviços comuns para desenvolvimento local.