foo. bar. baz. quux.

Schemep3

From WikiBazQuux

(Difference between revisions)
Jump to: navigation, search
Revision as of 20:14, 23 May 2008
Cwbowron (Talk | contribs)

← Previous diff
Revision as of 20:21, 23 May 2008
Cwbowron (Talk | contribs)
(Features)
Next diff →
Line 8: Line 8:
== Features == == Features ==
-* flac+* '''SQLite Database'''
-** tags reader+** Track last played and play count
-** duration calculation+* '''Tags'''
-** parse playback length+** FLAC
-* mp3 +*** tag parser
-** id3v1 tag reader+*** duration
-** id3v2 tag reader+** mp3
-** estimates playback length (hacky)+*** id3v1 tag reader
-* SQLite Database +*** id3v2 tag reader
-* Playlist that accepts dropped files or results from database query+*** estimates playback length (hacky)
-* mplayer wrapper for playback.+* '''Playback'''
-* configurable playlist format+** Uses external mplayer process
-* playback order not depend on focus item+* '''Playlist'''
-* UI for changing ratings+** Accepts dropped files or results from database query
-* mark the current playing file in the playlist+** Configurable format
-* export to m3u (playlist context menu)+** Marks the current playing file in the playlist
-* update play count and last played+** Playlist ordering using meta-up, meta-down
-* album art (folder.jpg)+** Saved / restored using database
-* playlist ordering (meta-up, meta-down)+* '''Playback Queue'''
-* save / restore playlist+** Play next option
-* progress bar (implies more communication with mplayer)+** Add to queue option
-* store preferences in db ( scrobbler username, password )+* '''GUI'''
-* play next, add to queue+** Optional album art display (folder.jpg)
-* last.fm submission+** UI for changing ratings
-** http://www.audioscrobbler.net/development/protocol/+** Progress bar
-* keyboard controls+** keyboard controls
-** enter -> play+*** enter -> play
-** space -> pause+*** space -> pause
-** n,N -> next+*** n,N -> next
 +* '''Misc'''
 +** Export to m3u (playlist context menu)
 +** Store preferences in db ( scrobbler username, password )
 +** last.fm submission
=== To Do === === To Do ===

Revision as of 20:21, 23 May 2008

Schemep3 is a mp3 and flac playback system and database.

schemep3 is written in MzScheme and uses the MrEd GUI toolkit.

It is built on top of Jay McCarthy's sqlite module. It uses a slave mplayer process for audio playback.

If you are interested in the code, please email me at chris SQUIGGLE bowron dizzot us.

Features

  • SQLite Database
    • Track last played and play count
  • Tags
    • FLAC
      • tag parser
      • duration
    • mp3
      • id3v1 tag reader
      • id3v2 tag reader
      • estimates playback length (hacky)
  • Playback
    • Uses external mplayer process
  • Playlist
    • Accepts dropped files or results from database query
    • Configurable format
    • Marks the current playing file in the playlist
    • Playlist ordering using meta-up, meta-down
    • Saved / restored using database
  • Playback Queue
    • Play next option
    • Add to queue option
  • GUI
    • Optional album art display (folder.jpg)
    • UI for changing ratings
    • Progress bar
    • keyboard controls
      • enter -> play
      • space -> pause
      • n,N -> next
  • Misc
    • Export to m3u (playlist context menu)
    • Store preferences in db ( scrobbler username, password )
    • last.fm submission

To Do

in no partcular order

  • database updates from file (add currently works)
  • dropping item on playlist adds to the database
  • dropping an m3u loads all the files contained in it
  • multiple playlists
  • better playlist abstraction
  • playlist tree?
  • switch to using media table index rather than filenames
  • store / restore queries
Personal tools