IOAudio kext - separate user clients?
IOAudio kext - separate user clients?
- Subject: IOAudio kext - separate user clients?
- From: Tim Hewett <email@hidden>
- Date: Tue, 01 Sep 2015 15:39:38 +0100
I have a kext deriving from IOAudio classes for implementing an audio device driver. It needs to support devices with both input and output streams and needs to be able to be notified separately when either of the input and output streams become active or goes inactive.
At present I find that if (e.g.) the device goes active for output then clipOutputSamples() is called but convertInputSamples() is not. If it subsequently goes active for input then convertInputSamples() is called for the input audio to be produced.
The IOAudioEngine is only notified when either stream becomes active/inactive, i.e. performAudioEngineStart() and performAudioEngineStop(). This means that if the output stream is active already and then the input stream goes active, there is no new notification.
Having looked through the IOAudio sources there doesn’t appear to be any way to tell when a stream goes active, only when a user client goes active.
I’m wondering if there is some other way to find out when a stream goes active/inactive, rather than just the whole device…?
_______________________________________________
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