2009-12-09 4 views
5

¿Es posible escribir un programa que puede extraer una melodía/ritmo/ritmo proporcionado por un instumento específico en una onda (u otro formato de música) archivo compuesto por múltiples instrumentos?extraer una melodía específica/ritmo/ritmo de un instumento específico de un archivo de onda mixta (u otro formato de música)

¿Qué algoritmos podrían usarse para esto y qué lenguaje de programación sería el más adecuado para él?

+0

Sí, es posible. – Nifle

+0

Tienes que ser más específico. – Nifle

+0

Shane: Espero que no te importe, agregué un poco más de claridad en función de nuestra conversación y agregué una etiqueta adicional que podría interesarte más y, por lo tanto, una respuesta más útil – BenAlabaster

Respuesta

1

Un instrumento produce un sonido, de la misma manera que nuestras voces. Existen algoritmos que pueden elegir una sola voz de una multitud e identificar esa voz desde su firma en una base de datos que se usa en medicina forense. De la misma manera, la firma de sonido de un solo instrumento se puede seleccionar de un paisaje sonoro (como la onda mixta) y se puede usar para seleccionar un compás, o hacer una copia de ese instrumento en su propia pista.

Obviamente, si está pensando en hacer copias de pistas, es decir, dividir la onda mixta en una única pista por instrumento, va a estar buscando mucho trabajo. Según tengo entendido, debido a las superposiciones de frecuencia de los instrumentos, esto no va a ser fácil de ninguna manera ... aunque tampoco imposible, como ya le han dicho.

Hay toda una entrada en el blog interesante Comparisonics acerca de las tecnologías de sonido a juego que pueden ser útiles como punto de partida para su búsqueda de la información: http://www.comparisonics.com/SearchingForSounds.html

+0

Gracias por el estímulo, Ben! "la respuesta, sin embargo, es asumir que sabes qué tipo de instrumentos hay en la pista que no hacemos instrumentos, efectos, todos se mezclan juntos TEÓRICAMENTE, si eres un humano trabajando en UNA PISTA y sabes qué tipo de todos los instrumentos que están y su "firma de sonido" podría hacerse pero un proceso automatizado, imposible IMPOSIBLE "- un enemigo – Shane

+0

Solo necesita un área de la pista donde los instrumentos se distingan claramente entre sí, usted no Necesito saber lo que son. Algo parecido a las comparaciones te dirá por su sonido lo que son. Incluso sin conocer el instrumento, puede usar la firma de sonido identificada para extraer el resto. – BenAlabaster

+0

Para aclarar por "extraer" no me refiero a eliminarlo de la pista original, es decir, hacer una copia que contenga solo esa "voz", excepto cuando las firmas se superpongan al punto en que no puedan identificarse electrónicamente entre sí. . Aunque, me imagino que al igual que el color, una máquina podría identificar sonidos que absolutamente no podemos distinguir la diferencia entre nuestros oídos humanos. – BenAlabaster

0

Mire en el interior de karaoke algoritmos de la máquina. Si pueden eliminar la voz de una canción, estoy seguro de que se pueden aplicar los mismos principios para extraer un solo instrumento.

0

La mayoría de los instrumentos producen sonidos dentro de ciertos rangos de frecuencia.

Si escribe un filtro de paso de banda sintonizable - un filtro que solo deja pasar cierto rango de frecuencia - será lo más parecido posible. No será en absoluto perfecto; estás pidiendo magia negra La única forma de extraer perfectamente un solo instrumento de una pista es tener una muestra de audio de la pista sin ese instrumento, y hacer una diferencia de las dos formas de onda.

C, C++, Java, C#, Python, Perl deberían ser capaces de hacer todo esto con las bibliotecas correctas. Cuál es "mejor" depende de lo que ya sabe.

1

Para extraer el ritmo o ritmo, es posible que no necesite un aislamiento perfecto del instrumento al que se dirige. Una solución general puede ser difícil, pero si intentas resolverla para una pieza en particular, puede ser posible. Intente implementar un filtro de paso de banda y vea si puede sintonizarlo para seleccionar el instrumento que busca.

Además, acabo de encontrar este producto de Mac llamado PhotoSounder. Tienen un blog que muestra diferentes formas en que se puede utilizar, incluido isolating an individual instrument (con intervención manual).

0

Es posible en principio, pero muy difícil, un área abierta de investigación, incluso. Puede estar interesado en el documento de proyecto para Dancing Monkeys, un programa de generación de pasos para StepMania. Hace algunos análisis de música y detección de ritmo bastante sofisticados, que se detallan en el documento (vinculado cerca de la parte inferior de esa página).

Cuestiones relacionadas