Allow music playing apps to escape the lifecycle trap
As Ubuntu's app-lifecycle-
Blueprint information
- Status:
- Started
- Approver:
- Thomas Voß
- Priority:
- High
- Drafter:
- Thomas Voß
- Direction:
- Approved
- Assignee:
- Thomas Voß
- Definition:
- New
- Series goal:
- None
- Implementation:
- Started
- Milestone target:
- None
- Started by
- Thomas Voß
- Completed by
Related branches
Related bugs
Bug #1203848: If you hit the power button to lock the device the music is stopped and nothing starts it again | Fix Released |
Sprints
Whiteboard
The music-hub will be a session-level service that is offered to app-authors for music playback. It will be integrated with the overall stack as follows:
---
| Music Hub |
---
--
| Platform API |
---
---
| QtMultimedia |
---
The primary interface to the functionality is via QtMultimedia's QML bindings and it is transparent to users of that API. Please note that traditional audio output is not covered by the music hub, i.e., it is specifically targeted to music playback as opposed to audio output.
Implementation choices:
* Frontend API: QtMultimedia QML bindings
* Backend API: C++
* Communication Protocol: MPRIS via DBUS
* Service-side playback backend: gstreamer 1.0
Work Items
Work items:
[thomas-voss] Provide music-hub API stub for preliminary QtMultimedia integration: DONE
[thomas-voss] Provide music-hub iteration0: INPROGRESS
[diwic] Provide a player backend for QtMultimedia on top of the music-hub API: INPROGRESS
[diwic] Provide a custom playlist control for QtMultimedia to enqueue playlist items to music-hub/player sessions: INPROGRESS