Re: API for switching audio output device or disabling output altogether
Re: API for switching audio output device or disabling output altogether
- Subject: Re: API for switching audio output device or disabling output altogether
- From: Roger Thornhill <email@hidden>
- Date: Mon, 14 Dec 2009 05:37:58 -0500
Thanks for giving me a conclusive answer Jeff, I figured it most
likely wasn't possible to achieve through software alone, otherwise
someone else would've done it already.
To be clear though, I wasn't trying to use the digital out and the
built in speakers at the _same time_, I wanted to use one or the
other. I'm assuming that's it's still not possible - once the optical
cable is inserted, it seems like the internal speakers are disabled
via a hardware switch, which like you mentioned, can only be undone by
physically unplugging the cable.
I'm curious as to why Apple would choose to disable the ability to
switch back to the internal speakers when a cable is inserted, this
seems to be an artificial and unnecessary limitation.
In a message board thread
(http://forums.macrumors.com/showthread.php?t=799536#16 ) discussing a
new Mini-Displayport to HDMI adapter with audio support
(http://www.monoprice.com/products/search.asp?keyword=5969), one user
mentions the following:
"One final note. I'm disabled and would be unable to constantly unplug
and plug in audio cables depending on whether I want to use my iMac by
itself or go out into the living room and use it on the big screen
HDTV. Therefore the advantage of being able to pick where the Mac
audio is routed with a click of the mouse becomes obvious for me.
Maybe there's another way to do this just as easily without this
adapter but I don't know what it is."
So in terms of disadvantages of the current approach, we have:
1) causes unnecessary wear and tear on the audio port from constantly
inserting and removing the cable to switch from built in speakers to
external audio system
2) creates a challenge for disabled users who might not be able to
easily insert and remove the cable
3) forces the user to purchase additional hardware to remedy this shortcoming
For a company such as Apple, with a commitment to accessibility and a
history of over 20 years of "listening to our customers and applying
thoughtful solutions to previously unsolvable problems"
(http://www.apple.com/accessibility/), I would hope that they would
take the above points into account, especially number 2, before
dismissing this as a "UI Policy decision" with no intention of being
changed. Perhaps this issue is worth looking into after all,
especially if a solution could make your machines more accessible to
disabled users.
The alternative is to simply _not_ disable the option for the built in
speaker when inserting a pair of headphones or cable into the audio
output port. You could still maintain your current UI policy decision
by providing the same default behaviour, so when a cable is inserted,
it switches the audio output to be the device attached to the cable,
but at least leave us with the option of switching to the built in
speakers through the Sound Preference panel if we choose. And I
don't mean using the internal speakers and external audio output at
the same time, I'm talking about one or the other. Can anyone point
out the disadvantage of such an approach, because I really can't see
one.
For those interested, I ended up solving this problem by purchasing a
Turtle Beach Audio Advantage Micro USB adapter
(http://www.turtlebeach.com/products/micro/indetail.aspx) and
connecting it to an older pair of external speakers I had lying
around. I've set up my media centre software (Plex) so that it uses
the digital output port on my iMac, and all other sounds are output
through my old pair of external speakers, without the need to
constantly insert or remove cables. I also could've just used the
Turtle Beach USB adapter to connect an optical cable to my amplifier,
and still use the iMac's built in speakers, but unfortunately, the
Turtle Beach adapter doesn't output 5.1 audio, so I had to stick with
the built in optical output on my iMac instead. (another option is to
use the monoprice mini-displayport to HDMI adapter with audio support,
but my TV doesn't output 5.1 audio either, so I decided against this
route)
Anyway, that's about all for now. I appreciate the help from everyone,
Roger
On Fri, Dec 11, 2009 at 8:21 PM, Jeff Moore <email@hidden> wrote:
> On our hardware that behaves in this way (and not all of our hardware does), the behavior is there because you physically can't use the digital out and the built-in speakers at the same time. There is no API, public or otherwise, for you to call to change this behavior short of pulling the cable.
>
> On Dec 11, 2009, at 5:10 PM, Roger Thornhill wrote:
>
>> On Fri, Dec 11, 2009 at 8:01 PM, Paul Davis <email@hidden> wrote:
>>> On Fri, Dec 11, 2009 at 7:21 PM, William Stewart <email@hidden> wrote:
>>>
>>>> That's the point though. The behaviour that we support is to support the
>>>> user's gesture (plugging the cable) and NOT having to:
>>>>
>>>> (1) Plug the cable
>>>> AND
>>>> (2) Go to a software panel and configure the output.
>>>
>>> Just to confirm what you said earlier - this only happens if the user
>>> had selected the optical out as the default output device, correct? If
>>> the user had not done this, the switch would not happen and audio
>>> would continue using the existing device until they changed the
>>> configuration, correct? Even as a confirmed linux-head, its hard for
>>> me see what could be wrong with that policy ...
>>
>> The problem I have is that by inserting the cable, it disables the
>> option to switch to the internal speakers. Not the fact that
>> inserting the cable switches the audio output to the device connected
>> to the cable. If that were the case, it wouldn't be a problem. I'd
>> just select the internal speakers when I want to use them. The
>> problem is that the internal speakers are no longer an option.
>
>
> --
>
> 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
>
_______________________________________________
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