RCoaster really needs some sort of VFS system.
Some features should be:
- Consistant interface to song meta-data, regardless of wether the song is a local file, remote file, or even stream
(where meta-data changes).
- Built in mirroring mechanism. Should allow songs to be saved locally from either remote files, or even streams (which
contain multiple songs).
- When playing a remote file (but not streams) that we have an identical local copy of, play the local file.
- User-configurable max-size of local file cache. Some algorithm (most recent, most popular?) to choose which songs
are kept when the cache is full.
The VFS needs to allow both reading and writing (for saving songs), directory listing, and advanced search features.
The VFS should probably be the "Song Information Source", so it will need to store information in a database
of some sort, possibly SQL, preferably XML files within the filesystem. |