Pergunta

Eu tenho um aplicativo que registra áudio de um microfone e processa.Eu gostaria de poder realizar essa tarefa enquanto eu tenho música jogando, ou som de um filme, sem pegar a música ou o som do filme.Como a música ou filme estaria jogando do mesmo computador que o microfone está gravando, eu deveria - na teoria - ter acesso a cada bit de dados de áudio, pois ele sai do computador.Eu acho que isso deve me permitir cancelar automaticamente o ruído de saída do computador do sinal de entrada do microfone, mas eu não tenho certeza de como fazer isso!Eu sou principalmente idioma agnóstico aqui, desde que eu possa invocar esse comportamento de um executável .NET via interop ou IPC ou o que você tem.Quaisquer sugestões sobre como conseguir isso - especialmente as primeiras partes, como obter uma representação do sinal de áudio de saída da placa de som, e obter uma representação do sinal de entrada do microfone - seria muito apreciado.

Foi útil?

Solução

You could look into the literature on echo cancellation. There seem to be several books on the subject. It's a non-trivial level of DSP coding.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top