Loading Guard Timeout Analizi + Çözüm
Müzik platformunda bir şarkı çalmaya çalışınca 8 saniye bekleme sonrası "yüklenemedi" hatası alındı. Araştırdık ve 3 farklı sorun bulduk:
Şarkı kalite seviyeleri "original" olarak etiketlenmişti. "high" olması gerekiyordu. 511 şarkının tamamında bu sorun vardı.
Farklı kalitelerdeki şarkı dosyalarına erişim yolları (route) tanımlı değildi. Sistem sadece tek kalitede çalabiliyordu.
Ana sunucuda şu an şarkılar çevriliyor. Aynı hatalı kod orada da çalışıyor — orada da düzeltilmeli.
| Dosya | Satır | Değişiklik |
|---|---|---|
app/Services/Muzibu/HLSService.php | 628 | NAME="original" → NAME="high" |
app/Services/Muzibu/HLSService.php | 847 | $variants[] = 'original' → 'high' |
Modules/Muzibu/Providers/MuzibuServiceProvider.php (satır 331)
master.m3u8 404low/playlist.m3u8 404ultralow/segment-000.ts 404master.m3u8 200low/playlist.m3u8 200ultralow/segment-000.ts 200Şarkı: ID 34541 ("iz") — HLS dosyaları mevcut, playlist.m3u8 erişilebilir (200 OK)
Muhtemel Sebep: Geçici ağ/tarayıcı gecikmesi (cold cache veya ilk yükleme). Kalıcı bir hata değil.
Güvenlik Ağı: 8sn loading guard doğru çalışıyor — sonraki şarkıya otomatik geçiş yapıyor.
ÖNEMLİ: Production'da şu an şarkılar çevriliyor. Bu düzeltme yapılana kadar yeni çevrilen şarkılar da hatalı "original" ismiyle üretilecek.
Route düzeltmesiyle birlikte multi-variant ABR altyapısı hazır hale geldi:
Not: ABR'yi aktif etmek için API'nin master.m3u8 URL'i döndürmesi gerekir (şu an playlist.m3u8 döndürüyor). Bu değişiklik ayrı bir iş olarak planlanmalı.