Pregunta

¿Existe alguna biblioteca Java o C # para el análisis de señales utilizando la tarjeta de sonido de una PC? No estoy interesado en la mezcla de música, sino en el análisis de señal de uso general: eche un vistazo a SIGVIEW : estoy interesado en una biblioteca Java o C # que pueda hacer eso. Otro ejemplo es el scEEG , que se esfuerza por construir un electroencefalograma de tarjeta de sonido, analizando señal de ondas cerebrales capturada por la tarjeta de sonido.

¿Fue útil?

Solución

Puede acceder a las entradas de audio en Java utilizando la API JavaSound (clases en javax.sound.sampled). La última vez que usé .NET para esto, tuvo que usar la API DirectX administrada, que no era tan fácil de usar, pero los marcos .NET más nuevos pueden tener una API más fácil para esto.

Cuando se trata del procesamiento de señales, supongo que debes ser un poco más preciso sobre tus requisitos. Es un campo muy amplio y puede o no tener bibliotecas disponibles para realizar el análisis o el procesamiento que necesita, pero nadie puede adivinar lo que está haciendo.

Otros consejos

Depende del tipo de procesamiento de señal que desee, existen bibliotecas de sonido como irrklang ( http://www.ambiera.com/irrklang/features.html ) que hará mucha manipulación, etc., y también hay otros que simplemente cambiarán cosas básicas como tempo / pitch ( http://www.surina.net/soundtouch/ ).

Yo personalmente he usado BASS ( http://www.un4seen.com/ ) antes y es impresionante, sin embargo, tiene una tarifa de licencia para uso no comercial, por lo que es posible que desee mirar un poco más si lo está utilizando para un proyecto comercial. Utiliza la API DirectSound que utiliza el hardware, por lo que es básicamente una API de abstracción.

Dependiendo de lo que está buscando hacer, Exocortex.DSP entró en un intento de Math.NET, etc. Vale la pena investigar si es suficiente o si funciona bien.

Alternativamente, use lo que los profesionales usan e interopere en él, los paquetes del núcleo Intel DSP y Math tienen un trabajo hecho y muchos intentos decentes para interactuar fácilmente con él ... Y para agregar, ni Java ni C # hacen un buen trabajo en matrices primitivas, y su implementación generalmente se supera por un orden de magnitud para cualquier conjunto de datos de tamaño decente.

[pieza del mundo gestionado contra interoperabilidad]

Consulte NAudio . Parece bastante funcional en términos de extracción de datos del audio

Solo estoy familiarizado con las cosas de Java. Lamentablemente, no conozco ninguna biblioteca de procesamiento de señal agradable, gratuita y fácil de usar. Siempre he estado usando un poco de esto y aquello.

Captura:

  • API JavaSound (http: // java.sun.com/docs/books/tutorial/sound/capturing.html) para capturar el sonido de la tarjeta de sonido.

  • Sphinx4 (http: // cmusphinx.sourceforge.net/sphinx4/) implementa la captura y mucho más ... es, sin embargo, un gran proyecto con una estructura compleja

DSP:

  • http: // www.webkitchen.com/brainathlon se utiliza para el análisis EEG y ha implementado algunas rutinas de procesamiento de señales (filtros)

  • http: // www.falstad.com/mathphysics.html tiene muchos ejemplos de applet, a saber, procesamiento de señales. el código no siempre es muy comprensible, pero me ha ayudado en el pasado

Espero que ayude

MATLAB tiene algunas poderosas herramientas de análisis de señal que funcionan bien en audio. No estoy seguro de si puede alimentar las transmisiones en tiempo real fuera de la caja, pero debería ser fácil de hackear. MATLAB es mejor conocido como una aplicación interactiva, pero también hay una versión incrustada .

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