====== Programación para Audio/Música ====== Existen varios caminos para hacer de un computador una herramienta de audio o música, en el alto nivel existen herramientas para hacer prototipos que ya traen varias unidades generadoras pre-escritas, generadores de onda, envolventes, filtros, etc. en esta familia están entornos basados en texto como ChucK, Supercollider, Csound, etc y otros gráficos como Pure Data. Cuando estamos buscando optimizar el rendimiento podemos bajar a niveles más cercanos a la máquina usando C++, incluso C. ===== C++ ===== Usando **Tonic**(([[https://github.com/TonicAudio/Tonic| Tonic:C++ library]])) librería que ya trae algunos generadores de sonido y procesadores. ==== linux ==== $ git clone https://github.com/TonicAudio/Tonic.git $ cd Tonic/examples/Standalone/Linux Para usar Jack se edita el archivo ''Makefile'' en la sección ''AUDIO_API'' poniendo la opción ''UNIX_JACK'' por ahora hay que agregar comas en la sección ''ifeq ($(AUDIO_API),UNIX_JACK)'' pero esto se arreglará pronto [[https://github.com/TonicAudio/Tonic/issues/267 | Aquí se explica lo que hay que cambiar.]] Ahora complilamos el demo con: $ make y para escucharlo: $ ./demo El compilador apunta al archivo ''main.cpp'' que se encuentra en ''examples/Standalone/TonicStandaloneDemo/'' de esa manera tenemos un envoltorio de JACK para el código que escribamos en la sección ''--------- MAKE A SYNTH HERE -----------'' ((https://github.com/son0p/Tonic/blob/master/examples/Standalone/TonicStandaloneDemo/main.cpp#L42)), cambiar cosas, compilar, escuchar, volver a cambiar cosas, compilar de nuevo, escuchar, así podemos ir explorando la librería.