TODO File for Muggle ==================== - Script to publish a version - Checkout - make dist - copy .tgz, README, CHANGES, HISTORY into web directory - generate documentation - copy into web directory - sync with web Testing/bugs ============ - Test execution of playlist commands - Test mgPCMPlayer::getSourceFile() for GD case (find) - Test saving/loading playlists to database Import ====== - Album - Cover text - Cover images (based on filename or tag) - Genre - Modified - Tracks - Language (?) - Genre1, 2 - Rating? - Bitrate - Modified, created - Lyrics - Playlist from m3u Code polishing ============== - Check for memory leaks - Why do filters use pointers? - Check for (reasonably) consistent usage of char*/string - mgDatabase is not used? - should handle a static object with a MySQL connection - execute queries? - mgPlayer used what for? - Could save IP/host name and associate last playlist loaded - Check for unnecessary log commands - Generate HTML documentation using doxygen, - use dotty/gv for state machines of player - make available online - Check compatibility for 1.3.12 Short term items ================ - Import existing m3u playlists (in import) - Import genres OSD in general -------------- Content ------- - Handle loop mode in mgPlaylist - Handle shuffle mode in mgPlaylist Player ------ - Determine max. framecount (needed for rewinding)? - Init scale/level/normalize? - Add ogg decoder - Add a simple progress display (song title, artist, ...) - DisplayTrackInfo (part of the player!) - DisplayAlbumInfo (part of the player!) Medium term items ================= - really abstract from specific queries etc. - mgDatabase should completely abstract database (mySQL) stuff!? - read/write queries - return results (needs a homogeneous representation of results?) - Run import/update from within OSD? OSD --- - Type numbers to enter characters and jump to first title accordingly - Check whether hierarchical menus are more suitable Content ------- - Save/load filter sets - Apply filter set as dynamic playlist (i.e. show filters when loading playlists) - Handle ratings (increase/decrease during replay) Player ------ - Shuffle: toggle and loop keys. Shuffle only songs not already played, not easy though - Display covers as still pictures - Add flac decoder - Set ratings Import ------ - Handle updates Web interface ------------- - Look at PHP stuff from c't 11/04 and adapt to schema? Long term ideas =============== - daapd integration? - netjuke integration? - Display arbitrary images while playing music Visions ======= - handle off-line films (CDs, DVDs, recordings) - handle streams (live TV with channel list, MP3 radio,..., EPG) - handle images (possibly in sync with music/radio) - muggle content syndication (e.g. via DAAPD) - provide a stream (e.g. icecast) of the currently played music? Already Done ============ - Check play speed (probably XINE related) - Playlists starts with 2nd song (DONE) - Export playlists - Delete selected item - Add command line option for top level directory - prepended to filename in non-GD-mode - searched in GD-mode - Edit playlist (move tracks like channels in VDR channel list) (OK in playlist view) - Instant play = empty current playlist, append tracks of current node and play (easy, in submenu of browser) - Clear playlist (submenu action) - Find files from database entry based on GD compatibility flag - Handle Next/PrevFile in mgPlaylist (vdr_player.c) - Add plugin parameters for database name/host/user/pass - Add plugin parameter for GD filename compatibility - handle filters: - create tracklist from filter - create tree from filter - i18n (english and german) - Album import - Various artists ************************************************************ * * $Log: TODO,v $ * Revision 1.14 2004/08/30 14:31:43 LarsAC * Documentation added * * Revision 1.13 2004/08/27 15:20:33 LarsAC * Updated open issues w.r.t. import * * Revision 1.12 2004/08/26 11:11:42 LarsAC * Import changed to use taglib * * Revision 1.11 2004/07/29 06:18:07 lvw * Added todo entries * * Revision 1.10 2004/07/29 05:58:14 lvw * TODO list changed * * Revision 1.9 2004/07/27 07:06:00 LarsAC * Added file for doxygen documentation generation * * Revision 1.8 2004/07/09 13:47:07 LarsAC * Updated next steps * * Revision 1.7 2004/05/28 15:29:18 lvw * Merged player branch back on HEAD branch. * * Revision 1.1.2.12 2004/05/27 07:58:38 lvw * Removed bugs in moving and removing tracks from playlists * * Revision 1.1.2.11 2004/05/25 21:57:58 lvw * Updated TODO list * * Revision 1.1.2.10 2004/05/25 00:10:45 lvw * Code cleanup and added use of real database source files * * Revision 1.1.2.9 2004/05/24 11:48:35 lvw * Extended TODO list * * Revision 1.1.2.8 2004/05/13 06:48:00 lvw * Updated TODO list * * Revision 1.1.2.7 2004/05/12 22:38:37 lvw * Some cleanup * * Revision 1.1.2.6 2004/05/11 06:35:16 lvw * Added debugging while hunting stop bug. * * Revision 1.1.2.5 2004/05/07 06:46:41 lvw * Removed a bug in playlist deallocation. Added infrastructure to display information while playing. * ***********************************************************/