PlexAmp CarPlay Audio Output Control Issuse

Versions:
PlexAmp 4.8.4
iOS 17.1.1
Car: Hyundai IONIQ 5

Description:
PlexAmp will not release control of audio playback when the car’s infotainment system is set to play.

Steps To Repo:

  1. Play song on Plexamp on the phone.
  2. Start car and plug in Phone
  3. Infotainment system notices carplay and plexamp starts playing over speakers
  4. Switch to infotainment system audio (Sirius/XM, AM/FM Radio, etc)
  5. A few seconds of the chosen audio get played
  6. PlexAmp resumes playing and infotainment system switches back to CarPlay

Workaround:
Using another media app on the iPhone (SiriusXM App, Apple Music, Spotify all tested), start a song, giving control of music output on the iPhone from PlexAmp to any other app. Switch back to car infotainment system and output says with infotainment system now. (No longer switches back to PlexAmp after a few seconds).

Thoughts/Notes:
It feels like PlexAmp is constantly checking to see if it’s connected to CarPlay and will just auto-play if it is, even if it was previously paused. Pressing pause on the CarPlay screen or on PlexAmp on the phone while plugged in doesn’t help here either, it then resumes play when the audio source in the car is switched away from the Phone.

I really thought this was a problem with my car’s infotainment system until I wasn’t able to reproduce it with SiriusXM App/Spotify/Apple Music. I’m not sure what’s different here but I can reliably do it with PlexAmp but not with these other apps.

1 Like

Hmm, we’re not doing any aggressive autoplay that I’m aware of.

Please capture Plexamp logs and post them right after the problem occurs.

Here are logs from this issue. Twice it switched back from the infotainment to the Plexamp.

Plexamp-Logs-2023-11-26-1.zip (400.5 KB)

I assume it’s this:

Nov 26, 2023 16:40:21.378 [0xf45b9480] DEBUG - Audio Session: remote control asked to resume.
Nov 26, 2023 16:40:47.485 [0xf45b9480] DEBUG - Audio Session: remote control asked to resume.
Nov 26, 2023 16:40:57.956 [0xf45b9480] DEBUG - Audio Session: remote control asked to resume.

In case you’re an iOS developer, this is the handler:

  // Play.
  [rcc.playCommand addTargetWithHandler:^MPRemoteCommandHandlerStatus(MPRemoteCommandEvent* _Nonnull event) {
    dprintf("Audio Session: remote control asked to resume.");

So the system is telling us to play, not sure why we’d ignore it…

So, in this case, the difference I see from other apps is that I was on the infotainment UI and something triggered carplay to take over the UI, normally this doesn’t happen except when plugging in the phone. I cannot convince the system to stay on the infotainment UI, every time I return to the infotainment system and start playing the radio, 2-3 seconds later carplay loads up replacing the infotainment UI. I cannot replicate this with Spotify, SiriusXM app, nor with Apple Music, but I can reliably do it with PlexAmp. Is it possible that there’s another event aside from the above that’s related?

I’m wondering if it’s activating and triggering the infotainment to load up which then activates the playCommand plexAmp registers.
Restating: I’m wondering if maybe plexamp is doing something that ends up accidentally activating itself.

As far as the logs go, the chain of events begins when the system tells it to resume. The Audio Route: logs show us reacting to changes, and there are some circumstances in which we resume (usually with headphones involved), but I don’t see any of those logs here.

The docs at playCommand | Apple Developer Documentation don’t show any additional parameters or anything we should be looking for,

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