¿Alguien sabe de alguna de las bibliotecas de código C / C ++ / C # que emulan el sintetizador de audio? [cerrado]

StackOverflow https://stackoverflow.com/questions/250394

Pregunta

Estoy tratando de escribir un sintetizador de software que recrea los sonidos hechos por sintetizadores clásicos como el Moog y el DX7. ¿Alguien sabe de algún recurso de código para algo como esto? Gracias.

¿Fue útil?

Solución

Hay una gran cantidad de bibliotecas de C / C ++ por ahí, la mayoría ya no están actualizadas. No hay mucho para C #, pero he visto un par. Realmente no he usado ninguno de ellos enojados, así que no puedo dar recomendaciones.

Comenzaría con Harmony Central y veré si encuentra algo de uso allí. .

Alternativamente, una búsqueda de síntesis analógica en sourceforge.net tiene muchos resultados.

Otros consejos

CCRMA en Stanford puede ser un buen recurso para el software de audio. El kit de herramientas de síntesis en C ++ (STK) parece que podría ayudarte.

El Moog y el Yamaha DX7 son drásticamente diferentes. El DX7 usa síntesis FM, lo cual es muy extraño. Muy diferente de los análogos de VCO / VCA / VCF como el Moog.

Durante mucho tiempo, Yamaha litigó para defender sus patentes de FM, pero creo que todas ya han expirado. La distorsión de fase de Casio fue similar a la FM de Yamaha, y logró evitar la ira de Yamaha (que yo sepa).

Empezaría eligiendo uno u otro. Virtual Analog (emulando sintetizadores analógicos) está de moda desde la aparición de Nord Lead y Access Virus. Y mucho más fácil de contemplar. Así que me gustaría ir por ahí si quieres caminar con la multitud de moda.

Comience con buenos osciladores de banda limitada, haga un generador de envolventes, haga un filtro. Para inspirarse, eche un vistazo al libro de cocina de sintetizador de Welsh para ver cómo se pueden hacer todo tipo de sonidos con dos sintetizador oscilador. Comenzaría por implementar las funciones mínimas necesarias para esos parches.

FM y PD son salvajes. Si recorres esa ruta, se trata de encadenar suficientes operadores de FM en configuraciones interesantes para obtener un espectro de sonidos interesantes. Advertencia: es mucho trabajo evitar el alias en FM.

Synthmaker y SynthEdit generarán el código VST por ti. SynthEdit definitivamente genera los archivos fuente de C ++ sin compilar, y es gratis.

http://www.synthedit.com/

http://synthmaker.co.uk/

su mejor apuesta es revisar los foros de desarrolladores en KvR . Podrán dirigirte hacia los mejores motores de síntesis / DSP de código abierto, así como algunos complementos VSTi de código abierto de los que puedes inspirarte. Aunque todo estará en C / C ++. En este momento, solo existe la síntesis de audio más básica disponible en código administrado.

El musicdsp también tiene un excelente sitio web biblioteca de síntesis . Mucho código de muestra en C / C ++ sobre cómo hacer las cosas.

Mira las respuestas a la Python Music Library . Mientras que la pregunta dice "Python", Python se basa en C. Por lo tanto, cualquier cosa que se pueda usar desde Python tendrá una biblioteca de C, también.

Escribí una biblioteca de sintetizadores simple como parte de una aplicación para iPhone. Quizás también funcione para tus necesidades de sintetizador. Talvez no. http://mobilesynth.googlecode.com/svn/trunk/mobilesynth/Classes / synth /

Estos tutoriales (especialmente desde la parte 8 en adelante) cubren la programación de todas las partes de un sintetizador sustractivo clásico en C ++: Osciladores, envolventes, filtro y LFO.

Chuck es lo mejor que conozco, pero es C ++, no C ++.

He tenido cierto éxito con la biblioteca BASS , pero el soporte de .Net fue un poco burdo La última vez que jugué con él. En su mayoría es de bajo flujo de codificación y eso, pero tiene soporte para algunos efectos DX8.

Hay dos artículos sobre CodeProject que quizás quieras revisar. Leslie Stanford creó un kit de herramientas Synth en C # (por lo que sé que está completamente administrado).

C # Synth Toolkit - Part I C # Synth Toolkit - Part II

Además, acabo de encontrar esta pregunta de StackOverflow que tiene algunos enlaces buenos, aunque está relacionado con Java

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top