1) resampling audio for compatibility, and better gapless/crossfading a) write bit conversion stuff (8->16 and 24->16) b) mono to stereo conversion c) default audio format is (44.1khz, 16-bit, stereo) d) option to set default sampling frequency e) abitility to disable resampling and audio format conversion 2) when writing combined interface for all decodes to use, be sure to add a common function and abstrct dealing with DecoderControl * and put cycleLogFiles in there, so we cycleLogFiles while decoding, not just when decoding has stopped. 3) streaming and playing in general a) determine a clever interface to play, so that play doesn't block until the file is opened, but just returns when the command is accepted. b) put errors in error stuff of PlayerControl and report this to status and print to error logs c) this will help streaming from blocking indefinetly or waiting on a response 4) play streams 5) ACK error codes 6) cleanup main() 7) handle '\n' in filenames 8) allow "add" command to load playlists, then depricate "load" command, this will be benneficial for adding m3u url's 9) compute average replaygain to use for non-replaygain songs Post-1.0 -------- 1) crosslink "list" stuff, for example, artists are crosslinked to alubms and vice versa, this way you can do list album artists or list artist albums, this will make life easier when we add genre and other metadata 2) rewrite linked list impelmentation to be more flexible a) remove "key" stuff b) allow assigning a compare function for a list