Isso existe: software para cancelamento de ruído [fechado]

72

Estou ciente de que a melhor opção para cancelar o ruído é comprar um par de fones de ouvido com cancelamento de ruído ...

Mas há algum software disponível que usaria o microfone e os fones de ouvido para bloquear o ruído de fundo?

    
por Alterlife 28.10.2009 / 09:50

7 respostas

38

Existem basicamente dois métodos para supressão de ruído

  1. Supressão de ruído usando Filtros de Wiener ou outros esquemas de estimativa e subtração. Para que isso pareça bom, é preciso muita otimização e capacidade mental. Para sua aplicação, esta provavelmente não é uma boa solução, já que os PCs não são construídos para processamento de áudio em tempo real, e os algoritmos envolvidos estão longe de ser triviais.
  2. Reprodução de ruído de fundo com inversão de fase e correção de latência junto com o sinal utilizável. Isso funciona muito bem para fones de ouvido, embora geralmente introduza algum borrão nos baixos. No entanto, isso também não funciona offline, pois precisa do sinal real de ruído de fundo do ambiente. E não é muito útil para PCs, já que eles introduzem muita latência de áudio. Você poderia tentar isso com um mínimo de kernel Linux em tempo real.

Com base em minhas experiências com processamento de áudio e várias técnicas de cancelamento de ruído, eu recomendaria alguns fones de ouvido com bom isolamento de som. Normalmente, isso resulta em um som melhor sem a necessidade de truques de processamento de sinal que não funcionem muito bem de qualquer maneira.

    
por 19.11.2009 / 10:08
16

Não é possível por motivos físicos / de hardware.

Os auscultadores com cancelamento de ruído funcionam gravando som e reproduzindo um som de fase invertida para o cancelar. Com um laptop o microfone primeiro suga, e bem à sua frente, isso significa que o som vindo de trás você alcançará seus ouvidos antes mesmo que ele atinja o microfone. Então ele tem que passar pelo computador na placa de som lenta (provavelmente um ping de 0,1 segundo ou mais) para os alto-falantes onde ele tocará. Este tempo de latência será muito grande para se lidar.

Então tudo se resume principalmente a isso:
Você e o microfone ouvem coisas diferentes (nos fones de ouvido eles estão nos ouvidos).
O tempo de atraso das placas de som padrão dos notebooks é grande, muitas vezes você nem consegue um amplificador de guitarra funcionando bem por esse motivo no computador (perto de 0 nos fones de ouvido).

Isso, não importa o quão otimizado resulte em uma experiência horrível.

    
por 19.11.2009 / 23:26
9

Veja este artigo: Cancelamento de ruído no software? .

É interessante, mas não tem solução.

    
por 28.10.2009 / 09:57
5

Usando o MATLAB e este guia / código de exemplo:

link

você pode gravar o ruído que está tentando cancelar (em wav) e criar uma saída de áudio que o cancele. Você também pode modificar o código para obter a entrada de microfone como o ruído e gerá-la de forma adaptável e reproduzi-la.

Tenha em mente que o cancelamento de ruído funciona melhor com ruídos de tipo "mecânico" de baixa frequência. Ruídos de alta frequência (alta frequência) são muito mais difíceis de cancelar.

    
por 11.09.2012 / 15:04
4

Não é realmente um cancelamento de ruído, mas o Chatterblocker pode ajudá-lo a mascarar / ignorar sons externos.

    
por 19.11.2009 / 10:06
3

Deve ser possível um som constante (por exemplo: gemido do rolamento do ventilador), mas, como outros apontam, para ambientes regulares de som de fundo variável, certamente não funcionará bem com hardware e software comuns.

Também duvido muito que o software tenha qualquer maneira confiável de medir o atraso com alta precisão (para calibração), o que é crucial para as ondas de cancelamento de som. (Edit: exceto talvez para fazer calibração manual de fase.)

Os kernels normais que não são em tempo real também significam que o atraso de áudio pode variar um pouco, o que também elimina qualquer cancelamento de ruído de trabalho.

Embora os computadores possam gravar e reproduzir sons, eles nunca foram projetados para ter precisão e definição necessárias para cancelar as ondas sonoras.

A implementação de um sistema desse tipo no software para PC pode resultar em algo que pode aumentar o ruído em vez de reduzi-lo, por isso é evitado.

Ainda permanece um desses tópicos que se prestam à pesquisa e experimentação, mesmo que seja apenas pelo prazer:)

Além disso, microfones de ponta e hardware de som profissional podem fazer muita diferença.

Fonte: autoproclamado especialista em tudo.

    
por 18.11.2014 / 22:10
2

Se o som que você precisa cancelar é consistente, por exemplo, dentro de um avião ou o zumbido de uma fábrica, parece que o atraso do computador não deveria importar, porque o som é o mesmo, não importa o quão atrasado chegue. A chave seria mudar de fase com precisão o som resultante em seus fones de ouvido. Por exemplo, pode-se tentar um software de mudança de fase ajustável como em link

Você pode até gravar o ruído de fundo e reproduzi-lo. Você teria que ajustar a fase até que fosse o oposto do que seus ouvidos ouvem diretamente.

Se o pobre microfone do laptop fosse um problema, você poderia trazer um SM58 usado com você a um preço baixo o suficiente.

Algum comentário sobre esta ideia?

    
por 14.12.2013 / 06:48