Lenguaje de programación apropiado para diseñar software de música [cerrado]

11

Quiero diseñar un software para mi instrumento musical que sea rítmico (no hay melodía). Todo lo que quiero que haga este software es:

  1. hacer que el usuario pueda componer música

  2. reproducir lo que el usuario ha compuesto

para ese propósito necesito grabar diferentes sonidos de ese instrumento y unir cada signo con el sonido apropiado.

¿Qué lenguaje de programación es adecuado para este propósito?

Preludio
fuente
1
¿Has mirado el software existente que satisfará tus necesidades?
Bernard
no hay forma libre con el rendimiento que quiero que tenga en Irán
Preludio

Respuestas:

18

Lea sobre estos idiomas y decida cuál se adapta a sus necesidades:

Súper colisionador

SuperCollider es un entorno y lenguaje de programación para síntesis de audio en tiempo real y composición algorítmica. Proporciona un lenguaje orientado a objetos interpretado que funciona como un cliente de red para un servicio de síntesis de sonido en tiempo real.

Datos puros

Pd (también conocido como Pure Data) es un entorno de programación gráfica en tiempo real para audio, video y procesamiento gráfico. Es la tercera rama principal de la familia de lenguajes de programación de parches conocida como Max (Max / FTS, ISPW Max, Max / MSP, jMax, etc.)

Arrojar

es un nuevo (y en desarrollo) lenguaje de programación de audio para síntesis, composición, rendimiento y ahora, análisis en tiempo real, totalmente compatible con MacOS X, Windows y Linux. ChucK presenta un nuevo modelo de programación concurrente basado en el tiempo que es altamente preciso y expresivo (lo llamamos fuertemente cronometrado), así como tasas de control dinámico y la capacidad de agregar y modificar código sobre la marcha. Además, ChucK admite dispositivos MIDI, OSC, HID y audio multicanal. Es divertido y fácil de aprender, y ofrece a los compositores, investigadores e intérpretes una poderosa herramienta de programación para construir y experimentar con programas complejos de síntesis / análisis de audio y control interactivo en tiempo real.

Ashwini Chaudhary
fuente
3

Probablemente deberías consultar Overtone :

Overtone es un entorno de audio de código abierto creado para explorar ideas musicales desde la síntesis y el muestreo hasta la construcción de instrumentos, la codificación en vivo y la interferencia colaborativa. Utilizamos el servidor de sintetizador SuperCollider como motor de audio, y Clojure se utiliza para desarrollar las API y la aplicación. Sintetizadores, efectos, analizadores y generadores musicales se pueden programar en Clojure.

Hay una buena demostración en video del uso de Overtone para la codificación en vivo de música y síntesis de instrumentos.

Overtone usa SuperCollider debajo del capó.

Una de las cosas buenas de Overtone es que, si bien proporciona un entorno para la programación musical, el lenguaje utilizado (Clojure) es un lenguaje de propósito general. Por lo tanto, no está obligado a aprender un nuevo idioma que solo sea útil para las partes de música.

mikera
fuente
1

Si desea combinar el sonido con una interfaz de usuario de su propio diseño (posiblemente incluso su propio hardware), eche un vistazo a Procesamiento . Es un lenguaje rico en medios que debe ser fácil de aprender, y la cultura que crece en torno al idioma parece alentar proyectos hermosos. Eche un vistazo a algunas de las cosas que la gente ha creado , muchas de las cuales involucran sonido.

Caleb
fuente