Better Song Mix

Feature description:

A better algorithm for the “Song Mix” that also considers the playback history and/or has an adjuatable weight for favorite tracks.

Problem solved:

With the current implementation, likes are prioritized way too much (especially if you only have a few liked tracks). It feels like favorite tracks repeat every 10 songs. In a single listening session of ~30 min, I had to skip the same song twice, because I had already listened to it i the same session. I still want to hear my other tracks, with just a slight preference for favorites. And tracks shouldn’t be played more than once per hour imo.

Brought benefits:

A customizable weighting system would let the user adapt the frequency of favorites in their song mix. A (configurable) limit to song repetition when generating playlists would decrease my annoyance :stuck_out_tongue:

Other application solutions:

I usually use the song shuffle feature instead of the song mix because of the problems mentioned above. So a reduced weight for favorites should probably do the trick.

Additional description and context:

The weight could also depend on the numer of favorite tracks, so that if you only have 10 favorites you’ll get 2-3 favorites per hour, but if you have 100s of favorites you still get 2-3 favorites per hour. Otherwise you end up listening to the same 10 tracks over and over again even though you have many other tracks in your library.

Using a Jellyfin backend, but I’m guessing the Song Mix is a custom implementation and doesn’t fetch playlists from the backend, as Finamp’s “Instant Mix” doesn’t seem to have the same drawback…

There’s is 0 possible track repetition with the mixes.
Playback history and play counts are also fully taken in account.

Provide logs and details about those repetitions.

Ahh, I think I know what’s going on. I have duplicated songs in my Jellyfin library, an it’s seems like either liking one of them likes all dupes as well, or I ended up liking the copies independently. Here’s a screenshot of a freshly generated Song Mix:


The song “7ove You” is in there twice with only 6 songs in-between, but to Symfonium it’s not the same song.

I’m guessing this is a Jellyfin problem and not a Symfonium one.

However, the issue with weighting favorites still is an issue. 8 of the first 10 songs in the mix are favorites, and I only have 40 favorites in total. The mix has a total length of 200 songs, and imo not every favorite has to be included in the mix, so having 80% favorites at the start feels a bit too much to me.
I’d really appreciate if you could give us a way to customize the ratio of favorites vs. normal songs in the mix :slight_smile:

Here are the logs:
debug-20230331_091725.zip (41.8 KB)

Well if you have duplicate songs then yes they can be present multiple times :slight_smile: Nothing the algo can do as they are seen as different.

There won’t be configuration as the algo is complex and it’s not just that simple :slight_smile:

It should not be possible to have 8 favorites in the 10 first. (Or really really unlucky). The target is between 10 and 20%.

Do you use user ratings at all?

How many songs?
(Use smart filters to get the exact numbers)
How many favorite songs?
How many songs with rating >= 8
How many songs with rating >= 6
How many songs with rating < 4
How many songs with playcount > 1

Ok so after the refactor to select the display column for the songs, the necessary columns where no more collected for the mixes making them broken :slight_smile:

Will be fixed for next release.

I had to push a quick fix for a playlist issue so this will be in 5.0.0a too when Google accept it :slight_smile:

Please report back after.

User ratings: No, just liked / not liked

How many songs: 10838 (by just going to “Songs”; creating a smart playlist with “bitrate > 0” shows 10848 songs")
Favorite songs: 40
Rating >= 8: 0
Rating >= 6: 0
Rating < 4: 10848
Playcount > 1: 5458 (that seems strange, given that it’s higher than the total amount of songs)
Playcount > 0: 6630

Thanks for taking a look, I’ll try it out as soon as I get the update!

5458 is not bigger than 10848 :wink:

Anyway Google have accepted the patch since yesterday you can update already.

I experienced a similiar behaviour that the mix was very favorite-heavy before, so many mixes were quite similar. I can confirm that 5.0.0a fixes this behaviour!

You are correct. I don’t know what I was thinking, clearly not much…

I can confirm that the mix now features far less favorite tracks… maybe too few. I’d love if you’d consider adding a way to customize the frequency of favorites down the road, but for now I’m happy to have a usable 1-click mix again. Many thanks!

As explained there’s 2 dozen of variables there’s not an enter here value for favorite and get that number of favorites.

You have 40 fav and don’t want to listen to them too often. It does exactly that :wink:

Add more favorites or ratings.

Is playcount also taken into account for personal mixes?

Favorites, playcount, lastplayed and user ratings are the main things impacting the mixes yes.

OK thanks
Tracks with 0 playcount / no lastplayed can also be included in the mix, right ?

If they are visible in the screen you start the mix or use the global home song mix yes of course.

1 Like