Music application implementation
Initial Music Development
New blueprint created for tracking items in the current cycle.
https:/
Blueprint information
- Status:
- Complete
- Approver:
- Ubuntu Core Apps Drivers
- Priority:
- Undefined
- Drafter:
- Ubuntu Core Apps Drivers
- Direction:
- Needs approval
- Assignee:
- Music App Developers
- Definition:
- New
- Series goal:
- Accepted for coreapps-13.10
- Implementation:
- Implemented
- Milestone target:
- coreapps-13.10-month-6
- Started by
- Michael Hall
- Completed by
- Victor Thompson
Related branches
Related bugs
Sprints
Whiteboard
Find
find local files and automatically push them to player app without user intervention
Sort and filter music into lists by: songs, albums, artists, playlists
Play
Now playing screen with typical playback functionality: play, pause, stop, fast forward to next track, back to previous track, scrubber, shuffle, repeat
Now playing queue
Playlist viewing and playlist management
Share
Tweet / Facebook / email what I'm listening to?
Victor Thompson's music app:
https:/
Daniel Holm's music app:
https:/
Lucas Romero's mockups:
http://
# Dogfooding goals July 2013
https:/
- Read in music from ~/Music.
- Browse a list of artists.
- Browse albums by an artist.
- Browse songs by an artist.
- Play a song, with transport controls (Play, Stop/Pause, Skip Back/Forwards).
- Shuffle.
- Play music while the app is not focused.
- Bonus: pull in album cover/details from the net.
# Updates
[dpm, 2013-07-16]
- GSettings app isolation is not in scope for 13.10, so we'll be recommending app developers to keep using LocalStorage for settings
- I've suggested to postpone Dash interaction until we hear from the Unity team on the outcome of the media scanner research they are currently doing
Work Items
Work items for coreapps-
[mhall119] Package Daniel Holm's app for testing by Design team: DONE
[linapio] Provide initial list of functional requirements: DONE
[mhall119] Schedule weekly IRC meetings: DONE
[dpm] Schedule weekly Design meetings: DONE
[mhall119] Setup lp:music-app with Daniel's code: DONE
[mhall119] Setup ~music-app-dev team memberships: DONE
[vthompson] Add ability to automatically start the next track when one ends: DONE
[vthompson] Add playback order controls (queue, random): DONE
[vthompson] Implement Playback controls: DONE
[vthompson] Implement Playback options (repeat, shuffle, etc): DONE
Work items for coreapps-
[vthompson] Setup Autopilot: DONE
[vthompson] Use LocalStorage for music database: DONE
[vthompson] Read from music database to display tracks in the app: DONE
[vthompson] Test playing a song: DONE
[vthompson] Test pausing a song: DONE
[dkessel] Test loading your library: DONE
[danielholm] Initial playlist support: DONE
[vthompson] Implement Artist listview: DONE
[vthompson] Implement Album listview: DONE
[danielholm] Implement Playlist listview: DONE
[danielholm] Implement Queue listview: DONE
Work items for coreapps-
[vthompson] Test goto next song: DONE
[danielholm] Play tracks in playlist: DONE
Work items for coreapps-
[danielholm] HUD: DONE
[vthompson] When viewing an album, show album data in header and simplify track items: DONE
[ahayzen] Show play queue above/below now playing and remove from playlists: DONE
[vthompson] Show artist data in header and remove artist name from items: DONE
[vthompson] Add tab 'Songs' - current 'Music' tab goes here: DONE
[vthompson] Add 'Recently playing', 'Genres' to the Music Tab: DONE
[ahayzen] Swipe to remove items from queue and playlists: DONE
[danielholm] Add to track to playlist as a sheet, not dialog: DONE
[danielholm] Make visible the number of items in a playlist in the title 'Test (5)': DONE
[ahayzen] Add support in the UI for an empty play queue: DONE
[vthompson] Implement Grilo support: DONE
[vthompson] Add the listing of genres to the Music Tab: DONE
[vthompson] Investigate using Dash music search for results and meta-data: DONE
[danielholm] Add support for arguments: DONE
Work items for coreapps-
[danielholm] Implement NEW Playlist listview: DONE
[vthompson] Test goto prev song: DONE
[danielholm] Implement Add To Playlist option expander: DONE
[danielholm] New Settings UI/UX: DONE
[ahayzen] Undo functionality when swipe to remove: DONE
[danielholm] Add support for URL Dispatcher: DONE
[vthompson] Store usage statistics for listing the most recent items played: DONE
[vthompson] Create Powerd QML bindings to keep app alive: DONE
[lool] Use Powerd QML bindings in the Ubuntu Touch environment: DONE
[ahayzen] Allow reordering of items in play queue and playlist: DONE
[vthompson] Place single album view in a sheet: DONE
[vthompson] Test shuffle capability: DONE
[vthompson] Test mp3 playback: DONE
Work items:
[vthompson] Investigate how to add Favorites to Dash: POSTPONED
[mikemc] Provide Qt/QML bindings for U1 Music Streaming: INPROGRESS
Change settings (and maybe music library) from LocalStorage to GSettings (lp:gsettings-qt): POSTPONED
Implement Favorites listview: TODO
Implement Songs listview: DONE
Implement Song Options listitem: DONE
Implement Delete Song dialog: TODO
Implement Playback queue Options listitem: DONE
Implement phone form-factor Tabs layout: TODO
[danielholm] Scrobble support (using Last.FM): INPROGRESS
[danielholm] Sync playlist using Ubuntu One: POSTPONED
Show albums in gallery like view: TODO
[danielholm] Each row should have optional addition controls: DONE
Extend reorder support to scroll the viewport up/down and dodge the other items while reordering: TODO
Second level of pagestack needs to show info from parent at top of page: DONE
[ahayzen] Rewrite toolbar to support controls and overflow: DONE
[danielholm] Read playlist files into local database: POSTPONED
[danielholm] Add usermetrics: DONE
Dependency tree
* Blueprints in grey have been implemented.