[Android Apps and Games] glavewu:
After multiple try, I realize something.

If like you said, BubbleUpnp should get involved after each song finishes, then it is indeed Sony issue, but I think they just try to make things better but unfortunately introduced incompatibility. And BubbleUpnp can make an easy workaround.

The fact is Sony renderer (at least this X9 speaker) tries to get rid of control point after start playing. The benefit is obvious, it can play on its own even though cell phone is out of power or turn off, meaning control point disconnect won't affect it (if control point needs to be involved then after disconnect the renderer will have no more songs to play). I've tried multiple times, I used Sony app and start playing one song from a folder in my NAS, then immediately turn off my cell phone wifi (control point disconnects). The speaker plays by itself and shuffle in that particular folder (or repeat based on what mode I chose before app disconnect), which means it somehow make that folder a playlist and keeps working on it. Maybe that is a way Sony deals with playlist functionality as Sony app actually lack of making playlist.

This behavior got proved again by Bubble's log. Like you mentioned Bubble was not even involved the renderer played by itself. The issue is Sony used something not standard UPNP/DLNA to improve user experience (nobody want to keep their phone always active to stream music). I think Sony renderer suppose to report a finish event to Bubble, then Bubble will issue next song, but they didn't do that and Bubble didn't issue next song and Sony keeps playing on the only one song it got...

I find UPNP the spec itself doesn't have strict definition of playlist. So I guess most of the control point apps need to contact renderer every time to issue next song, instead of sending the whole playlist to renderer, which is safe to work with most of the renderers, because you never know how they implement the playlist function in the renderer. Maybe that is why most of the UPNP apps don't have the playlist function which make Bubble even more appealing.

I think the perfect solution is after control point generates playlist, send it to renderer, then renderer can play by itself without control point until control point updates anything like add new songs to the playlist or changed play modes, etc. But it is just my good wish, only the control point developed by closely collaboration with the renderer development can do that as they know clearly how it is implemented (again blame the UPNP spec). But Sony failed to make the app robust because it serves all Sony products not just this X9 speaker.

Even though the renderer should report song finish, and it failed to do that, Bubble is still able to find out when the song is about to finish. I find the progress bar of a playing song on the Bubble is just correct, although the Sony renderer keeps playing the same song by itself, Bubble is able to get the play progress information and show the right info and progress bar, which means it does know when a song is about to finish. And if it issues a next song at the end of the progress bar, it will work, because if I manually click next song, it can shuffle next song in the playlist generated by Bubble, which means any new song sent from Bubble to Sony renderer can be executed correctly.

I think it is almost impossible for Sony to fix this incompatibility, let alone slow big company Sony is, this Sony renderer actually works in a better way, which is that after playlist information initially generated and sent to renderer, the renderer should be able to work by itself and control point status should not affect it. So the job is left to BubbleUPNP which tries to be the most functional and universal UPNP/DLNA player.

The fix should be very easy logically speaking. I'm not an android app developer but I'm an engineer who develops networking ICs, so the logic for this to be done is pretty straight forward. Add an option in setting, monitoring the song play progress and issue next song command when the current song is about to finish.

Maybe I'm the only Sony SRS X9 speaker owner who also purchased the BubbleUPNP app. You have all your reasons to ignore my request to fix it like you ignored my emails. But still I hope you can fix it to make your app truly universal and make you customer happy even though it may be just one person.