Last night I pushed an absurdly large commit that replaced the metadata and encoding backends.
On the metadata side of things, we're now using GstDiscoverer to read tags, which mostly means simpler more maintainable code, and a slightly more complicated decodebin2-based pipeline for writing tags. When writing tags, we allow decodebin2 to plug as many demuxers as it wants until it gets to a decoder, then attach tagging and muxing elements, so that extra tag sets (as found in APE+ID3 tagged files, or files with multiple ID3 tag sets) are removed. For encoding, we're now using the encodebin element and its associated encoding profiles rather than the profile system from libgnome-media-profiles. We're not exposing this capability yet, but this system means we can have user-editable encoding settings (bitrates, quality levels, etc.) that actual users will be able to edit, and possibly per-device settings for portable audio players. We can also do automatic installation of encoder plugins now. When you first run a version of Rhythmbox that includes these changes, it will re-read all metadata from your library to get better tags from broken MP3 files, and to populate the new media-type field (which replaces the old poorly named mimetype field) which contains the audio encoding type (rather than the container or tag type). This is of course a database version bump, so older versions will not be able to read the database any more. _______________________________________________ rhythmbox-devel mailing list rhythmbox-devel@gnome.org http://mail.gnome.org/mailman/listinfo/rhythmbox-devel