Si esto es posible o no depende de sus requisitos de latencia, es decir, el retraso total entre la entrada y la salida. Un buen punto de partida podría ser configurar una estación de trabajo de audio digital utilizando software de grabación como ProTools, Sonar, Ableton, Cubase, etc. Estos funcionan con hardware de E / S económico (más o menos) y vienen con controladores optimizados de baja latencia. Algunos de estos tienen interfaces "enchufables" que le permiten realizar su propio procesamiento de señal. Un formato popular es VST de Steinberg, que es compatible con muchos hosts. Solía ser abierto y gratuito, pero ahora puede requerir una licencia.
Este http://www.kvraudio.com/wiki/ es un buen recurso para ese tipo de cosas.
Si desea procesar en Matlab puede que tenga que escribir sus propios controladores. Lo he visto hecho con DLL y también con interfaces JAVA nativas. También puede hackear algo junto con audioplayer () y audiorecorder () pero esto puede requerir una latencia bastante alta para lidiar con las interrupciones de Windows y hacer otras cosas. En esencia, configura un control GUI con una devolución de llamada que se activa a la vez. En la devolución de llamada, lee todas las entradas disponibles, las procesa, las introduce en la salida y espera lo mejor.
En general, ayuda a mantener el cuadro de Windows lo más "limpio" posible, es decir, sin conexión de red (mientras procesa audio), sin software antivirus y ejecutando solo el mínimo absoluto de elementos de inicio, software y servicios.