Mengapa iTunes tidak acak acak?


157

Ini adalah masalah yang telah mengganggu saya selama 5 tahun terakhir, di beberapa perangkat, sistem operasi, dan pemasangan iTunes dan iPod.

Saya telah menemukan bahwa fitur iTunes shuffle tidak secara acak mengacak lagu. Bahkan, saya dapat memprediksi urutan lagu yang akan dimainkan iTunes secara akurat. Ini membuat saya frustrasi tanpa akhir karena saya suka mendengarkan musik saya secara acak, tetapi saya memiliki beberapa lagu favorit yang selalu saya mulai.

Misalnya, jika saya memilih lagu 'Seseorang yang Dulu Saya Tahu' oleh Gotye, itu akan selalu mengikuti urutan lagu yang tepat ini:

  1. Salahkan Di Tetons oleh Mouse Sederhana
  2. Girl You Have No Faith In Medicine dari The White Stripes
  3. Mombassa oleh Hans Zimmer, dari Inception Soundtrack
  4. Break of Dawn oleh Michael Jackson
  5. Kata Hilang oleh Mark Ronson dan Bisnis Internasional

Metode yang saya gunakan untuk memulai lagu tidak masalah. Saya telah mencoba memilih lagu di iTunes, mencarinya, dan memutarnya dengan Coversutra , atau mencarinya dari dalam iTunes, memainkan lagu itu dan kemudian menghapus pencarian tersebut. Ketiga metode ini akan memainkan urutan lagu yang sama persis.

Saya pikir ini mungkin karena seed yang sama digunakan, tetapi saya mendapatkan urutan yang sama setelah me-restart iTunes atau bahkan komputer saya. Urutannya sama di hari yang berbeda juga. Menunggu lagu untuk selesai atau memukul berikutnya juga tidak mengubah apa pun.

Saya memiliki masalah ini (tetapi dengan urutan yang berbeda) selama saya dapat mengingat pada PC Windows, MacBook, dan iMac saya. Semua versi iTunes dan sistem operasi yang berbeda, mencakup 5 tahun.

Mengapa iTunes gagal sangat keras dan sesuatu yang sangat mudah? Apakah ada cara saya bisa memperbaikinya?


Sudahkah Anda mencoba menggunakan iTunes DJ? Saya telah menemukan itu berfungsi lebih baik.
daviesgeek

4
Apa yang terjadi ketika Anda mematikan mode acak dan hidup lagi? Itu selalu berhasil bagi saya seperti mengocok tumpukan kartu di lain waktu. Apakah Anda berada di daftar putar normal atau sesuatu dengan "kecerdasan" seperti DJ atau daftar putar pintar?
bmike

Jawaban:


205

Versi Ringkasan

Ini adalah acak, tapi pesanan hanya dikocok sekali, ketika Anda menghidupkan pemutaran acak. Jika Anda ingin mengocok ulang urutan, matikan play acak lalu nyalakan lagi.

Versi Lengkap

Saya rasa ini bukan bug, ini fitur. Meskipun aku bisa mengerti bagaimana itu kelihatannya rusak.

iTunes tidak mengacak urutan trek setiap kali Anda menekan tombol play (atau tombol kontrol lainnya). Cara lain untuk mengatakan ini adalah: ia menggunakan seed yang sama untuk daftar putar Anda setiap kali sampai Anda mengatakannya untuk menggunakan seed lain.

Ini mungkin tampak bertentangan dengan ide shuffle tetapi sebenarnya memiliki tujuan: ini memungkinkan tombol skip back dan skip forward bekerja dengan cara yang masuk akal. Saya dapat memutar kembali 5 lagu saat diputar secara acak untuk mendengarkan lagu yang saya dengar 5 lagu yang lalu, dan kemudian iTunes memutar semua lagu yang baru saja saya dengar untuk membuat saya kembali ke posisi semula sebelum kembali 5 lagu.

