Two other things I recalled after I posted (never post
after tea-time):
1. As you probably noticed, the SoundFlower kernel
extension actually implements two CoreAudio devices (one 2 channel and one 16
channel) so you're actually pretty much there already.
2. There is a promising-looking sample driver in the
CoreAudio SDK, downloadable from:
and then, after installing the SDK, look in:
/Developer/Examples/CoreAudio/HAL/AudioReflectorDriver
HTH, although kernel-mode development is never
simple.
Paul Sanders.
----- Original Message -----
Sent: Monday, April 19, 2010 11:57 PM
Subject: Re: Audio Device Driver
> What I need is this:
>
> Input Device --------> [in]MyDevice ---------> [in]
\
>
<> <>
Application
> Output Device <----- MyDevice[out] <--------[out] /
>
> where the application only speaks to my device driver.
What would achieve that, in principle, is two instances of
the SoundFlower driver loaded, one for each direction. I imagine this
could be achieved by building a second copy which registers itself under a
different name. But you are now beyond the limit of my competence
and maybe there is a more elegant way.
Anyway, the obvious thing to do is to study the
SoundFlower sources. I imagine that will answer your other questions and
generally get you moving in the right direction. Then erect a 'Chinese
wall' and write your own driver :)
Paul Sanders.
|