Problems with "Remember last renderer" enabled

Issue description:

Hello,

I recently enabled “Remember last renderer” and now when playback is paused and the app is restarted under low memory conditions it starts playback unexpectedly to my upmpdcli renderer.

Steps to reproduce:

  1. Setup playback to upmpdcli
  2. Play part of a track
  3. Pause track
  4. Force stop Symfonium
  5. Start Symfonium

Then see that the playback starts back up even though it was previously paused.

Let me know if you need any more details. It has occurred over a couple of the last versions but I’m currently on 11.2.0B1.

Logs:

Upload description: aereaux

Additional information:

 

 

Reproduction steps:

 
Steps to reproduce:

  1. Setup playback to upmpdcli
  2. Play part of a track
  3. Pause track
  4. Force stop Symfonium
  5. Start Symfonium

Then see that the playback starts back up even though it was previously paused.
 

Media provider:

Subsonic

Screenshots:

     

This is due to upmpdcli returning an error when trying to seek on restore.

Error: error response: {faultcode=s:Client, faultstring=UPnPError, UPnPError/errorCode=501, UPnPError/errorDescription=Action Failed}

Symfonium then fallback to play then seek.

@medoc does upmpdcli support seeking before a play command? If not is it possible that you support it ?

Edit: Will add a workaround.

Good catch! I probably should have checked the logs from upmpdcli. Here’s a bit from where it happened. I can also enable more verbose logging if it helps:

Blockquote
upmpdcli[1488]: :2:…/upmpdcli-1.8.11/src/mpdcli.cxx:336::mpd_run_stop(m_conn) failed: Connection closed by the server
upmpdcli[1488]: :3:…/upmpdcli-1.8.11/src/mpdcli.cxx:148::MPDCli::startEventLoop: already started
upmpdcli[1488]: :3:…/upmpdcli-1.8.11/src/upmpd.cxx:312::checkContentFormat: format check disabled
upmpdcli[1488]: :2:…/libupnpp-0.26.4/libupnpp/device/device.cxx:471::UpnpDevice: Action failed: code -911
upmpdcli[1488]: :3:…/upmpdcli-1.8.11/src/upmpd.cxx:312::checkContentFormat: format check disabled
upmpdcli[1488]: :3:…/upmpdcli-1.8.11/src/upmpd.cxx:312::checkContentFormat: format check disabled
upmpdcli[1488]: :3:…/upmpdcli-1.8.11/src/upmpd.cxx:312::checkContentFormat: format check disabled
upmpdcli[1488]: :3:…/upmpdcli-1.8.11/src/upmpd.cxx:312::checkContentFormat: format check disabled

@medoc does upmpdcli support seeking before a play command? If not is it possible that you support it ?

No, mpd does not support this. I could probably fake it, but it’s not implemented at the moment.

Thanks, since it’s quite an edge case, I’ve added a workaround on my side, so not really necessary on yours.

Great, thanks for the quick support and fix! Anything you need me to test?