Gaia/Music

From MozillaWiki
Jump to: navigation, search

Design Specs

For the latest UX specifications, please visit: https://mozilla.box.com/applications

Requirements

Music Library

Overview

At app launch, the user is presented with a library. The library should include the following options:

  • Playlists
  • Podcasts [P2]
  • Audiobooks [P2]

Only applies to music files (not the above), filters your music based on metadata (ID3):

  • Artist
  • Song
  • Album
  • Genre (probably not needed, since this filter is less useful as often artists will vary genres from album to album. Auto tagging in many apps is inconsistent, so you will get numerous similarly named genres that may not represent the actual artist's genre)

Layout

The library lists should be visual and typographic.
In portrait orientation when the user clicks on any category they should see a list formatted in this manner:
[album art] text based on filter type

(Landscape support would be nice to have for v.1) In landscape orientation, the view should be more visual, more focused on album art. When the user clicks on any category they should see:
[large album art]
small text based on filter type

Quick Browsing

Each browsing list should contain:

  • Search: search entire music library
  • Index list: Sorted alphabetically, with index component that enables user to jump to letter.
  • Back

Sync

Playlist Support

User can (manually) import (copy) a playlist from popular desktop apps such as iTunes or Windows Media Player.

Management within the device.

The user can:

  • 1. create a new playlist, place tracks within this playlist
  • 2. organize the tracks in existing playlists
  • 3. rate music

Would be nice to have...

  • 4. edit the metadata
  • 5. the system tracks the quantity of playbacks for each track

Playback

When playing audio files, the player should contain the following:

Music Control Buttons:

  • Play / Pause
  • Skip to Next track
  • Skip to Previous track
  • Scrubber (shuffle to any point in the track, scrubber updates location with playback)
  • Repeat Infinitely
  • Repeat Once
  • Shuffle playback Playlist
  • Volume Control (adjusted by touch and hardware volume rocker)

Indicators:

  • Playback time elapsed
  • Playback time remaining
  • Song name
  • Artist
  • Album (if one exists)
  • Album art or default album graphic

Navigation:

  • Back: to music library
  • Album: view album track list


Requirements (Apps)

  • Users have the ability to search within application contexts

Search

  • Search music
  • Filters
    • by Artist
    • by Album
    • by Song (all)

System Control during Playback

Nice to have's:

  • Status Bar: “now playing” when music is playing.
  • Task Switcher: The music player should be easily accessed through the task switcher, ideally with playback controls (play / pause, skip to next track, skip to previous track)
  • Lock Screen: The music player should be easily accessed through the task switcher, ideally with playback controls (play / pause, skip to next track, skip to previous track, volume indication / scrubber)

Bluetooth file sharing

  • Ability to share music using Bluetooth file transfer.

Development

Source code on Github

Security Review

The security review of this app can be found here.