Distributed (instead of Shuffled) in Playlists

Any ideas about how to improve MediaMonkey? Let us know!

Moderator: Gurus

Posts: 30
Joined: Wed Apr 04, 2007 7:51 pm
Location: Indiana, USA

Distributed (instead of Shuffled) in Playlists

Post by greggw » Sun Apr 08, 2007 8:37 pm

I would like to suggest adding the option to create a playlist where artists (or albums) would be distributed instead of shuffled randomly. I think many people who use music players are disappointed when they hear the same artist (or songs from the same album) close together in a playlist that has been shuffled. It's human nature to blame the list (or the music player) for not being "random".

I'm new to MediaMonkey, so I apologize if this has already been discussed. I performed a search and found at least two topics related to my idea:


When music listeners ask for a shuffled playlist, I think what they really want is a playlist where songs from the same artist (or album) are distributed in a random manner throughout the playlist.

Here's what I mean: Imagine a playlist with 100 songs. Of the 100 songs, 10 are by the same artist. A distributed playlist would contain a song by that artist, on average, every tenth song. There would be some randomness -- the songs by that artist would appear in a random order and there might be 9 or 11 songs in between songs by the artist, but you wouldn't get two songs in a row by the same artist.

A playlist created in this manner might be distributed by artist or by album. In other words, you could avoid having consecutive songs by the same artist or from the same album.

I picture the algorithm for creating distributed playlists to work something like this:

Let's say you want to create a playlist from 100 songs and you want them distributed by artist. On one piece of paper, you list song tracks grouped together by artist. On another piece of paper, you number playlist slots from 1 to 100. Starting with the artist with the most songs, pick a random starting spot in your playlist and randomly pick one song by that artist to fill-in that spot. Take the total number of songs in the playlist (in this example, 100) and divide it by the number of songs by the artist (let's say 8). Advance that number of slots (12.5) in your playlist -- give or take 1 slot. Continue to fill-in empty slots with songs by the most frequent artist. When you reach the end of your playlist (slot 100), wrap around to the beginning (slot 1).

Continue this process with each artist in descending order for the number of songs by that artist. Occasionally, there will be a collision -- a playlist slot will already be filled. Just fill-in the slot before or after. This adds an element of randomness so that you won't always hear two artists with consecutive songs while playing your list.

Eventually, you'll reach the artists who have only one or two songs in your playlist. These songs will fill-in the gaps between the artists with more songs.

The end result would be a playlist with artists distributed evenly (with some randomness) throughout the playlist.

I apologize for the lengthy nature of this post.
Gregg W

Posts: 328
Joined: Tue Oct 11, 2005 1:20 pm

Post by gab » Wed Apr 11, 2007 5:31 pm

I would also appreciate this feature as well. For me the issue is that I have certain artists with a higher % of higher rated tracks (ie. artists that I like the most). However in a random playlist of highly rated tracks, I'd like as much gap between tracks by the same artist as possible.

Posts: 11670
Joined: Tue Jun 10, 2003 7:21 pm
Location: Serbia

Post by Peke » Wed Apr 11, 2007 6:52 pm

All that Can be made thrum Scripting and good Math thinking, but it would be rather slow and powerfull. Good Radio Stations here in Serbia forces no Artist repeat for 4 hours at least.
Best regards,
MediaMonkey Team lead QA/Tech Support guru
Admin of Free MediaMonkey addon Site HappyMonkeying
How to add SCREENSHOTS to forum

Posts: 14153
Joined: Sat Oct 25, 2003 7:57 am
Location: (Texas)

Post by rovingcowboy » Thu Apr 12, 2007 1:40 am

that sounds good but i don't mind hearing the same artist in a row. what i can't stand is to hear the same song in a row.

that bugs the c.... out of me. :( even more so when i have over 120 hours of music on the playlist for it to pick randomly.

but my system is such now that i have it down to once or twice a day that the same song is played in a row.

don't get me wrong the same song by different artists is fine. 8)

but the same song by the same artist is madding.
roving cowboy / keith hall. My skins http://www.mediamonkey.com/forum/viewto ... =9&t=16724 for some help check on Monkey's helpful messages at http://www.mediamonkey.com/forum/viewto ... 4008#44008 MY SYSTEMS.1.Jukebox WinXp pro sp 3 version 3.5 gigabyte mb. 281 GHz amd athlon x2 240 built by me.) 2.WinXP pro sp3, vers 2.5.5 and vers 3.5 backup storage, shuttle 32a mb,734 MHz amd athlon put together by me.) 3.Dell demension, winxp pro sp3, mm3.5 spare jukebox.) 4.WinXp pro sp3, vers 3.5, dad's computer bought from computer store. )5. Samsung Galaxy 5 Android 5) 6. Proscan tablet Android 4.3 ) 7. amd a8-5600 apu 3.60ghz mm version 4 windows 7 pro bought from computer store.

Posts: 1
Joined: Wed Dec 02, 2015 3:27 am

Re: Distributed (instead of Shuffled) in Playlists

Post by davoid » Wed Sep 12, 2018 11:47 pm

I've been on this trip for quite awhile.
The first thing I found was the Ultra Mix plugin for the AIMP music player.
I used if for my favourite songs (5500). It did sort artists fairly evenly, but it did not do it perfectly.
The latter half of the list had some artists close together.
So, I decided to do it manually (still not finished), with Notepad Plus.
This text editor has line numbering, which you can use to 'go to' a line, etc.
So basically:
1. I use Ctrl F to search e.g. \The Beatles\ to determine the total number of songs
2. Divide 5500 (total) by songs (180) to get 30. This is the interval number.
3. Search from beginning of file to find first instance (if using a randomized list- in my case an Ultra Mix(ed) file).
4. Search for next instance.
5. Cut the line to copyboard.
6. Use Ctrl G to 'go to' the interval plus the first instance line number, e.g. first = 25. 25 + 30 = 55.
And on and on...it is quite laborious.

Today I found a program called Non Recurrent Shuffler, or: NRS.exe found here:

Google search: non recurrent shuffler

see entry for Github - Herg Blerg

You drag a playlist (create a copy as it will be overwritten), onto the EXE file, and it reorders it evenly by artist. I haven't had a chance to try it yet as I'm on a Chromebook, and it's written for Windows.

Anyway, I hope this info helps the other music tragics like myself :D

Post Reply