Soy un ingeniero de software desde hace mucho tiempo pero tengo prácticamente cero experiencia con el procesamiento de señal / audio. Estoy interesado en aprender sobre el procesamiento de señales a través de un caso de uso que tenemos para uno de nuestros componentes de audio. NOTA: este es solo un ejercicio de aprendizaje para mí ... no es una prioridad que el resultado final sea útil.
Tenemos un componente (A) que produce audio (a través de un altavoz). Tenemos otro componente (B) que graba ese audio (a través de un micrófono simple).
Lo que me gustaría hacer es usar A para grabar el audio de B. Entonces me gustaría, si es posible, comparar las dos corrientes. El objetivo sería eliminar el audio que estaba presente en la transmisión A, dejando las condiciones ambientales que existieron durante la grabación, entiendo que no es posible eliminarlo por completo.
Me doy cuenta de que hay problemas de fase y magnitud. También me doy cuenta de que no se trata simplemente de "restar" B de A. Dicho esto, supongo que puedes restar A de A.
Me gustaría entender cómo abordar el problema. Nuevamente, esta es una experiencia de aprendizaje para mí (no hay plazos); Estoy más que dispuesto a comenzar desde el principio.
Cualquier consejo / sugerencia sería muy apreciada.
fuente
El problema que no permitirá que el sonido ambiental exacto sea la salida es:
(a) la diferencia de sonoridad (b) la diferencia de fase debido al retraso de tiempo.
Así, en general, la señal grabada por B será (suponiendo que la sala se comporte como un sistema LTI)ysi[ n ] =∑pagsk = 0αkXUNA[ n - k ] +Xa m b[ n ] ) = ( x ∗ h ) [ n ] +Xa m b[ n ] , dónde h [ n ] =αnorte o así la respuesta al impulso de la sala. aquíXa m b[ n ] es la señal ambiental en la ubicación de B. Ahora,z[ n ] =XUNA[ n ] -ysi[ n ] puedes ver que tendrás z[ n ] ≠Xa m b[ n ] , a menos que conozca la respuesta al impulso de la sala o su estimación. Para obtener una idea, puede avanzar haciendo la resta y viendo el espectrograma de la señal resultante y comparándolo con el espectrograma de la señal ambiental y solo de la señal de A.
La otra forma es colocar el micrófono cerca de A para minimizar el efecto de la respuesta al impulso de la sala, tal técnica se usa en los auriculares con cancelación de ruido donde se eliminará el ruido ambiental. http://en.wikipedia.org/wiki/Noise-cancelling_headphonese .
fuente
Eso suena como un caso estándar para la "cancelación de eco acústico". Existen MUCHAS patentes, trabajos de investigación y tesis académicas sobre el tema (a partir de 1967, creo que con el trabajo de MM Sondhi "Un cancelador de eco acústico adaptativo").
Una descripción general simple está aquí http://supportdocs.polycom.com/PolycomService/support/global/documents/support/technical/products/voice/vortex_choose_acoustic_echo_canceller.pdf .
Este es un libro decente sobre el tema http://www.amazon.com/Advances-Network-Acoustic-Cancellation-Processing/dp/3540417214
fuente