Sonica - A music player application compatible with the Roku PhotoBridge (HD1000/HD1500)
Version 0.4.10 add the display of mp3 bitrates to the status bar.
Version 0.4.9 provides fixes and updates to the tag reading code. A potential bug was fixed in the APE tag parsing code. The WMA parsing code was sped up by approximately 5X. It is now possible to display embbeded artwork from WavPack and WMA files.
Version 0.4.8 adds an options screen that allows configuration of startup options via check boxes. In addition, the options screen has a button for re-scanning the file system. The changes found during the re-scan will be written to the database if the database file is being used. See the README.txt file for more details on the new options screen. This version also has some bug fixes that remove various race coniditions and should correct some of the stability issues.
Version 0.4.7 updates the tag parsing code to support WMA ASF style tags.
Version 0.4.6 fixes a bug in background mode where the program would crash when performing a filesystem scan. Soiaf provided a fix for APE tag processing. This version also adds audio device error messages to the status bar.
Version 0.4.5 fixes a bug in the browse mode where pressing play on a selection would add it to the play once queue but also mark it as enqueued on the playlist queue. Then pressing select would try to remove it from the playlist queue, evenutally causing a crash. Also changed the way the main player loop detects the end of a playing song. It now uses an internal variable set via the Client class instead of the audioplayer's IsStopped() method. IsStopped() seemed to be randomly hanging.
Version 0.4.4 fixes a couple of bugs related to playlist parsing.
Version 0.4.3 adds a couple of minor features and fixes the following bugs.
Version 0.4.2 added a couple of minor features and fixed the following bugs.
Version 0.4.1 was a bug fix release. The following bugs were fixed.
Version 0.4.0 Changes the main screen layout and adds a number of small features. This version also adds the ability to work with other 3rd party applications such as SDesk and SongInfo. The more noticeable feature are the ability to play HTTP streams for Internet Radio, the song duration is now displayed along with the elapsed time. A new button on the main screen allows play list repeat to be turned on and off. For a complete list of features and bug fixes, see the included README file.
Version 0.3.9 was a single bug fix to 0.3.8. Sonica would crash if the file scan encountered a file that didn't have an extension.
Version 0.3.8 added 2 new command line switches. The -i switch will cause Sonica to ignore the saved database file. It doesn't read it and it won't re-write. The -f <filename> switch reads specific files (up to 10) from the command line and plays them. When finished, Sonica will exit. This option implies the -i, -p, and -n options.
Version 0.3.6 adds 2 new command line switches. The -n switch will cause the program to skip the file system scan if a previously saved scan exists. The -b switch disables the GUI (mostly?). This is still experimental. Also added in this version is the ability to recognize cover art files with a ".thm" extension with the assumption that they are another name for a JPEG encoded image.Starting with version 0.3.5, Sonica now has the ability to save the results of a filesystem scan and restore them at next start. Version 0.3.5 also makes use of a settings file to hold user configurable options. This allows a little more control over the startup state. The settings file also contains a mapping of file extensions to audio codec mapping. The only included mapping is MP3. It should be possible to add other extensions and codecs. Currently only files with ID3 tags can be used. The following features have been added:
Here's the current status of the code.I'm not distributing the source code at this time. However, bug reports and feature request are welcome. Once the code is cleaned up and is feature complete for version 1.0, source will be released either as a tar file or via anonymous CVS.