Recentemente encontrei esse software:
O que el faz é simular um microfone, e um alto-falante no Windows, o que el faz alem disso é permitir que vc 'conecte' um cabo virtual entra o alto-falante e o microfone.
Tudo o que é tocado nesse auto-alante vai diretamente para o microfone, via C# podemos facilmente tocar um arquivo WAV nesse autofalante.
Sei que o Julius possui um modo de leitura de arquivo WAV porém necessitaria de uma modificação maior na API.
Ainda estou em testes para conseguir iniciar o Julius em um microfone especifico, porém em uma deles, coloquei o microfone do VB-audio como padrão, assim o julius ficou reconhecendo ele.
Utilizando a API do navegador Chrome HTML5 para captura de áudio (celular ou desktop), alguns códigos de Javascript que consegui na web e um simples webservice C# consegui:
1) Capturar o áudio via navegador
2) Converter o áudio em formato wave via javascript
3) Enviar o arquivo via webservice para um serviço C#
4) Tocar o audio recebido no C# para o auto-falante virtual do VB audio
5) O Julius reconhece o som no microfone virtual e realiza seu trabalho
O código precisa de muita coisa para ficar funcional, porém como falei estou evoluindo em passos mínimos pois estou sem tempo
Sobre o problema do ruido, infelizmente o Julius não é preparado para isso, porém se utilizar o mecanismo acima (que um programa intermediário captura o áudio e passa para o Julius) talvez encontre algum código que possa lendo um arquivo de áudio diferencias barulho de fala ou passar algum filtro que remova ruido ou algo do tipo.
Outro problema que eu tive foi quando 2 microfones estão próximos e as duas instancias do Julius fazem o reconhecimento, acabo recebendo 2 comandos, porém isso é facilmente contornado criando um pool de reconhecimento e impedindo duplicidade em um período de tempo curto.