Smart Crossfade - bufferAppendError Çözümü
28 Aralık 2025 - Muzibu Player
Sorun: Müzik çalarda bir şarkıdan diğerine geçerken bazen şarkı takılıyordu veya ses kesiliyordu. Bu özellikle şarkı otomatik değişirken (crossfade) oluyordu.
Sebep: İki şarkı aynı anda yüklenmeye çalışınca "trafik kazası" gibi bir çakışma oluyordu. Sistem hangisini çalacağını bilemiyordu.
Çözüm: Artık bu çakışma olduğunda sistem "tamam, yumuşak geçiş olmadı, direkt sonraki şarkıya geçeyim" diyor. Kullanıcı farkı hissetmeden müzik devam ediyor.
🎵 Sonuç: Şarkılar artık takılmadan çalıyor!
bufferAppendError (mediaError)
HLS.js crossfade sırasında iki ayrı HLS instance oluşturuluyor. Her ikisi de aynı MediaSource buffer'a yazmaya çalışınca çakışma oluyor.
public/themes/muzibu/js/player/core/player-core.js
Satır: 1301-1358 (startCrossfade catch bloğu)
Hata olduğunda crossfade'i atla, direkt geçiş yap:
| Dosya | Senaryo | Şarkı | Satır |
|---|---|---|---|
| a-html.txt | Otomatik Crossfade | Cold Love → Saksıdaki Çiçekler | 31 |
| a-console.txt | Manuel Tıklama | Go (ID: 479) | 31, 226 |
| b-html.txt | Otomatik Crossfade | Cold Love → Saksıdaki Çiçekler | 32 |
Tüm dosyalarda aynı: bufferAppendError
Crossfade (otomatik) vs Manuel şarkı değiştirme
❌ Crossfade error: bufferAppendError
⚡ Smart Crossfade: Skipping crossfade, direct transition to next song...
🎵 Direct transition to song index: 5