2009-10-28 08:50:48 +0000 2009-10-28 08:50:48 +0000
80
80

Existe: software para la cancelación del ruido

Soy consciente de que la mejor opción para la cancelación de ruido es comprarme un par de auriculares con cancelación de ruido…

Pero, ¿hay algún software disponible que utilice el micrófono del PC y los auriculares para bloquear el ruido de fondo?

Respuestas (7)

44
44
44
2009-11-19 09:08:17 +0000

Existen básicamente dos métodos para la supresión del ruido

  1. Supresión del ruido mediante filtros de Wiener u otros esquemas de estimación y sustracción. Sin embargo, para que éstos suenen bien, se necesita mucha optimización y capacidad intelectual. Para su aplicación, esta no es probablemente una buena solución, ya que los PC no están construidos para el procesamiento de audio en tiempo real, y los algoritmos involucrados están lejos de ser triviales.
  2. Reproducción de ruido de fondo con corrección de latencia e inversión de fase junto con la señal utilizable. Esto funciona bastante bien para los auriculares, aunque suele introducir algo de ruido en los bajos. Sin embargo, esto tampoco funciona fuera de línea, ya que necesita la señal de ruido de fondo real del entorno. Y no es muy útil para los PC, ya que introducen demasiada latencia de audio. Sin embargo, podrías probarlo con algún núcleo mínimo de tiempo real para Linux.

Basándome en mis experiencias con el procesamiento de audio y varias técnicas de cancelación de ruido, recomendaría unos buenos auriculares con aislamiento acústico. Normalmente, estos resultarán en un mejor sonido sin la necesidad de ningún truco de procesamiento de señales que no funcionará demasiado bien de todos modos.

18
18
18
2009-11-19 22:26:47 +0000

No es posible por razones físicas o de hardware.

Los auriculares con cancelación de ruido funcionan grabando el sonido y reproduciendo un sonido de fase invertida para cancelarlo. Con un portátil el micrófono primero apesta, y muy bien frente a ti, esto significa que el sonido que viene de atrás llegará primero a tus oídos antes de llegar al micrófono. Luego tiene que pasar por el ordenador a la lenta tarjeta de sonido (probablemente un ping de 0,1 segundos o más) hasta los altavoces donde se reproducirá. Este tiempo de retardo será demasiado grande para poderlo manejar.

Así que se reduce principalmente a esto:
Tú y el micro escucháis cosas diferentes (en los auriculares están en tus oídos).
El tiempo de retardo de las tarjetas de sonido estándar de los portátiles es grande, a menudo ni siquiera se puede hacer funcionar bien un amplificador de guitarra por esta razón en el ordenador (cerca de 0 en los auriculares).

Esto, por muy optimizado que esté, resultaría en una experiencia horrible.

9
9
9
2009-10-28 08:57:31 +0000

Ver este artículo : ¿Cancelación de ruido en el software? .

Es interesante, pero no tiene solución.

5
5
5
2009-11-19 09:06:46 +0000

En realidad no es un cancelador de ruido, pero Chatterblocker puede ayudarte a enmascarar/ignorar los sonidos externos.

5
5
5
2012-09-11 13:04:26 +0000

Usando MATLAB y esta guía / código de ejemplo: http://www.mathworks.com/help/dsp/examples/acoustic-noise-cancellation-lms-.html

podrías grabar el ruido que intentas cancelar (en un wav) y construir una salida de audio que lo cancele. También podrías modificar el código para tomar la entrada del micrófono como el ruido y hacer que genere adaptativamente la salida y la reproduzca.

Ten en cuenta que la cancelación de ruido funciona mejor con ruidos “mecánicos” de baja frecuencia. Los ruidos de tono alto (alta frecuencia) son mucho más difíciles de cancelar.

3
3
3
2014-11-18 21:10:38 +0000

Debería ser posible para un sonido constante (p. ej., el zumbido de los rodamientos del ventilador), pero, como han señalado otros, para entornos de sonido de fondo variable regular, seguramente no funcionará bien con el hardware y el software comunes.

También dudo mucho que el software tenga alguna forma fiable de medir el retardo con alta precisión (para la calibración), que es crucial para las ondas de cancelación de sonido. (Edición: excepto quizás para hacer una calibración manual de la fase.)

Los núcleos regulares que no son en tiempo real también significan que el retardo de audio puede variar un poco, lo que también echará por tierra cualquier cancelación de ruido que funcione.

Aunque los ordenadores pueden grabar y reproducir sonido, nunca fueron diseñados para tener la precisión y definición necesarias para cancelar las ondas sonoras.

La implementación de un sistema de este tipo en el software del PC podría dar lugar a algo que aumentara el ruido en lugar de reducirlo, por lo que se evita.

Sigue siendo uno de esos temas que se prestan a la investigación y a la experimentación, aunque sólo sea por el placer de hacerlo :)

Además, los micrófonos de alta gama y el hardware de sonido profesional pueden marcar una gran diferencia.

Fuente: autoproclamado experto en todo.

2
2
2
2013-12-14 05:48:29 +0000

Si el sonido que necesitas cancelar es consistente, por ejemplo en el interior de un avión o el zumbido de una fábrica, parece que el retardo del ordenador no debería importar, porque el sonido es el mismo sin importar lo tarde que llegue. La clave estaría en desfasar con precisión el sonido resultante en los auriculares. Por ejemplo, se podría probar con un software de cambio de fase ajustable como en http://freemusicsoftware.org/category/free-vst-effects-2/phase-shifter

Incluso se podría grabar el ruido de fondo y luego reproducirlo. Tendrías que ajustar la fase hasta que fuera lo contrario de lo que tus oídos escuchan directamente.

Si el pobre micrófono del portátil fuera un problema, podrías llevar un SM58 usado bastante barato.

¿Algún comentario sobre esta idea?