7 ms·
How to Shuffle Songs? (2014)
- franciscop 3y ago> Let’s go back to our users who have also fallen victims to Gambler’s fallacy. If you just heard a song from a particular artist, that doesn’t mean that the next song will be more likely from a different artist in a perfectly random order. Wait no, it does, right? Since we are not doing random independent events, but taking things out off a finite set. Going back to the colors, if there are 4 green and 4 not-green, there's a 50% chance that the first song is green. But if the first song is green, doesn't that mean that there's now a 3/7, or 43% chance, that the second song is green? And 57% that it's NOT green? At the extreme, if I have a single song of My Chemical Romance among 10 songs, and it plays first, I expect MCR not to play again (until the list resets, the algorithm describes a finite set, not a rolling one).
- airstrike 3y agoWhen they say "more likely from a different artist" they don't mean "more likely than before your last song" but rather that the probability that it is a different artist is higher than the artist last played (which is what the average person likely expects from their shuffle) If we're shuffling the set of my liked songs, and 90% of my liked songs are by Taylor Swift, even after hearing 3 of her songs back-to-back on shuffle, chances are I'm hearing her again next
- low_tech_love 3y agoYeah, you’re right. I think this is a case of simplification in communication over perfect technical accuracy. What he meant was more that song “similarity” (as in artist, album, etc) is not taken into account by the algorithm. But yes you’re absolutely right.
- theshrike79 3y agoThis is one of my favourite things about psychology, perception and programming. When people say they want to "randomly shuffle a playlist", they really don't want that. They want the perception of randomness, but _true_ random doesn't abide by rules. If you're actually random, there is a probability that it might just play all the songs straight through. Or just pick songs by a single artist back-to-back.
- Akronymus 3y agoI want all songs truly randomized once, then playing in that order. Sadly youtube just picks the next one based on the current ones ID + some seed, so it constantly gets stuck in loops
- Retr0id 3y agoI'm amazed youtube hasn't figured out a way to detect and avoid these loops, it seems like a solvable problem. Even a naive solution like having the client remember the last n played tracks, and not auto-play any of them (picking the next one down) would be a big improvement.
- bayindirh 3y agoSony's CD players used to choose the next when the song finished, however it removed the ones it played from the candidate list, so it never looped. As another neat trick, they have added a small animation while seeking to next track with some lower time bound, so it looked like thinking for a second or so. In reality, the decision was instant, seeking was not.
- Bewelge 3y agoI have had the (conspiracy) theory for a while that this is by design. Kept happening to me on an account where I've disabled watch-history. Now I'm watching on an account where it's enabled and it hasn't happened even once. And it's been months since I switched. Actually not sure if it's even that far fetched. Making the logged-out-experience worse on purpose is something all the big internet firms do.
- kubanczyk 3y agoBut... You've asked YT not to remember the previous videos, and it doesn't: LGTM. There could be advanced implementations (like with the remembered passwords, where YT would store a list of seeded hashes of your viewed videos). But they are that: advanced implementations, that impose an extra cost.
- at_a_remove 3y agoSupposedly, the "pros" use a combination of one-step key shifts, similar tempos, and slowly ascending "energy" (which I've never found a good definition of) to pick the next song. Key-finding algorithms don't seem to be particularly accurate from what I have heard of. Ideally, you'd use this, plus the year and metadata about whatever microgenre. Use the radio adage of "don't hit me with a brick after you tickle me with a feather." Occasionally do a "two from Band X" or "three from the year NNNN." I would probably weight the microgenre in the metadata by how rare it is: "rock" isn't particularly descriptive as compared to "doom rock" or "Southern rock."
- troupo 3y agoIt's almost impossible to define those microgenres per song because the metadata for music is shit :) Spotify does try to do it, but it's not an exact science: https://everynoise.com https://everynoise.com From https://everynoise.com/EverynoiseIntro.pdf https://everynoise.com/EverynoiseIntro.pdf --- start quote --- There are other ways to plot music genres, of course, than the one used by the map at any given time. We use 10 dimensions internally, and two completely independent measures of genre similarity. Iʼve flipped the map once already since first publishing it, and I might do so again without warning if I find another configuration that seems more interesting. --- end quote ---
- at_a_remove 3y agoOh, yeah, it's messy. Still, I was thinking MusicBrainz for some of it.
- airstrike 3y agoI actually just wish Spotify stop spamming me the very same songs and artists over and over in virtually any "made for airstrike" radio / playlist. Give me "NOT made for airstrike", please. I often want to start a radio off a song precisely because I'm trying to find new songs that go with that one, not so I can have an excuse to unironically listen to "More Than This" for the 20th time this week...
- yellow_lead 3y agoIt seems like the discover weekly playlist does a better job at showing new songs, but you only get that once a week of course, and without any genre control.
- globalise83 3y agoYes, Spotify seems to want to force you to listen to the same things over and over, almost as if someone wants to boast about how many millions of seconds of loading time is saved by their clever caching.
- lovestory 3y agoIt's known that record labels pay Spotify to promote certain artists more (known as industry plants if they are not already established). They found a loophole so that it's not considered payola (which is illegal) https://twitter.com/AbelowRob/status/1641455112345493506 https://twitter.com/AbelowRob/status/1641455112345493506
- vim-guru 3y agoI prefer randomizing lists but not songs. Spotify's user experience could be better in this regard tbh.
- low_tech_love 3y agoNot so related, but I actually like Spotify’s algorithm for suggesting new music a lot. Currently my daily routine for discovering new music is 1) pick an album that has something to do with what I want, 2) start the last song in the album, 3) skip it. It works pretty well!
- prawn 3y agoI think this gives you similar material to the Song Radio functionality. You could use Album Radio or Artist Radio as a shortcut. I use these and Discover Weekly to discover a lot of new tracks. I know some people don't find discovery via Spotify to be useful at all, but like you, I think it's excellent. I've come across thousands of new tracks, and their strike rate for suggestions is generally very high. It might help that my bar for favouriting a track is as background noise for the office or around the house rather than purely 10/10 killer desert island tracks.
- rob74 3y agoOk, so this article proves that they know how to do it, but they seem to have forgotten over the intervening 9 years - according to some, the shuffle function now prefers similar songs to "keep the vibe", but according to the Spotify support pages, that's a "smart shuffle" feature, and I don't have that because I'm too cheap for the paid plan. Anyway, shuffle should play the songs in a playlist in random order, but make sure to play all the songs (like shuffling a pack of cards and then looking at the cards one by one)! While Spotify's current "shuffle" just seems to pick a random song to play after the current one, with some songs repeating three times while others are never played. Annoying as hell...
- croisillon 3y agoif you're not on the paid plan you have ads every now and then, right? how is that not more annoying than the non working shuffle?
- rob74 3y agoWell, if you are using the web version, there are ad blockers (e.g. https://chromewebstore.google.com/detail/spotify-ad-blocker-blocki/nfmlkliedggdodlbgghmmchhgckjoaml?pli=1 https://chromewebstore.google.com/detail/spotify-ad-blocker-...)... Actually, if you're familiar with web tech, it's not that hard to write your own ad blocker, then you're not dependent on the extension provider updating it when Spotify changes the names of the HTML elements again. But I'm confident they are already working on a WASM/canvas-based version which would make such attempts much harder.
- paulcole 3y ago[flagged]
- panxyh 3y agoWinamp had it right.
- thesuitonym 3y ago
- oneeyedpigeon 3y agoThe only thing I really want is for albums to never shuffle. The number of times I've started listening to an album in shuffle-mode unintentionally, then only realised by the 3rd track that plays, by which time the playthrough is ruined and I have to just listen to a different album altogether...
- king_geedorah 3y agoMore than a few times I’ve wished that starting the first track of an album from that album’s page would automatically turn off shuffle if I had it on. Would be a nice setting to have at least.
- nzoschke 3y agoNo code or pseudocode for the algorithm? Boo. Something like this would be nice to add to my app JukeLab that turns your tablet into a jukebox, powered by Spotify. It currently uses Fisher Yates to shuffle for auto play which does feel weird sometime. Other polish I’m working on in the app… How to skip skits and interviews during autoplay. Removing (remastered) etc from album and song names correctly. Taking total control over playback and the queue through the Spotify SDK which is buggy and hostile wrt auto playing unwanted tracks. https://jukelab.com https://jukelab.com
- TheJuli 3y agoThis is simply is not true. Their "random" algorithm prefers cached songs on the device by quite a margin. I have playlists with more than 500-600 songs in them and can account for it first hand, since I know the songs in the playlist and some seem to never show up. Do not believe me? Simply clean spotify's cache and look closely at somehow magically new songs start popping up in the shuffle!
- hasbot 3y agoI implemented this a bunch of years ago in a fork of a SubSonic client. Their explanation wasn't sufficient to implement the algorithm but I did figure it out. I did like it. I stopped using SubSonic and now just use the simplistic shuffle in my media player. It's weird that I'm slightly annoyed when two songs from the same artist are played in proximity.
- mihaic 3y agoHonestly, I really dislike that I can't get Spotify to actually randomize my playlist. I actually want to rediscover some old song that I liked, but it keeps giving me the most recent songs way too much. I understand that you need to make something that the average user perceives as random, but please give me some control in the advanced settings, it's literally one of the few things I want to control.
- Kuinox 3y agoSpotify random isn't well distributed at all, I always listen to my playlist in random mode and I almost never get a good chunks of tracks. Using something like last.fm I can clearly see some tracks get hundred of play, while some never get a single one.
- javier_e06 3y agoI took statistics in college and I was a bad at it. So, the coin-lunch reference in the article would have make me raise my hand and ask: Would not be the case that if a coin toss gives me eagle 1k times in a row, there is something wrong with the coin toss? I know the chance if 50/50. The only way to prove it is by testing it. If a casino has now winners for one year and the regulators say that their tables are legit, well, something is rotten in Denmark.
- helsinkiandrew 3y agoI used to have a Turtle Beach AudioTron [1] (hardware device to store and play audio files to HIFI amp). Device was terrific (for its time) but the shuffle/random play was slightly off - occasionally you'd get deja vu whilst listening to an artist on shuffle - that completely spoilt the device for me, rather than listening to the music I was listening for the next repeat/pattern. [1] https://en.wikipedia.org/wiki/AudioTron https://en.wikipedia.org/wiki/AudioTron
- neilobremski 3y agoAny shuffle algorithm is fine but the problem is Spotify's brainlessness: it routinely plays songs it just played. If you are any long-term user then you have playlists of hundreds of songs and my guess is that you haven't heard some of those songs in ages which means ... the FEATURE IS BROKEN. I'd prefer a weighted shuffle based on the staleness of a song in a playlist. That way you eventually get through all of the music but in a pseudo-random order.
- jerf 3y agoI once implemented an algorithm that went the entire different direction, because I wanted to shuffle across my entire collection. This is back in the era of the filesystem being the main driver, so I had my files arranged in [Very Broad Genre]/[Artist]/[Album], and what my algorithm did was that when it came time to pick, it picked something out of the current album with ~80% probability, kept the artist but switched album with like ~10%, and switched the genre entirely with ~10%. It also excluded the last N songs played, with that number generally larger than the number of songs in one album, so if it shuffled its way through one album it would be forced to jump up at least one level. The last few albums were also kept in the block list, so if it left one album it wouldn't go back to it for a while. (Genres I didn't worry about so much.) The idea is that it was random, but that it tended to keep the same mood, and once it did switch, it would tend to stay in that mood for a while. (I suppose I would have also made it sticky once it did switch genres, but I didn't get to use it for long enough to matter.) This also trivially gives you three "No, not this, go to next" buttons, one for the album level, one for the artist level, and one to switch out the genre entirely. Unfortunately, I have not had time to pour over the mp3 players around to see who has pluggable shuffle algorithms exposed conveniently enough to make this work, and unfortunately it's a lot of work to tag MP3s enough to make this work since those "genre" tags are generally pretty bad, so I haven't had this in a while and I've gotten used to just manually curating my genre mood shifts. I don't like any of the cloud service shufflers I've used, though. They are concerned about aspects of the song I'm not and oblivious to the ones I do care about and the net effect is about like listening to a radio station, where I end disliking every third song or so no matter how I tune it. Fortunately, I've been building my personal MP3 collection for over 20 years so I'm not even remotely dependent on them.