Proposal: Rating tag logic
Jud Craft
craftjml at gmail.com
Tue Jan 6 22:40:00 UTC 2009
So right now, Amarok stores two different metadata values in the
database: score and rating.
Amarok's scoring is cool. It computes a score for a song based on
your listening habits, automatically. We can agree this is a pretty
neat feature.
There's a problem, though: no one else cares. When I switch to
Windows and run Winamp, Winamp's not gonna care. My iPod's not gonna
care. Amarok's scoring is sadly, Amarok-specific metadata, rather
than music-specific metadata.
On the other side, we have the built-in rating tags in OGG, MP3, etc
files. These suffer from the "user metadata" problem: you can never
count on a vast majority of users to specify that stuff. :) For
example, I have a decent multi-gig collection and have never once used
the rating tag. Too much work to rate the entire library. Other
people with large libraries may feel similar.
In addition, the rating tag requires constant attention: your tastes
and listening habits may change. Do you want to keep messing with the
rating tags on all your files? Most people don't.
Yet rating has a benefit: it is music-file specific. It is a tag
standard. Other players, and digital music devices love it, and do
funky logic with it (Highest rated automatic playlists, auto-filling
of a device with top-rated music, etc).
Seeing the drift?
Proposal: why can't Amarok, in addition to doing its awesome score
computation, _save_ (a rough translation of that score) to the
music-file rating tag?
Pros
----
*Rating data is now accumulated automatically (bonus for lazy users
and users who can't specify this stuff; your music finds out its
ratings for itself)
*Rating data is now as DYNAMIC as Amarok's scoring is; "fire and
forget", and always count on having decent ratings for your song (as
decently as you respect Amarok's scoring anyway)
*Rating data (in other words, a rough analog of Amarok's score) is now
available across players
*Good rating-based logic now works wherever your music files go.
*With a good algorithm, Amarok can use the existing rating and update
the rating from there, rather than wiping the previous rating. (ie,
when importing a song, instead of giving it the default score, Amarok
computes from the rating tag: 20*(number of stars) as the starting
score value.) This means that an entire music collection's rating
data can be dynamic even across databases, rather than having Amarok
wipe it fresh the first time. (An install of Amarok five years from
now, with this feature, could pick up and monitor your listening
tastes right where you left off, without having to reset ratings in
your entire collection).
Cons
----
The only thing I can think of: some people prefer to manually specify
ratings. In that case, there should be an option to disable this
feature, if implemented.
I think this would go a long way toward putting Amarok's score
information into a useful format that ANY music platform, software, or
device can use. And it would make excellent, productive use of a tag
that users often find impractical to manage themselves. It
essentially takes Amarok's automation of listening-habit-metadata and
puts it into the widely available rating format; pros for nearly
everyone involved.
Whatcha think?
NOTE: Please pardon my sudden fear, but I just wondered: is the
"rating" actually a per-file tag? I was under the assumption that it
was, but if the star rating was always only a database-metadata
feature then I've pipe-dreamed for nothing. Considering its ubiquity
across platforms and music devices I assumed it was a per-file
setting.
More information about the Amarok
mailing list