es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Ayuda de Tone.js en la estructura.

Tengo una aplicación de música que se usa para componer música, puedo tener hasta 3 instrumentos tocando y tengo 2 efectos disponibles, cambio de tono y reverb.

Actualmente estoy utilizando la API de audio web estándar, pero a veces tengo problemas cuando suenan demasiadas notas a la vez, el audio se descompone. Además, me gustaban algunas características que ofrece tone.js.

Quería probar y usar tone.js para abordar esos problemas (si es posible) y tener todas las características que tenía anteriormente. El problema es que revisé rápidamente la documentación, pero realmente no entiendo cómo debería estructurar las cosas.

Tengo 21 archivos de audio, uno para cada nota, para los 3 instrumentos. Mis preguntas son:

1) ¿en qué debo enfocarme para lograr lo que quiero? Es decir, tener 3 instrumentos tocando juntos, tener reverb y la posibilidad de aumentar el tono, cargando desde archivos de audio.
2) ¿La velocidad de ejecución es algo que debería preocuparme?
3) ¿Hay algún tipo de tutorial/guía para hacer algo similar a lo que quiero hacer?

Cualquier sugerencia también es bienvenida. El sitio web es: aquí.

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Utilizando tone.js para una aplicación musical

    Como experto en TI especializado en javascript, audio, html5-audio, web-audio-api y tone.js, aquí hay algunos consejos para ayudarte a lograr tus objetivos:

    1. Alcanzar tus características deseadas

    Para lograr las características deseadas, necesitas entender cómo estructurar tu código utilizando tone.js. Aquí tienes algunos consejos:

    • Para cargar archivos de audio, puedes usar los módulos Sampler y Player de tone.js. Te permiten cargar y activar archivos de audio en función de las notas MIDI.
    • Para hacer que 3 instrumentos toquen juntos, puedes usar PolySynth, que crea múltiples instancias de MonoSynth y toca notas de forma polifónica.
    • Para agregar un efecto de reverb, puedes usar Freeverb, que es un módulo de reverberación simple que puedes agregar al objeto Destination.
    • Para cambiar la altura de una nota, puedes usar PitchShift, que es un módulo que cambia la altura de la señal de entrada.

    2. Rendimiento

    El rendimiento es algo que debes considerar al usar tone.js. Necesitas asegurarte de que tu aplicación pueda manejar el número de instrumentos y efectos que deseas usar. Para mejorar el rendimiento, puedes:

    • Usar el módulo Transport de tone.js para programar eventos y controlar el tiempo.
    • Usar el módulo Loop de tone.js para repetir secuencias de notas y eventos.
    • Ser cauteloso con la cantidad de notas y efectos activos. Puedes usar el módulo MaxVoices de tone.js para limitar la cantidad de voces que están activas simultáneamente.

    3. Recursos

    Hay muchos recursos disponibles para ayudarte a comenzar con tone.js. Aquí hay algunos enlaces útiles:

    Al utilizar tone.js, puedes mejorar el rendimiento de tu aplicación musical y agregar las características que deseas. ¡Buena suerte!

Comments are closed.