Filtering HD Audio

Is it possible to write a filter driver for the HD Audio bus? I see in the WDK that if you want to add functionality to a bus for which a class driver exists, then a filter is the way to do it. However, I hear that the audio path is extremely constrained. Are there any specific obstacles/limitations that we should keep in mind should we choose to persue this option?

Thanks,

Tony

xxxxx@intel.com wrote:

Is it possible to write a filter driver for the HD Audio bus? I see in the WDK that if you want to add functionality to a bus for which a class driver exists, then a filter is the way to do it. However, I hear that the audio path is extremely constrained. Are there any specific obstacles/limitations that we should keep in mind should we choose to persue this option?

Sure, it’s possible, but what would you hope to have it do? Do you
expect to be an upper filter or a lower filter? HD Audio is a difficult
path to intercept, just because of the hardware design. On the bottom
end, the HD Audio Bus driver talks directly to the hardware. There are
no requests for you to intercept and modify. Further, the HD Audio Bus
driver is not involved in data transfers. That’s all handled by the
user-mode audio engine through the hardware’s circular buffers.

Further, unless you get a specific Microsoft signature, having an
unsigned driver in the HD Audio path disables the playing of protected
audio.


Tim Roberts, xxxxx@probo.com
Providenza & Boekelheide, Inc.