foo. bar. baz. quux.

Schemep3

From WikiBazQuux

(Difference between revisions)
Jump to: navigation, search
Revision as of 20:11, 8 July 2008
Cwbowron (Talk | contribs)

← Previous diff
Revision as of 20:12, 8 July 2008
Cwbowron (Talk | contribs)
(Dependencies)
Next diff →
Line 73: Line 73:
== Dependencies == == Dependencies ==
-* PLT Scheme+* [http://www.plt-scheme.org/ PLT Scheme]
-* mplayer+* [http://www.mplayerhq.hu/ mplayer]
-* TagLib+* [http://developer.kde.org/~wheeler/taglib.html TagLib]
-* lame+* [http://lame.sourceforge.net/index.php lame]

Revision as of 20:12, 8 July 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.

Contents

Features

  • SQLite Database
    • Track last played and play count
  • Tags - will be switching to taglib
    • FLAC
      • tag parser
      • duration
    • mp3
      • id3v1 tag reader
      • id3v2 tag reader
      • estimates playback length (hacky)
  • 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
    • 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
  • TagLib
    • FFI interface to C wrapper functions
    • scheme extension for id3v2 frame blocks
    • scheme extension for flac comments
  • Misc
    • Export to m3u (playlist context menu)
    • Store preferences in db ( scrobbler username, password )
    • last.fm submission
    • id3lib ffi - deprecated for taglib
  • OS Specific
    • Windows
      • Pause on terminal lock
      • global hotkeys (C-A-Space => Pause, C-A-Right Arrow => Next )

To Do

in no particular order

  • database updates from file (add currently works)
  • dropping an m3u loads all the files contained in it
  • multiple playlists
  • playlist tree - primitive prototype working
  • store / restore queries
  • scheme based queries...
  • playback queue viewer
  • copy to mp3 player (and convert -> mp3)
    • converter
      • input -> pcm -> mp3 via mplayer and lame is working
  • audioscrobbler caching
  • file management?
    • automatically move files into their correct spot in my hierarchy
      • mostly working

Screenshots

Dependencies

Personal tools