Re: fIsMixable
Re: fIsMixable
- Subject: Re: fIsMixable
- From: Jeff Moore <email@hidden>
- Date: Tue, 17 Jun 2003 12:50:50 -0700
On Tuesday, June 17, 2003, at 11:51 AM, BlazeAudio Developer wrote:
Jeff,
Thank you for the warnings! This is the kind of information I was
looking
for.
Most of the users of our drivers are coming from OS9/ASIO - so I don't
think they really care about system prefs..
They will care because it is there. The same can be said for Audio MIDI
Setup, which you users will definitely be using. Remember, the HAL
won't even let you change the volume of a device when hog mode is owned
by another process. Exclusive ownership means just that.
Not only that, when they are using apps. like Logic and Cubase - they
would actually prefer exclusive access!
Since it doesn't really win them anything, they probably don't really
care about exclusive access.
Perhaps we can provide this is as an option - the driver could be
running
either in "exclusive" mode or "shared" mode?
The HAL will take care of doing this for you if you provide both
mixable and non-mixable versions of your formats. The HAL exposes this
through kAudioDevicePropertyHogMode and
kAudioDevicePropertySupportsMixing. This way, you let your users make
the decision about what mode to use and everybody wins.
At 11:24 AM 6/17/2003, Jeff Moore wrote:
By not supporting mixing, you will force the HAL to take hog mode on
behalf of the first app to start an IOProc on your device.
Non-mixable implies only a single client. This locks out every other
app in the system, including the System Prefs from doing basic things
like adjusting the volume.
Please don't do this. The crux of the system is to share audio
devices amongst processes. You might not think this is important, but
I guarantee as soon as you release something like this, your users
will (rightly) consider your driver broken because your device can't
be used by the Sound Prefs panel and whatever app they are using at
the same time.
Besides (and this is a common misconception that I've heard from
other driver writers), you really aren't saving any time by not doing
the int->float since the app will just have to do it instead.
On Tuesday, June 17, 2003, at 10:45 AM, BlazeAudio Developer wrote:
If our driver does not really care about multiple applications
being able
to play audio at the same time - is it still necessary to set the
fIsMixable flag?
It would save us from having to convert between float and SInt32
(what
the hardware supports).
What other problems could prop up from not setting that flag (the
device
only does linear PCM)?
--
Jeff Moore
Core Audio
Apple
_______________________________________________
coreaudio-api mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/coreaudio-api
Do not post admin requests to the list. They will be ignored.
_______________________________________________
coreaudio-api mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/coreaudio-api
Do not post admin requests to the list. They will be ignored.
--
Jeff Moore
Core Audio
Apple
_______________________________________________
coreaudio-api mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/coreaudio-api
Do not post admin requests to the list. They will be ignored.