← Back to team overview

touch-packages team mailing list archive

[Bug 1241185] Re: Should provide policy based lifecycle exceptions

 

Since you want to mark this bug as "Won't fix", can you point me to some
docs for music-hub? I can only find some info about
QtMultimedia.MediaPlayer related to music-hub, but that QML API is
apparently missing the functionality described in this bug report.

I'm already using QtMultimedia.MediaPlayer, and while that allows me to
keep playing the current song when the display turns off or I switch to
another app, which is already a huge improvement over the state from
~1.5 years ago when I tried this the last time, it's still not even
close to "good enough".

When the current song ends, the MediaPlayer.onStatusChanged signal is
not executed immediately, but only after I switch back to my app or
unlock the phone. As far as I can tell, that signal is the only place
where I could start playback of the next song. So it's just silent after
the current song ends, clearly a very bad user experience.

You should either allow apps to run the slot connected to that signal
whenever it is fired (which might be pretty difficult to solve and opens
up a lifecycle policy exploit), or add a queue API to QtMultimedia /
some other QML namespace. (On a related note, a signal like
"playbackAboutToFinish" could allow implementing gapless playback in the
future.)

If you do the queue thing, make sure to support programatically deleting
from the queue before the media is played: I want to implement "play
next song from my app's queue, or if the user has not enqueued any
songs, play next song from album". If I am supposed to use the music-app
queue, I have to enqueue all the remaining songs on the current album
when playback starts. If a user then adds something to the app queue, I
must be able to remove everything from the music-hub queue, add the
user-provided song, then add every song following the newly enqueued
song on its album.

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to unity-mir in Ubuntu.
https://bugs.launchpad.net/bugs/1241185

Title:
  Should provide policy based lifecycle exceptions

Status in Qt integration with the Mir display server:
  New
Status in Unity Mir:
  Triaged
Status in unity-mir package in Ubuntu:
  Triaged

Bug description:
  Currently, unity-mir has a hard coded exception to prevent music-app
  from suspending when losing focus.  We need a way to allow other apps
  to continue playback of music, etc.  For example, I've tried to help
  get panpipe (pandora app) usable on the phone, however without the
  ability to playback continuously it isn't useful.

  Perhaps lifecycle management exceptions based on apparmor-easyprof-
  ubuntu policy?

To manage notifications about this bug go to:
https://bugs.launchpad.net/qtmir/+bug/1241185/+subscriptions