2010-11-21 9 views
10

Tengo una aplicación de diagrama de guitarra para Android que estoy migrando a iOS. Android tiene un sintetizador MIDI integrado (sonivox), por lo que puedo generar archivos MIDI y permitir que Android maneje la reproducción.MidiSynth simple incrustable para iOS?

¿Hay alguna manera de hacer esto en iOS? ¿O hay sintetizadores incrustables muy ligeros para iOS?

Respuesta

4

Actualización: Mi respuesta está desactualizada. @ la respuesta de lukebuehler es muy apropiada.

Si no le molesta una solución que no sea de código abierto, intente FMOD. Al ser un motor de audio comercial para juegos, fmod equipa un simple sintetizador MIDI. Probé la versión de evaluación gratuita. Reproduce archivos MIDI de GM correctamente en mi iPhone 3G.

Si lo que quieres no es solo un reproductor de archivos SMF, quieres una función completa de softsynth GS/GM, que pueda responder a eventos midi individuales en tiempo real. Puedes probar el midisynth from CrimsonTech. Su tarifa de licencia es justa. Crimsontech ofrece varias aplicaciones de demostración en la tienda de aplicaciones. Además, también proporciona un SDK de evaluación de forma gratuita. No es necesario pagar un centavo por la licencia hasta que realmente vaya a publicar su aplicación.

+0

Eso es bueno. No me importa el software comercial, solo los estándares abiertos son lo que creo que es realmente importante. Gracias por el encabezado, si necesitas algo, házmelo saber, tal vez pueda ayudarlo. – Peterdk

+0

Parece que no es capaz de transmitir eventos midi, eso es bastante fastidioso. Al revés es que es compatible con Android y wp7. Con suerte para una sola licencia. – Peterdk

+0

¡Guau, sabes muchas cosas! Gracias por el puntero. Me he puesto en contacto con ellos. – Peterdk

-3

Hay soporte MIDI en iOS 4.2. Si es lo mismo que proporciona OS X, entonces trhere también incluirá un sintetizador básico. Echale un vistazo.

+0

El soporte MIDI en 4.2 no incluye un motor de sintetizador. – hotpaw2

+4

Quizás consideres eliminar esta respuesta? –

1

No creo que el soporte MIDI en iOS 4.2 permita la reproducción de datos MIDI desde el teléfono. Es simplemente para enviar y recibir comandos MIDI a otros dispositivos MIDI.

A partir de los últimos documentos iOS 4.2, parece que puede usar el soporte MIDI para enviar comandos MIDI a otros dispositivos para la reproducción. También puede recibir comandos de otros dispositivos y realizar cambios en estos comandos, o guardarlos en un archivo. Sin embargo, no encuentro ningún soporte para reproducir archivos MIDI desde el teléfono directamente. Alguien por favor corrígeme si estoy equivocado (¡ojalá me equivoque!).

21

Desde iOS 5 ahora existe la unidad de audio AUSampler para la que puede cargar un banco de sonido (preajuste de manzana y sonido) y luego controlar la muestra/sintetizador a través de mensajes MIDI.

Seee este ejemplo aplicación: https://developer.apple.com/library/ios/#samplecode/LoadPresetDemo/Listings/ReadMe_txt.html

Funciona muy bien!

+0

¡Increíble hallazgo, gracias! –

+2

Gracias. Su respuesta es más actualizada que la mía. iOS 5.0 equipa con un poderoso motor de muestra. Para reproducir un midifile GM/GS, acabamos de alimentarlo con un soundfont que contiene un rico conjunto de instrumentos. Encontré una [nota técnica oficial] [1] sobre cómo cargar el archivo de sonido DLS2. ¿Alguien intentó esto? [1]: https://developer.apple.com/library/mac/#technotes/tn2283/_index.htmladd complete –

+0

Sí, estoy usando fuentes de sonido para mi aplicación (WorldScales) Estoy cargando un archivo sf2 de 100MB , que contiene múltiples bancos de sonido, capas de velocidad y muestras por parche. Sin embargo, ten en cuenta que hay algunos problemas de memoria si sigues cambiando el banco de sonidos en la misma fuente de sonido, es decir, la memoria solo se borra rápidamente si cargas un archivo de fuente de sonido diferente. – lukebuehler

Cuestiones relacionadas