As I sit here listening, and Ashkenazy's Chopin blends somewhat suddenly into Sound Patrol's pounding trance, it occurred to me that I should keep a list of things I keep MEANING to fix in the jukebox, but which I never remember when I go to code. It's like when you get to the video rental place and can't remember the movies you've been meaning to see. Although in this networked age it seems so very "1980s" to go and physically rent a video. I mean, get real.
But anyway, enough rambling. The todo list:
- Replace the Anthem.NET interface with dojo. (Anthem has the potential to be great, but MS (naturally) adopted some other crap, so Anthem is basically abandoned now.)
- Store average levels for each track (including separate levels for multiband) to use as initial levels. Consider an option to not use compression at all, but instead use leveling based on average song levels.
- Password-based security for logins.
- Allow multiple clients logged in at once--base choices on some average opinion or something.
- Calculate unique track IDs using foosic signature identification.
- Enable (peer-based?) sharing of track attributes
- Bulk modification of track attributes -- when you KNOW you hate Tom Waits, no point waiting for it to appear in the playlist.
- Utilities -- Allow clean up of "missing files", display list of tracks that are damaged or missing id3 info.
- Special "damaged" attribute. Damaged files should not be played, but this doesn't mean they suck.
- Windows audio support (which implies running as a windows service?)
- Languages other than English, at least in the gui.
- Add a guest interface that allows viewing the current track attributes without modification
- Icecast integration -- automatic output of metadata for streaming
- Possible addition of optional rulesets to enforce broadcast rules (What, no more "album chunks"? I forbid the removal of "album chunks"! What, didn't I mention? The engine occasionally plays tracks in order from the same release...)
(Note: Jukebox + ices2 = streaming jukebox.)