RE: audio stream and active channels within said stream
RE: audio stream and active channels within said stream
- Subject: RE: audio stream and active channels within said stream
- From: Philip Lukidis <email@hidden>
- Date: Mon, 12 Sep 2005 17:28:22 -0400
Thanks Jeff for taking the time to answer my question. This and
other Apple mailing lists have made my life a lot easier and
less stressful!
Philip Lukidis
-----Original Message-----
From: Jeff Moore [mailto:email@hidden]
Sent: Monday, September 12, 2005 2:41 PM
To: CoreAudio API
Subject: Re: audio stream and active channels within said stream
Sounds good to me. My answers were based on inspecting the IOAudio
family's code rather than any experience in doing what you were
trying to do. If I had looked a bit closer I would have seen the same
thing.
I stand corrected. Good luck!
On Sep 12, 2005, at 7:27 AM, Philip Lukidis wrote:
> Hi Jeff, I did some experiments, and so far it seems that overriding
> addClient() and removeClient() in my IOAudioStream subclass seems
> to do
> the trick, unless I am missing something. I tried to add multiple
> clients for several streams, and I get called as expected in
> my removeClient() and addClient() members. The tests were done
> under Tiger (10.4.2).
>
> Is this not enough? Or am I missing something?
>
> thanks,
>
> Philip Lukidis
>
> -----Original Message-----
> From: Jeff Moore [mailto:email@hidden]
> Sent: Friday, September 09, 2005 8:40 PM
> To: CoreAudio API
> Subject: Re: audio stream and active channels within said stream
>
>
> You can't know which individual channels are in use on a given multi-
> channel stream. You can only know which streams are in use.
>
> BTW, finding out which streams are in use should be a matter of just
> looking at the buffer sets in the user client object for the engine.
> The HAL won't register buffers for streams the process has disabled.
> Note that to get access to the buffer set objects in the user-client
> object, you have to sub-class the user-client object. I don't think
> you have to actually override any methods in the user-client class,
> just add a method or two that provides access to the buffer set list.
>
> You also have to over-ride the user-client factory methods in
> IOAudioEngine to be sure your user-client object gets used.
>
> Finally, don't forget that there is a user-client object for each
> process and you have to examine the buffer sets in all of them to be
> sure that a given stream is not currently in used.
>
> On Sep 9, 2005, at 2:41 PM, Philip Lukidis wrote:
>
>
>> Hi. In my audio kext, assuming that I find a way to know which
>> streams are
>> active (hopefully by overriding the registering of buffers), how am
>> I to
>> know how many channels in the activated stream are active? Is
>> there a way
>> to do this? So far I have not seen this in the source.
>>
>
>
> --
>
> 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:
> 40guillemot.co
> m
>
> This email sent to email@hidden
>
--
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:
m
This email sent to email@hidden
_______________________________________________
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