mp3fs: adding id3 read support for flac
I use MP3FS a lot for transparently transcoding flac files to mp3s when for instance adding songs to my iPod. This has mostly worked fine. Mp3fs transcodes my flac files and uses the comment section in them to make the id3 tags in the mp3 files. The problem is that I have a lot of flac files that are tagged using id3 tags themselves – not the usual vorbis comment.This causes these files to be transcoded without tags at all. Currently I am looking into adding this feature to mp3fs to enable it to show my flac files with correct tags. The source isn’t exactly plain old C, but uses code from PyFlag to use some object orientated techniques (classes, methods, and all). Frankly, I think it looks butt ugly, and it makes it even harder to read (as if C was not hard enough to read already). In addition I have had to dig through tons of source level documentation in header files to get to grips with libid3tag from the MAD project. «Fun». But if I make it, it will at least make my music collection easier to organize.
mp3fs: Adding provisions for transcoding higher quality flac files
The second thing I need to look into is adding capabilities to Mp3fs for it to be able to transcode FLAC vinyl rips – a new super high quality format (96kHz/24bit) distributed on sites for music lovers. As of today it only accepts «normal» cd-quality flacs (44.1kHz/16bit). This involves using the LAME library, which is pretty much undocumented (I never thought I would miss javadoc). Looks like this might be a tad bit more complex than the first task.
xml parser for rhythmboxdb.xml files
Third task on my TODO list is finally looking into xml-parsing, in order to be able to some changes to the database that Rhythmbox uses. Intentionally or unintentionally flac files are sometimes added to the database. I would then like to be able to just remove these files. Sometimes I change the bitrate settings of mp3fs, rendering the RB database outdated. Since rebuilding it is too time-consuming (adding 15000 file entries to my library over a DSL line takes many hours), I would like to be able to just select the files that are transcoded, and changing the recorded bitrate.