foo. bar. baz. quux.
Schemep3
From WikiBazQuux
(Difference between revisions)
| 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)
- FLAC
- 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
