Hola a todos. Estoy muy agradecida de unirme a react advanced hoy para presentarles mi proyecto de diseño de sonido. Soy Claudia Bressi, y soy una desarrolladora senior de front-end y móvil. Vivo cerca de Venecia en Italia, y trabajo para una agencia de consultoría en Milán, Italia, donde construimos aplicaciones utilizando react y react native para móviles.
Realmente me apasiona tanto la música como la informática. Y desde que era niña, comencé a aprender piano y también a usar la computadora en la oficina de mi padre. En la actualidad, todavía me encanta tocar instrumentos como el teclado electrónico y la guitarra, escuchar mis listas de reproducción favoritas y me encanta ir a conciertos y festivales. Por eso intento combinar un proyecto de front-end con la música.
Hablemos del proyecto. El objetivo principal es visualizar la música utilizando la biblioteca React. Y la aplicación en general puede manejar cualquier tipo de archivo audio, por ejemplo, archivos MP3 o WAV. Y como resultado, generamos un componente visual para cada espectro de sonido. Y como resultado, generamos un componente visual para cada espectro de sonido. Sumergámonos más en los detalles del proyecto. El código es React y TypeScript para tener una mayor facilidad de mantenimiento. Para manejar un estado global en toda la aplicación, he configurado Redux toolkit Para animar componentes, he optado por la biblioteca Framer Motion, que es un paquete bastante moderno y sencillo. Luego, en los componentes de interfaz de usuario globales, como botones, entradas y tipografía, he elegido el conocido Material UI, que probablemente muchos de ustedes ya usen en sus aplicaciones de React.
La API de Web Audio es una biblioteca increíble que te permite trabajar con audio data. Nos brinda a los desarrolladores miles de métodos para analizar, filtrar y visualizar sonidos. Además, hay múltiples opciones disponibles para agregar efectos especiales 3D, panoramización, división multicanal y mucho más. Para este proyecto, principalmente utilizamos dos interfaces, el nodo Analizador, que nos permite manejar información específica del audio como las frecuencias, y el Audio Worklet, que nos permite a los desarrolladores agregar nuevos módulos que se ejecutan en el hilo principal. Hablando en términos generales, cada vez que trabajas con la API de Web Audio, el resultado generado será un grafo acíclico directo, donde cada nodo es una fuente de audio, un efecto de filtro o un destino de destino. A través de la API de Web Audio, las visualizaciones se logran evaluando parámetros de audio a lo largo del tiempo. Estas variables son ganancia, tono y frecuencias la mayoría de las veces. La API de Web Audio tiene, de hecho, el nodo de analizador mencionado anteriormente que deja inalterada la señal de audio que pasa a través de él. En cambio, produce data de audio que se puede pasar a una tecnología de visualización como HTML Canvas o, en nuestro caso, componentes funcionales de React. Un dato curioso esperado es la compatibilidad con el navegador. Como pueden ver, Internet Explorer no es compatible en absoluto. Afortunadamente para nosotros, este navegador se retirará el próximo año el 15 de junio.
Comments