Saya yakin pemesanan itu benar-benar acak saat pertama kali dibuat. Masalahnya adalah tidak pernah jelas bagaimana menghasilkan kembali pemesanan setelah itu sehingga otak Anda, yang benar-benar pandai mengenali pola karena itu adalah keterampilan bertahan hidup yang berguna ketika Anda berburu dan mengumpulkan, mulai mempelajari pesanan dari waktu ke waktu. Itu mulai menemukan pola.

Anda dapat melihat ini adalah kasus dengan eksperimen kecil ini. Atur iTunes untuk mengacak seluruh perpustakaan Anda. Pilih sebuah lagu. Mainkan 5 trek dan tuliskan. Sekarang pilih lagu lain dan biarkan iTunes memainkan satu atau dua lagu setelah itu. Sekarang kembali ke trek pertama Anda dan mainkan lagi dari sana. Ini akan memainkan trek itu dan lima yang sama setelah itu yang Anda tulis. Mengubah trek tidak me-reseed penghasil bilangan acak.

Traversal melalui trek Anda benar-benar acak, tetapi urutan acak itu tidak cukup sering disegarkan sehingga mulai terasa non-acak.

Jadi, bagaimana Anda mendapatkan iTunes untuk menghasilkan pesanan acak?

Anda hapus centang dan periksa kembali tombol acak. Melakukan hal ini menyebabkan iTunes membuat ulang jalur traversal acak melalui daftar putar Anda (atau seluruh perpustakaan). Ini re-seed generator nomor acak.

Anda dapat meyakinkan diri sendiri bahwa ini benar dengan sedikit eksperimen. Ambil album yang memiliki nomor trek dalam data meta dan pilih trek 1 hingga 5 lalu pilih File -> Daftar Putar Baru dari Pilihan ... dari menu. Anda sekarang akan memiliki daftar putar dengan 5 lagu di dalamnya.

Pilih daftar putar itu dan pastikan tombol shuffle tidak menyala dan nomor trek ditampilkan di jendela. iTunes akan menunjukkan trek-trek tersebut secara berurutan: 1, 2, 3, 4, 5.

Sekarang tekan tombol acak.

iTunes akan menunjukkan kepada Anda trek yang rusak. Saya mendapatkan: 4, 2, 1, 3, 5.

Sekarang tekan tombol acak untuk mematikannya. Dan nyalakan lagi.

Saya sekarang mendapatkan: 5, 2, 3, 4, 1.

Ulangi sebanyak mungkin dan perlu meyakinkan diri Anda bahwa iTunes sebenarnya membuat ulang urutan traversal acak melalui trek di daftar putar Anda.

Ini adalah hal yang sama untuk melintasi seluruh perpustakaan Anda: jika Anda tidak pernah menghapus centang dan mengecek kembali tombol shuffle, urutan tidak pernah dibuat ulang sehingga hal-hal akan mulai tampak non-acak. Setelah saya hapus centang dan periksa kembali acak dan mulai memainkan seluruh perpustakaan saya dari lagu awal asli saya dari paragraf kedua di atas, saya mendapat 5 lagu yang berbeda setelah itu kali ini. Jadi urutannya diubah, itu hanya kurang jelas ketika Anda melihat seluruh perpustakaan Anda daripada daftar putar.

Ada peringatan untuk semua ini: iTunes DJ (alias Party Shuffle) bekerja secara berbeda. Dengan Party Shuffle, Anda dapat memengaruhi pilihan sehingga ada bobot yang diberikan untuk lagu-lagu yang lebih populer di perpustakaan Anda. Ini jelas bukan pemutaran acak. Jadi jika Anda ingin pemutaran yang benar-benar acak, Anda ingin mengocok seluruh perpustakaan Anda dari tampilan Musik di bilah sisi, bukan tampilan DJ iTunes. Dan Anda ingin menghapus centang dan memeriksa kembali tombol acak sebelum setiap sesi mendengarkan agar benar-benar tidak dapat diprediksi.


15
Akhirnya jawaban yang berguna untuk pertanyaan ini! Saya tidak tahu berapa kali sudah diberhentikan begitu saja.
Bryan Matthews

