Re: Need help deciding what kind of driver is most appropriate
Re: Need help deciding what kind of driver is most appropriate
- Subject: Re: Need help deciding what kind of driver is most appropriate
- From: Jeff Moore <email@hidden>
- Date: Fri, 18 Aug 2006 12:33:12 -0700
On Aug 18, 2006, at 10:19 AM, Nick Hebner wrote:
I am developing an application which will allow control of audio
streams for each running application that has any from a central
location. For instance, volume could be controlled in iTunes from my
application. To accomplish this, I want to create a driver which
will just pass audio data through it to the real audio drivers, but
will be modified first by my driver in some way. My driver needs to
communicate with my application all audio streams that are open, and
provide mechanisms for controlling them. I have a few questions
about how I should implement this.
1. What type of driver would be most appropriate for this, a regular
IOAudioDevice driver, or a HAL plugin?
It would probably be easiest to do this as a user-land driver that
sends the data to a server for processing.
2. How can I pass data from my driver to the real audio drivers?
If you are in user-space, you can use an instance of AUHAL or directly
use the HAL itself.
3. How does an application communicate with the global instance of a
driver (IOServiceOpen? Custom properties?)?
If you are in user-space and you want to talk to the daemon, you'd use
Mach IPC or some other user-land IPC API.
If you are in the kernel, this done by the user-space entity opening a
connection to the driver object with IOServiceOpen. Inside the kernel,
this turns into the driver allocating an IOUserClient (or purpose
built subclass) object that acts as the conduit between the two worlds.
--
Jeff Moore
Core Audio
Apple
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Coreaudio-api mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden