YTM style "Speed Dial" overview row

Feature description:

I would like something equivalent to the “speed dial” feature seen in YTM. It presents a 3x3 grid of familiar music, and tapping one will immediately start playback, as well as queue up tracks based on that initial selection.

Essentially, it’s an immediate front and center shortcut to give one song as an example for what you are in the mood for, then listen to that song, before being presented with more like it, but without being restricted to just favorites or a given playlist.

That is kinda how all music streaming services work, but!

What is displayed in the “speed dial” grid is not intended to be listened to together, instead the speed dial seems to attempt to include music that is as different as possible, so you have ACTUAL OPTIONS for what style of music you are in the mood for.

All overview rows that can be made to superficially resemble the speed dial feature of YTM, currently either play the songs in them in sequence, or do not present a varied range of choices. None seem to be able to present several distinctly different options, but which then lead to more music that is similar to the chosen option.

If I use a random favorites playlist, picking an entry will result in me only hearing favorites. If I use last played, I will only hear recently listened tracks, etc.

The closest I can currently get to an overview row that works the way I want, is to favorite only a small amount of very different music, then enabling “Favorite Songs”. Then, instead of tapping entries in it, I tap and hold a song to drag it to the shuffle option.

This results in a stream of music I am quite pleased with, every time, without simply playing just my favorites. That said, I would like to be able to favorite a large portion of my collection, and use favoriting for what it is intended.

“Random Songs” also works decently well, but is then “too” random. I would like the grid of songs to stick to songs that I am immediately familiar with at a glance (such as favorites, or songs with high playcounts), as that is a part of why it works.

Playlist rows cannot be tapped and held to shuffle based on a given song, otherwise they would present me with an easy way to use a playlist, instead of my favorites.

Problem solved:

When the “speed dial” feature was first implemented in YTM, I was impressed, because it solves an extremely common problem, at least for me.

I get stuck in loops of listening to the same thing, and streaming algorithms would home in on that one style of music so that whenever I’d go to play some, I’d be presented with more of the same.

With my personal library I have a similar problem, first because my collection used to be small, but now that it has grown very large, because most apps only offer to play personal music collections far too randomly (leading to jarring progression between songs), or by only sticking to a small subset of the tracks available, by favoring favorites, recently played, and such.

I have a massive amount of music I know I like, but seldom hear, because in order to avoid the far too random randomness of shuffling my entire library, I stick to a small subset of it. Only venturing out to listen to old favorites when I happen to think of them.

Brought benefits:

The endless play and personal mix features of Symfonium have already impressed me with their ability to maintain song progression, while also playing tracks from my library that I haven’t listened to in years.

I believe a front and center entry point to these features in the style of the YTM “speed dial” would be VERY neat. It would allow a user to instantly “set the mood” using a track they know, with just one tap after opening the app.

Using the “speed dial” in the YTM app was a delight, and I am already finding Symfonium capable of matching its ability to play a satisfying sequece of tracks.

It is merely that getting there asap when opening the app currently requires I limit my favorites to about a dozen tracks, as well as holding and pulling the initial track I want to hear instead of just tapping it.

I know it’s a nitpick, and I’ll be sticking with Symfonium either way, but I found the “speed dial” to be such genius UX that I simply had to bring it up.

Other application solutions:

 
YTM apps “speed dial” feature.

YTM also includes albums in the grid. I do not like this, as it increases the taps required to get music playing, defeating the point of a “speed dial” imo.
 

Additional description and context:

 
I made a playlist named “Instant Mixes” to show what this overview row could look like. Of course it could be made configurable to look however a user likes, just like existing overview rows, but I like the 3x3 grid of options that YTM uses.

It narrows down the number of choices to something that doesn’t induce choice anxiety, while being enough that a range of different music can be presented.

I also included a screenshot of what my current speed dial is on YTM. I like the title of the tracks being displayed over the cover art, but that is not a critical aspect. The point is that it displays categorically different tracks that are familiar, which lets you get to exploring new stuff but in a way that’s congruent with what you feel like listening to in a given session.
 

Screenshots / Mockup:

 

   

Youtube have a shit ton more data about songs, similarity and your listening habits than what Symfonium have.

And you need to take in account provider limitations. When you are limited to genres there’s not much nice to offer.

If you can propose an algorithm for selection that would work most of the time then why not, clicking a song could start an instant mix based on that song genres or eventually moods and styles if the provider have some for that song.

Youtube have a shit ton more data about songs, similarity and your listening habits than what Symfonium have.

And you need to take in account provider limitations. When you are limited to genres there’s not much nice to offer.

I think a solution based on the metadata available in a personal collection can be very effective. Of course this depends somewhat on whether the collection has been properly tagged :expressionless:

The hard work of finding music I’m into has already been done, by me, as my collection doesn’t contain any music I don’t like. Which means that having Symfonium play a self-similar slice of music from it based on just the metadata in the media files, works extremely well, and actually achieves the variety YTM leaves me craving.

With streaming services, after they figure you out, leaving them playing a stream of music quickly starts feeling like and endless drone of slightly different versions of the same song. I find myself having to pull up the app more and more because it keeps playing the same stuff, so I have to deliberately go out of my way to find new stuff, and then play it a lot, to get it to start playing something different. And once that takes, it completely forgets everything I used to listen to before. Aargh!

When I ask a streaming service for metal music, it has to worry about which metal artists I actually like, and which ones I don’t. Symfonium doesn’t have to, because my collection only contains metal music I like.

YTM kinda sucks at creating mixes, IMO. Especially with genres where my artist preferences are very specific. I like rap and dubstep, but I can’t stand the vast majority of artists in those genres. YTM music has detected this as me just hating those genres completely, and won’t play or suggest them at all anymore. And if I ask for either, it has no idea what to do. It can’t even figure out that the safe option is to play stuff from my likes which overlap with the genres.

The auto-play in Symfonium, IMO, doesn’t suffer from the sameyness problem nearly as much. All Symfonium really needs to do, is not jump from EDM to a classic orchestral score, because every track it has to pick from, is probably something I’ll like. It’s a matter of not playing something I’m not in the mood for, rather than avoiding stuff I don’t want to ever hear. And at least with my library, I think it works really well!

All it could use is the UX of a quick entry point, and fast way to switch the mood when the desire to do so strikes.

If you can propose an algorithm for selection that would work most of the time then why not, clicking a song could start an instant mix based on that song genres or eventually moods and styles if the provider have some for that song.

Absolutely! I would solve this in two steps.

First, create a pool of tracks that are likely to be most familiar to the user:

  • The first obvious option is to add tracks from favorites
    • Maybe with a bias towards recent listens/additions
  • Tracks from the entire library that have high play-counts in relation to everything else
    • for example: any tracks that have more than 150% the average play-count (probably too simple, will be wonky with a collection starting from zero, and adding a large amount of new music would change the average, ideas?)
    • Edit: any tracks with a play-count that contribute more than 0.5% (or some other percentage) to total playcounts
    • Edit2: or just use top played, same result :man_facepalming:
  • Tracks from recently played music that are getting played most often
    • for example: check last 300 played and add any tracks that appear more than five times

Then, randomly pick tracks from the pool, with a couple restrictions:

  • No two tracks should feature the same artist/s
  • No two tracks should be from the same album
  • No two tracks should have exactly the same genre tags
    • But maybe do allow some partial genre overlap

An additional way to make sure the tracks presented are familiar to the user, is to make them semi-static. The selection could execute every time the user sees the “speed dial” but I think a better way to do this is to let it sit for a bit, and give the user a chance to try each option. This way they’ll grow familiar with each starting track, even if they weren’t before.

The selection should in this implementation only run in order to replace an entry that the user has not selected in a while. This way the options that a user likes stick around, and the ones they don’t get replaced.

Edit: The mix should always be new whenever a track is picked, however,

This is the kind of data that I do not have :wink:

But in the end this is just show some genre and start an personal mix on it that would do nearly what you want.

It’s only one way to do it.

If Symfonium only keeps when a track was last played, but not the times before then, then use the playcounts instead.

Simply pull the top ten played of the last 100 played tracks, for example.

I’m not saying these are the exact ways you should determine which tracks to display in the speed dial, rather that whatever logic you use, it should favor tracks the user is likely to recognize instantly.

My suggestion is how I might go about it. But when I write programs I sometimes run into situations where the data needed to inform what the code should do isn’t available. Sometimes you can write more code to get that data, sometimes it isn’t worth it, and sometimes you can even use something else to get a result that’s just as good.

I’m not particularly married to any one way of determining what tracks should get picked. I think it should be fairly random anyway, just not as random as a bunch of random tracks from the users entire collection, which nearly guarantees they wont recognize them all.

Just using favorites or last played tracks would probably be fine, too.

I do not want to simply select a genre. Figuring out what I want to listen to by selecting a song I know is far more intuitive to me than picking a genre.

Also, the easiest way to give only me what I want, is to enable songs from playlist overview rows to be long tapped.

Then I can just do what I do now but without using my favorites.

A more complex implementation is obviously a lot more work, and up to you. But I do think it would be very neat to have.