Re: [Rhythmbox-devel] Auto-rate plugin

On Sun, 2007-02-18 at 23:26 -0700, Alex Lancaster wrote:
> However, re-adding the feature as an optional plugin is a possibility,
> you could look at the code from the pre-0.9.1 releases to get an idea
> of the auto-rate algorithm, although I imagine it would have to be
> implemented quite differently to be done as a plugin.  James
> Livingston would know more on this.

Actually, implementing it as it was would be fairly trivial. However I'd
much prefer if instead someone redesigned it to work better. The old
version was fairly simple and stupid, and if you accidentally left your
music playing while you weren't around a few times it would start to
distort you ratings a bit. This mostly happened because the more highly
rated songs would get played more often, which caused them to increase
their rating...

>From the original post:

On Mon, 2007-02-12 at 16:50 +0100, Nicolas da Luz Duque wrote:
> I already have many ideas on how to handle the automatic rating of the
> songs. It would look a lot like the imms plug-in for xmms, but without
> the song analysis part. I could then extend it to a biased randomizer
> too, preferring better rated songs.
> The whole thing would still permit manual user intervention, unlike with
> imms.

There are two distinct ideas there, an "auto-rater" and implementing a
much better "Play Order" (what Rhythmbox uses to choose songs).

Personally I think implementing a better Play Order would be very cool,
as our current ones are fairly simple, the random one that people see
(shuffle and repeat both on) has the probability of the song
proportional to the rating and the logarithm of the time since it was
last played.

Using more interesting data to base it off, whether IMMS-like, things
pulled from, some kind of analysis, or something else would be
very interesting and I believe very popular.

If you let me know what you'd want to look at first, e.g. watching for
track changes to do auto-rating, implementing a play order, or something
else, I can point you in the right direction.


James "Doc" Livingston
"This label is the target of a goto from outside of the block containing
this label AND this block has an automatic variable with an initializer
AND your window wasn't wide enough to read this whole error message"
    -- MPW C error message

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]