Duda existencial MIDI

  • 1
elejazz
#1 por elejazz el 28/07/2010
Queridos amigos estos días calurosos estoy harto de buscar sobre la creación del timbre en MIDI, y no encuentro lo que quiero.

Mas concretamente me gustaria encontrar la parte mas "matemática" del timbre de los instrumentos principales, dejando de banda el ataque, efectos vibración, la decaída etc... con las ecuaciones del timbre estándar midi me bastaría.

Lo que tampoco se es si por rangos de notas esas ecuaciones timbricas varían...

Esto esta publicado? es open source? o es una cosa "secreta" y solo se pueden obtener aproximaciones ??


gracias de antemano
Subir
OFERTASVer todas
  • -40%
    ¡Precio mínimo histórico! AKAI MPK 261
    298 €
    Ver oferta
  • -8%
    Behringer X Air XR18
    645 €
    Ver oferta
  • -35%
    Set de grabación completo de Focusrite
    184 €
    Ver oferta
Nox
#2 por Nox el 28/07/2010
El MIDI no "crea" un timbre determinado por sí solo, es un protocolo para controlar instrumentos, el timbre lo crea el instrumento según las ordenes que le des usando MIDI.

A no ser que yo haya entendido mal la pregunta.

Saludos.
Subir
elejazz
#3 por elejazz el 28/07/2010
noxLP escribió:
El MIDI no "crea" un timbre determinado por sí solo, es un protocolo para controlar instrumentos, el timbre lo crea el instrumento según las ordenes que le des usando MIDI.

A no ser que yo haya entendido mal la pregunta.

Saludos.


Ya lo se, el midi es ese protocolo que dices, pero la parte de creacion del sonido tambien tiene que estar relacionada con la palabra MIDI, no?, es decir que deverian existir estandares timbricos.

por ejemplo lo de GENERAL MIDI ...(como un estandar, quiza mas que de timbre es de instrumentos)... pero en cualquier ordenador a partir de una partitura (ponemos al caso que sea para piano y flauta) sonara igual que en cualquier otro pc, el mismo timbre de piano y el mismo timbre de flauta... ya sea por los drivers, o lo que sea...

(quizas cada fabricante tienen diferentes sonidos/timbres ... y quiza cada casa de targetas de sonido tenga un modelo, o sino incorporan de otros de Roland, etc...)


Yo necesito esas equaciones basicas del timbre (ni que sea de una sola casa, de un banco de sonidos midi, yo que se...) y sino alguien que se haya dedicado a imitar (sintetizar) el sonido de los instrumentos y tenga esa aproximación que busco... repito: ecuacion que a partir de una nota midi con su frecuencia, transforma en señal que al salir por los altavozes parezca el instrumento real... (independientemente del ataque, decaida, sustento y cola ...)


ALGUIEN ME ENTIENDE ???
Subir
dario
#4 por dario el 28/07/2010
Como te han dicho, el MIDI es sólo un protocolo de comunicación y un archivo MIDI no tiene porqué sonar igual en dos ordenadores, dependerá del sistema en que reproduzcas el archivo. El General Midi es un estándar creado para que los archivos MIDI puedan compartirse y escucharse de manera parecida en cualquier sistema. Existen otros sets ampliados del General Midi (como el de Roland y el de Yamaha) sin embargo el MIDI no crea timbres. Es una "partitura para máquinas".
Para documentación precisa busca en la página de la MMA (MIDI Manufacturers Association).

Saludos.
Subir
elejazz
#5 por elejazz el 28/07/2010
dariochan escribió:
Como te han dicho, el MIDI es sólo un protocolo de comunicación y un archivo MIDI no tiene porqué sonar igual en dos ordenadores, dependerá del sistema en que reproduzcas el archivo. El General Midi es un estándar creado para que los archivos MIDI puedan compartirse y escucharse de manera parecida en cualquier sistema. Existen otros sets ampliados del General Midi (como el de Roland y el de Yamaha) sin embargo el MIDI no crea timbres. Es una "partitura para máquinas".
Para documentación precisa busca en la página de la MMA (MIDI Manufacturers Association).

Saludos.


Bueno, un archivo midi sonara igual en 2 ordenadores si los 2 tiene el mismo "algo" (no se si drivers o controlador o que) que transforme la información MIDI a sonido.

pues yo es eso lo que quiero, perdón por equivocarme tanto, ... pero si lo sabéis dadme alguna solución


Saludos.
Subir
Real_Kcan
#6 por Real_Kcan el 28/07/2010
realmente, ni idea de lo que dices.

mira por aqui.

