Amarok/Proposals/Bookmarking:2.0

From KDE Community Wiki

Bookmarking Feature Proposal

"Bookmarking" refers to a process by which Amarok stores a certain playback position of a track for later retrieval, either by the user or automatically.

There are two types of bookmarking: (1) Manual and (2) Automatic.

Manual Bookmarking

A user should be able to mark a particular playback position in any track as a bookmark, and then return to it later. She should be able to mark multiple bookmarks per track.

Scenario: I am listening to Jack and Jill via the librivox audio book service. I particuarly enjoy the section where they go up the hill and I would like to come back to enjoy it again later. Some time passes, and I am farther along in the book when I realize the beach chapter would be useful in the report I am writing for school.

Scenario: I am listening to a two hour DJ mix, which is known to contain a specific piece of music somewhere in the mix. Accompanying the music file is a .cue sheet with information on when a new piece of music enters the mix. This allows me to quickly find the position of the piece of music which I wish to listen to inside the mix by hovering over the arrow indicating this on the progress bar to find it, and then clicking on it to skip to that position. Furthermore, I later realise a piece of music is marked incorrectly by a few seconds, and I must thus change the bookmark for that piece. This is too little to drag the marker into position, so I in stead right-click and get offered to input the time exactly. The change is saved immediately both into the database and back into the cue file on disk.

Implementation Ideas

  • Trough markers on the progress bar
    • General positioning using the mouse (snapping to the current position would likely make good sense as well)
    • Click to set new bookmarks
    • Imagine something like the settings for Plasma panels
  • Bookmarks stored in a new DB Table with columns: track url, position (in seconds), note (optional)
  • A new tab in the playlist view (under "Dynamic Playlists" ?) called Bookmarks
    • Would list tracks and their corresponding bookmarks
    • Clicking on a bookmark would load the track at the point
    • Context action to remove a bookmark
    • Optionally add a 'note' to a bookmark

Automatic Bookmarking

Scenario: When I stop listening to a long track, or spoken word track -- such as an audiobook or a podcast -- Amarok should remember the playback position, so that when I restart the track, it restarts from the last-played position. That way, I can listen to audiobooks for a while, pause it, listen to music, and then pick up the audiobook from where I left off. - Bug #148740

Implementation Ideas

  • Auto bookmarks are stored just like manual bookmarks
  • Tracks with "Audio Book" or "Podcast" as the genre will be automatically have their last played position bookmarked upon track change, stop, etc.
  • Tracks longer than 15 minutes(?) will automatically have their last played position be bookmarked

Music Details

  • Media Device Integration - Support for the iPod's Bookmarking features
  • Useable with remote and local collections - files I have on disk and tracks from librivox or other services.
  • Option to save bookmarks as CUE sheets.
  • Backends might not support seeking.

Reference

Bug #148740

http://support.apple.com/kb/HT1831