2
Jawaban Anda menjelaskan mengapa saya tidak pernah mengalami ini. Pada siang hari, saya mendengarkan album yang saya pilih, mendengarkan trek secara berurutan. Ketika ada satu jam tersisa di hari kerja saya, saya beralih untuk mengacak seluruh perpustakaan saya.
Cleggy

3
Ini benar. Saya menerapkan logika Shuffle di App iPhone yang disebut "Ambiance" dan harus melakukannya dengan alasan yang sama: navigasi maju dan mundur.
coneybeare

2
Saya menyukai saat di mana Anda mengatakan "Itu mulai menemukan pola" dan itu terdengar seperti "Ini bukan masalah iTunes, itu otak Anda yang salah di sini!"
badp

2
@Bombe iTunes menghasilkan pemesanan acak dari seluruh daftar Anda, bukan hanya satu nomor. Ini memungkinkan tombol maju dan mundur berfungsi dengan cara yang masuk akal meskipun dalam mode acak. Percobaan dengan daftar putar menggambarkan hal ini.
Ian C.

19

Alasan lain mengapa iTunes hanya menghasilkan keacakan sekali adalah bahwa cara ini dapat memastikan bahwa Anda mendapatkan setiap lagu dimainkan sekali tanpa duplikat .

Jika Anda memiliki 1000 trek dalam mode acak, setelah 1.000 pemutaran Anda akan mendengarkan semuanya. Itu tidak akan berhasil jika akan secara acak memilih trek setiap kali Anda menekan tombol play atau lagu sebelumnya berakhir, Anda akan mendapatkan duplikat di beberapa titik.


1
Plus, Anda tidak akan dapat menggunakan tombol lewati / mundur dengan benar.
Timothy Mueller-Harder

9

Saya ingat pernah membaca di suatu tempat bahwa apel awalnya menggunakan keacakan benar-benar acak, tetapi orang-orang mengeluh bahwa lagu yang sama akan diputar dua atau tiga kali berturut-turut (yang Anda harapkan sebagai kepastian mengingat jumlah pengguna). Mereka dengan cepat mengubahnya dan Steve Jobs memutarnya (agak baik) menjadi "iPod sekarang kurang acak agar tampak acak" ketika ia merilis fitur.

Jadi shuffle diubah menjadi pengacakan daftar lagu setiap kali Anda memilihnya daripada mengacak lagu berikutnya - untuk menghilangkan risiko bermain ganda, tiga kali lipat, empat kali lipat dll.

Saya hanya merasa kasihan pada pria yang mencuri lagu yang sama 5 kali berturut-turut meskipun memiliki 1000 lagu di iPod-nya. Tentunya setidaknya ada satu ...


4

@Bombe dan @IanC - ada generator nomor pseudorandom yang dapat dibalik, jadi Anda hanya perlu satu nomor, bukan seluruh urutan. Pikirkan tentang itu, waktu yang dibutuhkan untuk menghasilkan urutan tidak tergantung pada ukuran koleksi musik Anda. Algoritma enkripsi menawarkan satu pendekatan, karena algoritma enkripsi apa pun yang tidak mengubah panjang input (mis. Mesin Enigma, Caesar Ciphers) akan memberi Anda nilai acak yang dapat Anda perlakukan sebagai angka, dan Anda dapat mendekripsi string apa pun untuk membalikkan urutan.

Namun, jauh lebih sederhana hanya dengan menggunakan generator kongruensier sederhana, dari bentuk:

masukkan deskripsi gambar di sini

Jika konstanta dipilih sedemikian rupa sehingga setiap nilai yang kurang dari m akan dihasilkan, ternyata ada seperangkat konstanta berbeda ', c' yang membalik urutan. Anda (atau Apple) hanya perlu menghitung set konstanta kedua sekali. Sepasang generator yang saling terbalik adalah:

masukkan deskripsi gambar di sini

Lihat di sini untuk derivasi . Anda kemudian memilih nilai awal menggunakan jam sistem Anda, dan hei presto - urutan acak reversibel.

