MP3 dosyalarımı başlık ve sanatçı tekrarını önleyecek şekilde sıralamak için sözde kod önerileri arıyorum . Frank Sinatra, Tony Bennett, Ella Fitzgerald gibi eski standartları söyleyen şarkıları dinliyorum. Her sanatçı aynı şarkıların birçoğunu kaydeder - Beni Aya Aya Uçur, Bu Gece Baktığınız Yol, Stardust vs. Eğer 2000 şarkım varsa ve 20'si Ella ise, onu her 100 şarkıda bir kez duymak isterim. 10 sanatçı şarkı söylerse Fly Me To The Moon şarkılarını her 200 şarkıda da duymak isterim. Tabii ki "nihai karıştırmam" ı oluşturmak için bu iki gereksinimi birleştirmek istiyorum.
Bunun oldukça geniş bir soru olduğunu biliyorum. Programlamaya henüz başlamadım, bu yüzden almam gereken iyi bir yaklaşımın önerilerini arıyorum. Aslında diğer şarkı özniteliklerini eşit aralıklarla yerleştirmekle ilgili başka gereksinimlerim var ancak bu konuya girmeyeceğim.
Başlangıç noktası olarak kod değiştiriyorum, mp3 dosyalarını değiştirmek ve ID3 etiketlerini okumak için burada buldum .
Aşağıdaki parsifal'in cevabını kullanarak ihtiyacımı karşılayan küçük bir uygulama yazdım. Ayrıca buraya bir takip sorusu da yazdım . Tüm büyük tepkiler için teşekkürler!
while (length(songs) > 0) { x := rand(); addElem(shuffle, songs[x]); remElem(songs, x); }
ama siz "nihai bir karıştırma" istediğinizi söylüyorsunuz. Bununla gerçekten ne istediğini bilmiyorum, soruyu okumak bile ...