dustinrue / ControlPlane

ControlPlane - context-sensitive computing for OS X
http://www.controlplaneapp.com
BSD 3-Clause "New" or "Revised" License
1.76k stars 180 forks source link

Audio output destination detection failure #420

Open kagwind opened 9 years ago

kagwind commented 9 years ago

OS: El Capitan GM Controlplane version: 1.6.1

Issue: cannot detect the change of audio output destination Reproduction: Set up two rules: one for audio output to internal speaker, one for audio output to headphone By plugging in/out the headphone to my macbook, the context won't change correspondingly. (Usually stick to the context it starts with)

Edit: Hardware: Macbook Pro Retina 13' 2013 late

dustinrue commented 9 years ago

I can't replicate this on my hardware. Anyone else seeing the same?

Might want try redoing the rules just in case some underlying ID changed.

kagwind commented 9 years ago

Thank you for investigating this!

I am new to controlplane and created the rules from scratch. I suspected my setting was wrong, so I created two rules for detecting the power adapter connection, which worked as intended. That's why I thought it was the app and reported the issue.

I attached the settings of the rules, in case I did something wrong: 1 2 3 4 5 6

Bit-notes commented 9 years ago

Experiencing the same bug, MacBook Air 13' Early 2014, Mac OS 10.11 El Capitan.

If you create aggregate MIDI device and switch to it you can force-update ControlPlane status.

As I can see it: ControlPlane still can distinguish between headphones and internal audio. ControlPlane's trigger for checking if output device is changed is still working (when os changes output device ControlPlane updates headphones status) In El Cap headphones <-> internal audio switch no longer generates same event as switching to any other audio device.

Apple definitely changed something in sound system, many DAWs and audio plugins experience issues.

dustinrue commented 9 years ago

I have noticed that the menu bar item for sound doesn’t always update what output is set until I option click it. I’ll keep an eye out for a fix or its possible Apple will fix the issue in a future update.

dustinrue commented 9 years ago

Try http://www.controlplaneapp.com/download/CI as a test. It is better able to deal with state changes of the built in audio device on laptops but I'm not sure how it'll behave on desktop systems. It also fails to properly detect when AirPlay is being used which it should treat as external speakers.

Please provide feedback on the progress so far.

Bit-notes commented 9 years ago

Switching between internal speakers and headphones on MacBook Air works flawlessly, thank you.

I have nothing acting like AirPlay server to test with, but when I tried to connect to AirServer installed locally ControlPlane indeed haven't switched to external speakers. Also Mac beachballed and was generally flaky, so this is far from definitive test.

Will be able to test with AirServer installed on a remote windows machine in 24 hours.

UPD: Yep, no switching with external AirServer.

kagwind commented 9 years ago

Switching between internal speakers and headphones works on my laptop. Will continue testing. Thank you.

OS: El Capitan GM Hardware: Macbook Pro Retina 13' 2013 late

ghost commented 8 years ago

I was experiencing the same issue. It worked as expected right after I setup the rules, but upon next boot the headphone detection no longer worked. I installed the DMG above as a test and headphone rules work again. El Cap 10.11.1 on Mid-2015 Retina 15" MBP.

ghost commented 8 years ago

Same problems, does'nt detect output source.

El Cap 10.11.3 on Mid-2015 Retina 15" MBP