foo. bar. baz. quux.

Schemep3

From WikiBazQuux

(Difference between revisions)
Jump to: navigation, search
Revision as of 20:09, 16 January 2009
Cwbowron (Talk | contribs)
(To Do (Maybe))
← Previous diff
Revision as of 18:52, 26 January 2009
Cwbowron (Talk | contribs)

Next diff →
Line 38: Line 38:
*** Moves media file into my \Music\Library\A\ARTIST\YEAR - ALBUM\0x - TITLE format *** Moves media file into my \Music\Library\A\ARTIST\YEAR - ALBUM\0x - TITLE format
*** Moves album art also *** Moves album art also
 +** copy to mini library [for mp3 player sync]
 +*** convert to mp3
 +*** input -> pcm -> mp3 via mplayer and lame
* '''OS Specific''' * '''OS Specific'''
** Windows ** Windows
Line 57: Line 60:
* playlist tree - primitive prototype working * playlist tree - primitive prototype working
* scheme based queries... * scheme based queries...
-* copy to mp3 player (and convert -> mp3) 
-** converter 
-*** input -> pcm -> mp3 via mplayer and lame is working 
* audioscrobbler caching * audioscrobbler caching
* remove empty directories after moving files to library * remove empty directories after moving files to library

Revision as of 18:52, 26 January 2009

Schemep3 is a music playback and database program written in PLT Scheme. It can playback any audio format that MPlayer plays and read tags in any format that TagLib understands. It uses Jay McCarthy's SQLite module for database access.

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

Contents

Features

  • SQLite Database
    • Track last played and play count
  • Tags via TagLib
    • FFI interface to C wrapper functions
    • scheme extension for id3v2 frame blocks
    • scheme extension for flac comments
  • Playback
    • Uses external mplayer process
    • playback seek by clicking on progress bar
  • 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
    • multiple playlists
  • 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
    • playback queue viewer
    • Export to m3u (playlist context menu)
    • last.fm submission
    • store / restore database queries
    • Move to library options
      • Moves media file into my \Music\Library\A\ARTIST\YEAR - ALBUM\0x - TITLE format
      • Moves album art also
    • copy to mini library [for mp3 player sync]
      • convert to mp3
      • input -> pcm -> mp3 via mplayer and lame
  • OS Specific
    • Windows
      • Pause on terminal lock
      • global hotkeys (C-A-Space => Pause, C-A-Right Arrow => Next )
  • Deprecated
    • id3lib ffi - deprecated for taglib
    • FLAC
      • tag parser
      • duration
    • mp3
      • id3v1 tag reader
      • id3v2 tag reader
      • estimates playback length (hacky)

To Do (Maybe)

in no particular order

  • dropping an m3u loads all the files contained in it
  • playlist tree - primitive prototype working
  • scheme based queries...
  • audioscrobbler caching
  • remove empty directories after moving files to library
  • multiple databases
    • open different sqlite db
    • allow you to manage different libraries
      • deskstop
      • portable

Screenshots

Dependencies

Personal tools