Repolode
Tonejs

Tonejs/Tone.js

Framework de Web Audio para crear música interactiva y sintetizadores en el navegador, con programación de eventos mediante un transporte al estilo de un DAW.

Estrellas
14,889
Forks
1,087
Issues abiertos
50
Último commit
hace 7 días

¿Qué es?

Tone.js es un framework de JavaScript para crear música interactiva en el navegador sobre la Web Audio API. Ofrece funciones similares a las de un DAW, como un Transport global para sincronizar y programar eventos, además de sintetizadores, samplers y efectos preconfigurados que se pueden conectar entre sí.

La biblioteca también incluye componentes de bajo nivel para crear sintetizadores, efectos y señales de control personalizados. El tiempo se expresa en unidades musicales como «8n» o «1m», además de en segundos, y las funciones callback reciben tiempos con precisión de muestra para programar eventos. Player y Sampler permiten cargar archivos de audio; Sampler cambia el tono de las muestras para cubrir las notas que faltan.

Tone.js se puede instalar mediante npm y también cargar directamente desde unpkg en una página HTML. Los navegadores requieren una interacción del usuario antes de reproducir audio, así que las aplicaciones llaman a Tone.start() desde un manejador de eventos click o keydown.

Funciones clave

  • 01Transport global para sincronizar y programar eventos, similar a la vista de arreglos de un DAW.
  • 02Sintetizadores monofónicos y polifónicos preconfigurados, como FMSynth, AMSynth, NoiseSynth y PolySynth.
  • 03Sampler y Player para cargar archivos de audio y ajustar el tono de las muestras para distintas notas.
  • 04Efectos integrados que se pueden conectar en serie o en paralelo.
  • 05Parámetros Signal a velocidad de audio, con rampas y curvas de automatización.
  • 06Notación de tiempo musical, como «4n» y «8t», además de segundos.

Casos de uso

  • Crear secuenciadores musicales o cajas de ritmos en el navegador.
  • Crear música generativa interactiva o visualizaciones de audio en una página web.
  • Crear prototipos de sintetizadores y efectos con Web Audio.
  • Añadir instrumentos basados en muestras a un juego web o una aplicación de educación musical.

Inicio rápido

  1. 1

    Instala Tone.js desde npm

    npm install tone
  2. 2

    Importa Tone.js en tu proyecto

    import * as Tone from "tone";
  3. 3

    Crea un sintetizador, conéctalo a los altavoces y reproduce una nota después de que el usuario haga clic (llama primero a Tone.start())

Antes de usarlo

  • Los navegadores bloquean el audio hasta que el usuario realiza una acción, por lo que Tone.start() debe llamarse desde un evento del usuario.

Temas

#web-audio#music#audio-synthesis#javascript#typescript#scheduling#sampling#samples#synthesis#tone

Preguntas frecuentes

¿Qué es Tone.js?
Framework de Web Audio para crear música interactiva y sintetizadores en el navegador, con programación de eventos mediante un transporte al estilo de un DAW. Tone.js es un framework de JavaScript para crear música interactiva en el navegador sobre la Web Audio API. Ofrece funciones similares a las de un DAW, como un Transport global para sincronizar y programar eventos, además de sintetizadores, samplers y efectos preconfigurados que se pueden conectar entre sí.
¿Tone.js es gratuito? ¿Qué licencia tiene?
Tone.js es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿Tone.js sigue mantenido?
Mantenimiento activo. El último commit de Tone.js fue el 1 nov 2026.
¿Para qué puedo usar Tone.js?
Crear secuenciadores musicales o cajas de ritmos en el navegador. Crear música generativa interactiva o visualizaciones de audio en una página web. Crear prototipos de sintetizadores y efectos con Web Audio. Añadir instrumentos basados en muestras a un juego web o una aplicación de educación musical.
¿Cómo se instala Tone.js?
Instala Tone.js desde npm: npm install tone Importa Tone.js en tu proyecto: import * as Tone from "tone"; Crea un sintetizador, conéctalo a los altavoces y reproduce una nota después de que el usuario haga clic (llama primero a Tone.start())
¿Dónde consigo Tone.js?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/Tonejs/Tone.js

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados

Una biblioteca de Python para teoría musical, composición y bocetos de audio, que permite analizar acordes y escalas y generar MIDI y sonido reproducibles desde código.

Recursos de aprendizaje#music-theory#music#midi
1,7 mil+1 esta semana84PythonMITActualizado hace 8 días