Plexamp does not allways use the selected audio device [Windows]

Plexamp Version #3.5.0
Plex Server #1.23.4.4805

Description :turtle:
I really love Plexamp, but I recently stumbled into a bug and hope it can be fixt, when setting the playback device in Windows, Plexamp does initially use it, but after you restarted Plexamp it will play the music on the wrong device until the Windows audio settings are changed. It’s not a big deal, but it can be quite annoying when you start the computer and wonder why you can’t hear you’re music, then you try to turn up the speakers only to realize the deafening mistake after changing the playback device.

How to Reproduce :rabbit:

  • Make sure you have at least 2 Audio Devices/Soundcards on the device (for example the integrated speaker and an usb soundcard)
  • Goto Windows Settings > System > Sound > App volume/device preferences And set the audio output for Plexamp
Image

  • Plexamp should now play the audio over the forced device, regardless what audio device is selected in windows (This is the expected behavior)
Image

  • Select the audio device which is not set for Plexamp
  • Now close Plexamp completely and reopen it
  • Audio now comes from the “wrong” device until a new audio device is selected in windows. (This is the bug part)

I was searching google for how to get Plexamp to change the output device and ended up finding this post.

@Arnj This looks more like an override at the operating system level that seems to be for legacy apps or anything that doesn’t have native output selection. I’d say it’s primary use is to allow users to re-route the audio on-the-fly. It exists due to the default OS behavior of switching audio devices to the one most recently connected in an attempt to assist and speed up the process of re-configuring a change in audio devices. Programs without a built in audio device selection will generally just follow whatever device is set to be the “Primary Sound Device.” Since Plexamp does not have a native output selection it is simply outputting throught the “Primary Sound Device” which effectively flags the audio stream for the OS and gives authorization to manage where the stream gets output.

Unfortunately due to the overriding nature of that control panel and it being a part of Windows itself, it is actually working as intended as far as Plexamp is concerned. The fact that it isn’t a perfect override every time Plexamp is re-launched doesn’t make it a bug with Plexamp. Windows simply isn’t able to perfectly detect and redirect the audio stream. I see similar behavior with Foobar2000 which does have it’s own built in output selector.

To confirm I used Foobar2000. It has it’s own built-in output selection which I regularly use. Currently I have it set to my optical out but I have several other outputs available. I also have Foobar to resume playback if it crashes or if I close it manually.

When I went to the Windows control panel to override Foobar’s playback, nothing happened. I switched Foobar to another output device and again nothing happened when I tried to override.
Only after I set Foobar2000 to use the “Primary Sound Device” did the Windows control panel have any effect. Whats more, despite Windows control panel remembering the setting Foobar2000 wasn’t immediately redirected because again, it has it’s own output selection. I also noticed that if I closed Foobar while playing something, and while set to use system default, Windows was not able to immediately redirect the audio stream when I re-launched Foobar. I tried skipping tracks as well but it was only after I had stopped playback for several seconds before clicking play, that the Windows override actually worked.

That last part is important because Plexamp technically only ever pauses playback. To actually Stop you have to click and hold on the pause button, mimicking the mobile app behavior.

I’m not convinced this is a Plexamp bug but maybe a Dev could chime in and provide a better explanation of how plexamp behaves.

If anything this should be a Feature request for the Plex team to add a native output device selection to it’s own options!! Not everyone goes with the flow of Windows automatic audio output management. If I’m listening to music on headphones or on speakers the last thing I want to hear are other system and app sounds at full blast so I always set my music to a completely different output.

1 Like

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.