What's the best method/software for storing/viewing ratings in ID3 tags for mp3s?
January 2, 2006 10:00 AM   Subscribe

What's the best method/software for storing/viewing ratings in ID3 tags for mp3s?

Hopefully somewhere out there in the Metafilter user base there are other people that are as anal as I am about something this obscure. I've got a collection of 9000+ mp3s that I rely heavily on being rated in order to build playlists. It took quite a bit of time to rate them all in the first place so naturally I'm quite concerned about making sure that those ratings are persistent. I initially rated them all in Windows Media Player 9 (I know, I know) mainly due to its easy of assigning 1-5 star ratings in the interface and the fact that it had a plugin that would write the ratings to the ID3 tag and then restore them to the media library if necessary. However, WMP10 doesn't seem to support that plugin and since WMP is otherwise pretty crappy (apart from its integration with allmusic.com) I'm planning on migrating back to the loving arms of Winamp. I've found some scripts I can use with ActiveWinamp to import the ratings stored by WMP9 into the Winamp Media Library so I seem to be set for the short term. However, long term I'm wondering what's the best way to make sure that I'm always able to use these ratings, independently of what media player I'm using at the time. It seems to be kind of tricky, since while the ratings field in the ID3 tag can have a value from 1-255, most programs that handle ratings seem to use the 1-5 star method and there are obviously multiple ways to map the values from the ratings field into a 1-5 star rating (the WMP plugin, not surprisingly, used a fairly non obvious approach). As a result, even when I examine the tags on the files in something like Tag&Rename the stored ratings don't show up. Of course this could also be due to the fact that each ID3 tag can have multiple rating fields, each rating tied to an id string (like an email address, for example) Some programs only seem to check for ratings that are associated with a specific string (for example in WMP it was "Windows Media Player Series 9") Basically the point of all that rambling is that I'm trying to find out if there's anything of a "standard" approach to storing ratings that will make them accessible in different programs without me having to write scripts or something to convert the ID3 tags to one style or another. Also, is there an ID3 tag viewer which will just allow you to see all the fields in the ID3v2 tag "raw"? Most ID3 tag viewers/editors I've seen don't always show every single possible field in the ID3v2 tag format, just the most common ones. I'd like to have a way just to quickly verify what's stored in the rating field in case I run into a problem with the rating not importing into some media player down the line.
posted by shinji_ikari to Computers & Internet (9 answers total)
 
The rating editor in iTunes may help.
posted by Rothko at 10:04 AM on January 2, 2006


Yup, iTunes.
posted by joshgray at 10:11 AM on January 2, 2006


ITunes doesn't store its ratings in the ID3 tags. It keeps them in the iTunes Music Library.xml file.
posted by Guy Smiley at 10:20 AM on January 2, 2006


Guy Smiley is right, however if iTunes is your player of choice, or if you own on ipod, it's quite easy to use and convienent, especially if you pair it with iTunesKeys.
posted by charmston at 10:47 AM on January 2, 2006


For surety, use some advanced software like Media Center. Use its tag editor to define your own custom tag field with a unique name and embed it into the files. That way, with any half-way decent tag parser/player, you can extract your custom field data from the files without worrying that the ratings will be overwritten or reset to zero by some over-zealous or "helpful" program during a future import.

Personally, for my collection I have defined several custom rating fields (for melody, lyrics, basslines, mixability, originality, othrogonality, etc) and use smartlists to slice and dice the results.
posted by meehawl at 10:50 AM on January 2, 2006


I'd like to have a way just to quickly verify what's stored

I forgot to add. MC has "Database Expressions" that let you run queries against the library data to collect and evaluate results. Following an import, you could run a script to check the imported data against your backup data to check for data corruption or integrity. It's also useful to do things liks tag swaps, search and replace, and so on. I also run something like MP3Test or EncSpot on a semi-annual basis to check tag and frame integrity.

DB Expressions are also useful for running fuzzy matches on a collection of files and comparing filename and date data against some or all of the ID3 tags for the purposes of file identification. This is useful for randomly downloaded files or badly tagged files. The "Old Time Radio" tagger plugin does this well.
posted by meehawl at 11:31 AM on January 2, 2006


Response by poster: Thanks meehawl, Media Center is pretty close to what I'm looking for at least for getting a "raw" view of the ID3v2 tags. Its File Type Info window shows each of the fields in the tag, including the POPM field for ratings. However for some reason it's not able to read what is in that field, and it seems that it stores its own ratings in a comment (COMM) field instead. There doesn't seem to be an easy way that I could bring my ratings in the POPM field of the tag into the format it expects, short of writing a script.

As I was doing some more searching around myself, I found MediaMonkey, which is also close to what I want, but not exactly. At least it manages to automatically pull in the ratings that were saved to the ID3v2 tags by Windows Media Player though.

It's just frustrating that there doesn't seem to be any application out there that uses the POPM field of the ID3v2 tag as it was intended. It seems they either store ratings as comments, which you can't count on other programs to recognize, or if they do use the POPM field they don't account for the fact that you can store multiple ratings in the tag and only go with the first one that they find.
posted by shinji_ikari at 2:34 PM on January 2, 2006


only go with the first one that they find

This lamentable lack of standardisation and playback customisation is why I prefer to, well, make my own standards and "hide" my ratings away from common fields that are liable to being wiped by misbehaving software. There's an MC discussion about the COMM/POPL dichotomy - MusicMatch apparently started by avoiding POPL and many implementations followed it. It's still not clear to me that POPL is always used as a likability rating tag and not as an "encoding quality" tag.

There can be a large number of uniquely identified COMM tags within a file (possibly 256?) and I've used MC to define several Comments tags (for producer, mixer, studio, label, catalog number, etc) but there are many incomplete implementations of mp3 players that will only read the first COMM field and then stop. But the data is still there and can be second-source verified using something like Dr Tag.

I think the key thing is to get the data normalised and embedded. Using various programs today (and more in the future) it will be possible to move your ratings data into whatever tag field is recognised by your player of choice for playback selection.

I have no 1st-hand knowledge of the foobar id3v2 plugin but its components are usually quite transparent. Perhaps that will also do some of what you need?
posted by meehawl at 3:39 PM on January 2, 2006


Response by poster: Ah, yes I see your point about misbehaving software. After using MediaMonkey for a little while I caught on to the fact that it was actually replacing the ratings that WMP had added to the tags with it's own rating string ("no@email") and was also using a slightly different scale for ratings so the values were a little off. Bad MediaMonkey. Fortunately, I'd only been testing it out with a couple albums and I had a back up. I can definitely see the value of "hiding" it, but it seems like that would just make the practical uses of the rating (playlist generation, sorting, filtering) that much harder to do. The tool that helped me catch that was one I just stumbled on today, ID3-TagIT. I'd say that this is my favorite program for checking up on ratings that I've found so far. Not only does it display all the ratings in the POPM frames of the tag correctly, but it lets you rearrange the order of them so you can put a certain rating first to deal with those programs that only use the first rating they find.

You're right though, I think the main thing is just to pick a method and keep it consistent and hopefully in the future there will be better standardization around this. I think I may have to give MediaCenter another shot. It wouldn't be too bad to write an ActiveWinamp script to transfer my ratings into a COMM field in the style that it expects. Thanks again for your help.
posted by shinji_ikari at 10:27 PM on January 2, 2006


« Older A burning question   |   Forums discussing organic food, local/sustainable... Newer »
This thread is closed to new comments.