Browse Source

Use exclusive audio by default on OSX

Should solve the USB audio issues. But is equally likely to cause entire
new classes of problems, as this mode is not well-tested. On the other
hand, this uses the same OSX API as PHT, so it might be easier to match
user expectations.

With non-exclusive mode, the change-physical-format option ruins
everything for us if the OSX USB audio driver is used. It's a pretty
nasty issue that has a low chance of getting fixed properly. As we now
rely on exclusive mode for multichannel PCM, this option is not really
needed anymore, and we remove it to avoid further problems, should the
user select non-exclusive mode.
Vincent Lang 9 years ago
parent
commit
2380dbcd45
2 changed files with 9 additions and 5 deletions
  1. 9 1
      resources/settings/settings_description.json
  2. 0 4
      src/player/PlayerComponent.cpp

+ 9 - 1
resources/settings/settings_description.json

@@ -92,7 +92,15 @@
       },
       {
         "value": "exclusive",
-        "default": false,
+        "default": [
+          {
+            "value": true,
+            "platforms": [ "osx" ]
+          },
+          {
+            "value": false
+          }
+        ],
         "hidden": true,
         "platforms": [ "osx", "windows" ]
       },

+ 0 - 4
src/player/PlayerComponent.cpp

@@ -634,10 +634,6 @@ void PlayerComponent::updateAudioDeviceList()
 void PlayerComponent::setAudioConfiguration()
 {
   QStringList ao_defaults;
-  // On OSX, ask mpv to change the audio format system-wide. This is needed
-  // at least to get multichannel PCM running, if the user didn't already
-  // select multichannel output in "Audio MIDI Setup".
-  ao_defaults << "coreaudio:change-physical-format=yes";
 
   QString deviceType = SettingsComponent::Get().value(SETTINGS_SECTION_AUDIO, "devicetype").toString();