http://es.wikipedia.org/wiki/MIDI
https:/www.hispasonic.com/revista/protocolo-midi
https:/www.hispasonic.com/revista/17

los parametros a cambiar de el timbre y las caracteristicas de el sonido varian de el sintetizador que este recibiendo el midi, no hay un estandar en eso si es lo que preguntas :| .

salu2
Subir
elejazz
#7 por elejazz el 29/07/2010
Real_Kcan escribió:
realmente, ni idea de lo que dices.

mira por aqui.

http://es.wikipedia.org/wiki/MIDI
https:/www.hispasonic.com/revista/protocolo-midi
https:/www.hispasonic.com/revista/17

los parametros a cambiar de el timbre y las caracteristicas de el sonido varian de el sintetizador que este recibiendo el midi, no hay un estandar en eso si es lo que preguntas :| .

salu2



gracias por los links con informacion de MIDI, està claro que no es lo que busco... :(

según la wikipedia lo que busco yo es sobre "Controlador y unidad generadora de sonido" !!!!

a ver, si alguien me puede entender: los secuenciadores son herramientas para trabajar con midi por ejemplo, creando composiciones con notas de durada distinta, instrumentos predeterminados, etc...
es decir tu cuando estas al FLS o al cubase o al live, y pones opciones de audio, seguro que al apartado midi puedes seleccionar varios tipos de "generador de sonido midi" (o controlador)... eso supongo que o vienen con la targeta de sonido (ej, Realtek...) o sino hay otros de genericos de marcas como Roland ... yamaha...

lo fuerte es que me acabo de enterar que eso funciona con bancos de sonidos...
pero estoy flipando, entiendo perfectamente que una bateria, o qualquier instrumento percutido sea un sonido sampleado, es decir un toque de caja, o de bombo o de plato, (mas que nada porque des de que empieza el sonido hasta el final, la frecuencia y amplitud solo hace que variar)
PERO una nota de violin midi en el momento de suspension (es decir si la nota dura 40 segundos) es un trozo de sonido de una libreria que lo que hace es un bucle para que suene igual los 40 segundos ???????????????????????????????

no lo entiendo... no seria mas facil crear el sonido al instante a traves de ecuaciones (sumas de ondas senoidales) en vez de reproducir un bucle de tal sonido??

y si no es asi, no existe algun sitio donde buena gente se dedique a sintetizar timbres y obtenga dixas funciones que lleguen a simular los instrumentos (como lo hacen Roland, Yamaha... etc mediante sus bancos de sonido para midi)



saludos
Subir
Nox
#8 por Nox el 29/07/2010
A ver, deduzco que eres nuevo en el tema, así que antes de nada unos conceptos.

El midi sólo envía órdenes al aparato donde esté enchufado el cable, ya sea ordenador/sintetizador/LoQueSea. Ese aparato interpreta esas órdenes según se haya construido, si es un ordenador pues depende de la tarjeta de sonido y del software que recoja la señal midi, si es un sinte de la circuitería del sinte, etc.

El General Midi es un estandar en cuanto que el aparato interpreta cada señal(cada numerito distinto que envíes, vaya) como un instrumento preestablecido en dicho estandar, pero cómo suene ese instrumento depende del aparato en cuestión. No me se la correspondencia real, pero si el 1 son los violines, todos los aparatos elegirán como instrumento "violín", pero cómo suene ese violín dependerá del aparato, no de la señal midi. La señal midi no crea el sonido, ni con una ecuación ni de otra manera, si aprietas una tecla/mueves un fader/mueves un knob, simplemente estás mandando un número, del 0 al 127 en el caso de las teclas.
En un ordenador depende de la tarjeta y del software que utilizes: el software "recoje" esa señal que mandas, pero es que cada software puede hacer cosas distintas con la misma señal, no hay una ecuación o una norma que se cumpla en el 100% de los casos.

Ahora, lo de la emulación de instrumentos reales... es muchísimo más dificil emular un instrumento físico que usar una librería de samples. Cada instrumento físico tiene mil y una peculiaridades que hacen que cada uno suene distinto, y aunque obviaras estos detalles, tienes que emular otros tantos como armónicos, evolución de la envolvente de amplitud y tono según la técnica que use el intérprete, reverberaciones de la caja y una larga lista de cosas que son fundamentales. No es una cuestión de resolver un simple sistema de 3 o 4 ecuaciones por lagrange y a correr, es muy complejo.
Emulaciones, haberlas haylas, unas se parecen más al original y otras menos, y unas suenan mejor y otras peor, pero ¿Porqué vas a emular algo super complejo, y caro, por cierto, cuando puedes grabar y reproducir cada una de esas complejidades que lo conforman :wink: ?
Simplemente es otra solución al mismo problema.

Saludos.
Subir
D4v & DeKa3r Records ©
#9 por D4v & DeKa3r Records © el 29/07/2010
Yo he comprendido así las cosas:

El timbre es solo y controlado por el sistema hardware o software que desarrolla el sistema sonoro. El midi lo que hace es recibir y enviar información de como debe comportarse tal timbre. Matemáticamente, tiene ecuaciones dependiendo de los ciclos que circula la onda a lo largo de un tiempo, transmitido en un espacio X. Arreglo que las ondas son más graves, su tiempo (u oscilación) va más lenta, que va desde hz hasta los khz. Si por ejemplo un bass va a 80 hz, significa que cada ciclo gira entorno a 80 hz, en tu tiempo determinado (que si lo cambias de velocidad no serian 80, ya que cambiaria el timbre a más o menos, según lo ordenes por medio de octavas o pitch, que esta ultima sería tonalidad) en el espacio X transmitido. Un saludo
Subir
elejazz
#10 por elejazz el 30/07/2010
noxLP escribió:
A ver, deduzco que eres nuevo en el tema, así que antes de nada unos conceptos.

[...bla bla bla...]

Ahora, lo de la emulación de instrumentos reales... es muchísimo más dificil emular un instrumento físico que usar una librería de samples. Cada instrumento físico tiene mil y una peculiaridades que hacen que cada uno suene distinto, y aunque obviaras estos detalles, tienes que emular otros tantos como armónicos, evolución de la envolvente de amplitud y tono según la técnica que use el intérprete, reverberaciones de la caja y una larga lista de cosas que son fundamentales. No es una cuestión de resolver un simple sistema de 3 o 4 ecuaciones por lagrange y a correr, es muy complejo.
Emulaciones, haberlas haylas, unas se parecen más al original y otras menos, y unas suenan mejor y otras peor, pero ¿Porqué vas a emular algo super complejo, y caro, por cierto, cuando puedes grabar y reproducir cada una de esas complejidades que lo conforman :wink: ?
Simplemente es otra solución al mismo problema.

Saludos.


pues te equivocas, xd, generar un sonido parecido al de violin (si te fijas yo ya he excluido las complegidades del envolvente, como ataque, etc...) pues generar ese sonido es una simple ecuacion en funcion del tiempo, con su frec. fundamental que determina la nota....
realmente por entrar en ese tema se tiene que tener claros muchos conceptos de procesado de señales... es=

yo llegado a ese punto solo pido si alguien me puede ayudar a buscar algun website o documentacion sobre las "formulas finales" de esas grandes compañias que ya tienen sus bancos de sonido sintetico tan bien logrados.


saludos y gracias de todos modos
Subir
computerneix
#11 por computerneix el 30/07/2010
Buenas.

Creo que ya he entendido lo que buscas:

Emulación de instrumentos con síntesis substractiva: http://www.planetoftunes.com/synth/emulate_real_instruments.html

El algorithmo karplus-strong es muy eficaz en las cuerdas:
http://en.wikipedia.org/wiki/Karplus-Strong_string_synthesis

una prueba rápida de buenas emulaciones las puedes obtener en esta librería (si sabes c++):

https://ccrma.stanford.edu/software/stk/ mira en stk instruments, si entiendes el código tendrás una muy buena aproximación al tema.

también puedes usarla con chuck:

http://chuck.cs.princeton.edu/

Cualquier lenguaje de programación orientado a audio hace las funciones:

http://en.wikipedia.org/wiki/Audio_programming_language

Durante años el caballo de batalla de la síntesis ha sido ''emular'' el mundo real (instrumentos y otras cosas), así que una búsqueda en internet (synthesis emulate piano, por ejemplo) será bastante gratificante.

Como anécdota, recuerdo los manuales de ms-20 incluyendo patches de violín, pájaro, helicóptero, cello,etc...

De todas formas, aunque teóricamente sea plausible sintetizar cualquier instrumento, estoy de acuerdo con los compañeros que, hoy pot hoy, las grandes librerías de samples son la mejor solución.

Espero haber servido de ayuda, un saludo.
Subir
Nox
#12 por Nox el 30/07/2010
elejazz escribió:

pues te equivocas, xd, generar un sonido parecido al de violin (si te fijas yo ya he excluido las complegidades del envolvente, como ataque, etc...) pues generar ese sonido es una simple ecuacion en funcion del tiempo, con su frec. fundamental que determina la nota....
realmente por entrar en ese tema se tiene que tener claros muchos conceptos de procesado de señales... es=

yo llegado a ese punto solo pido si alguien me puede ayudar a buscar algun website o documentacion sobre las "formulas finales" de esas grandes compañias que ya tienen sus bancos de sonido sintetico tan bien logrados.


saludos y gracias de todos modos


No, si el hecho de que debe existir alguna formula que describa la onda de un violín yo no lo he negado nunca :lol: , pero llamar a esa formula "simple" como has hecho, pues me parece simplificar demasiado(demasiadisimo) las cosas, valga la redundancia. Además, si ya de entrada excluyes las complejidades... pos como que no interesa :lol: . Precisamente lo interesante es emularlo en su totalidad, con las diferentes técnicas de ataque, de portamento y etc. Una emulación de una sección de violines que suena igual forte que piano, que no hace nada cuando cambias la indicación del arco y que no tiene glissando... pos eso, no sirve como emulación. Si sólo para eso tienes que meterte un tocho de matemáticas incluyendo transformada de Fourier, a no ser que sea por pura afición o investigación, vale más la pena samplear por capas de velocidad y técnica: es más rápido, más fácil y hoy en día da mejores resultados.

Saludos.
Subir
mMoya
#13 por mMoya el 30/07/2010
Lo que tu buscas son las ecuaciones del modelado físico de cada instrumento.

Esto no es un estándar, sino que existen diversos modelos (antes te han puesto uno).

Básicamente lo que se hace es crear un modelo de la respuesta física de las cuerdas al ser tocadas con el arco (para este caso particular).

La solución puedes considerarla más o menos sencilla, dependiendo de tu nivel, pero en ningún caso se limita a una simple serie de Fourier, principalmente porque como te han comentado antes, el timbre cambia con la dinámica.

A nivel de estudio, que parece ser lo que estás haciendo, en Reaktor hay algunos ensembles que hacen este tipo de modelado y herramientas para programarlo.

El más famoso es Steampipe, que es un sinte que simula el aire pasando por un tubo con orificios (para flautas, etc...).

La única forma que tienes de encontrar la "fórmula" es buscar papers de gente que lo haya estudiado y esté disponible online, obviamente las compañías no te van a dar su "receta" para que les copies el producto.

De todos modos, la "fórmula" no suele servir de mucho, y se necesitan muchos detalles para que suene aceptablemente. Por ejemplo, en el violín puedes modelar perfectamente la vibración de las cuerdas y sonará muerto, porque le tienes que añadir la reverberación del cuerpo convolucionando con la respuesta impulsional de uno de verdad (a no ser que también la quieras modelar a partir de la geometría y los materiales del cuerpo, claro... :D)
Subir
elejazz
#14 por elejazz el 01/08/2010
Gracias por las aportaciones, solo quería comentar que mi finalidad no es emular el sonido de algun instrumento de la forma mas real.
Yo estoy utilizando Matlab, y me encuentro en un punto donde necesito tener una funcion(suma de senos, con harmonicos etc...) que sea un timbre de cualquier instrumento... asi que la "formula" simplificada, sin sus "complejidades" si que me serviria, de mucho!!

(tema midi, estandares, envolvente de una nota, complejidad... todo eso me ha quedado bastante claro)

Saludos

(pd. por cierto mMoya con eso de que "la reverberación del cuerpo convolucionando con la respuesta impulsional de uno de verdad (a no ser que también la quieras modelar a partir de la geometría y los materiales del cuerpo... )" me as dejado con la duda, no lo he entendido bien
Subir
3ɅƦ WøøD
#15 por 3ɅƦ WøøD el 03/08/2010
usas matlab?... quizás podrías conseguirte una muestra de esas que dices e interpolarla. Me suena que hay librerías de muestras de audio de modulos viejos, rollo roland canvas y eso...

Más o menos creo haber entendido que quieres el timbre "puro" de un instrumento, "concepto" que me acabo de inventar porque no tiene ningún sentido. El timbre es algo así como las envolventes (evoluciones temporales de las intensidades) de todos los armónicos y de todos los parciales que componen su espectro de frecuencias, y en algunos instrumentos estas envolventes, e incluso el propio espectro, varían totalmente en función de las articulaciones, del tono que se toque, de la dinámica... e incluso de la temperatura, si nos ponemos kiskis

Por supuesto todo se puede simplificar, idealizar. Y quizás en este PDF encuentres lo que buscas (apartado 3.2).

http://www.maths.abdn.ac.uk/~bensondj/h ... music.html

Saludos
Subir
Hilos similares
Nuevo post

Regístrate o para poder postear en este hilo