Yang dibutuhkan hanyalah cara untuk memetakan angka dalam kisaran [0, 2 32 -1] ke lagu dalam koleksi Anda, yang cukup sederhana.

Jika shuffle benar-benar berfungsi dengan memainkan lagu dalam urutan yang sama setiap kali, (seperti yang dijelaskan oleh si penanya), maka Apple tidak mempertahankan nomor acak independen dari lagu saat ini - karena banyak angka dalam kisaran 0..2 32 -1 akan peta ke lagu yang sama dengan lagu berikutnya yang berbeda . Sebagai gantinya, mereka harus menggunakan posisi lagu dalam koleksi Anda sebagai x n , dan kemudian memetakan dari x n +1 ke posisi lagu. Ini berarti Anda akan mendapatkan efek yang dijelaskan dalam pertanyaan. Satu-satunya variasi adalah titik awal, yang akan menjadi pemetaan dari jam ke x n , kemudian menghitung x n + 1 dan memetakan itu kembali ke posisi lagu.


1
Dengan setidaknya iTunes, aplikasi wajib menunjukkan seluruh urutan angka acak yang dihasilkan untuk daftar putar atau pustaka, jadi menggunakan sesuatu yang kurang sederhana tampaknya tidak menguntungkan. Ini harus menampilkan nilai trek N penuh nilai dalam hal apapun. Dan ya, mereka menggunakan indeks lagu di koleksi Anda (atau daftar putar) sebagai nomor untuk lagu saat membuat vektor untuk menelusuri koleksi. Padahal apa yang Anda jelaskan di paragraf terakhir tidak benar. Anda mendapatkan vektor yang berbeda setiap acak. Bukan hanya titik awal yang berbeda.
Ian C.

3

Tentu saja itu tidak sepenuhnya acak. Bertahun-tahun yang lalu Steve Jobs melakukan Keynote untuk salah satu pengumuman produk utama iPod. Dia menyatakan bahwa shuffle yang benar-benar acak dapat menyejajarkan lagu yang sama dua kali atau lebih berturut-turut. Jadi mereka mengerjakan ulang shuffle agar tidak acak. Untuk satu hal ia melacak lagu sehingga satu lagu tidak akan diputar lebih dari satu kali dalam daftar putar acak. Jadi ini adalah fitur bukan bug. Diperkenalkan oleh tak lain dari Jobs sendiri.


1

Jika Anda perhatikan, ketika Anda memasukkan daftar putar untuk pertama kalinya dan memilih ikon acak, itu langsung mengocok daftar putar Anda, kemudian diputar secara berurutan.

Jika Anda secara manual mengurutkan daftar putar secara berbeda, misalnya berdasarkan artis, lalu pilih ikon acak, daftar putar Anda tidak akan bergeser secara visual, dan jika Anda mulai mendengarkan lagu tertentu, lagu itu akan melompat ke trek berikutnya secara acak ketika lagu itu berakhir, alih-alih daripada secara berurutan melalui daftar putar Anda.

Jika Anda menutup iTunes, atau mendengarkan daftar putar yang berbeda untuk sementara waktu, kemudian kembali ke yang asli, dan pilih lagu pertama yang sama, lagu berikutnya yang dimainkannya akan berbeda dari yang terakhir kali (kecuali karena suatu alasan acak pilihannya sama, tetapi ini akan terjadi dengan frekuensi yang semakin berkurang saat playlist Anda bertambah besar).


-1

CNet melakukan penelitian beberapa waktu lalu yang membuktikan bahwa iTunes Shuffle memainkan lagu-lagu oleh studio tertentu, studio yang memiliki kemitraan dengan Apple, lebih sering.

Jadi jika Anda bertanya-tanya mengapa Anda lebih sering mendengar lagu pop ###### saat menggunakan shuffle di iTunes, sekarang Anda tahu sebabnya.


Halaman itu tidak mengatakan apakah hasilnya signifikan secara statistik atau tidak. Tidak jelas bagi saya bahwa hasil mereka tidak mungkin diberikan distribusi acak sempurna.
Tanner Swett
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.