Muzibu Kimlere Hizmet Veriyor?
Bu bir bireysel muzik uygulamasi degil. B2B isletme platformu.
Kritik Gercek: Cihazlar Kotu, Ses Sistemi Iyi
Isletmelerin Cihazlari
- Eski Android tabletler (2-3 GB RAM)
- Ucuz cep telefonlari
- Eski donanim Windows ekranlar
- Kasadaki eski bilgisayar
Ama Ses Sistemi
- Profesyonel tavan hoparloru
- Amfi + kolonsuz sistem
- 128kbps fark edilir!
- Orijinal kalite (320k) sart
Sonuc: Cihaz kotu diye kaliteden odun veremeyiz.
Muzik ses sisteminden cikiyor — 128kbps profesyonel hoparlorde duyulur. Orijinal MP3 (320k) sart.
Iki Farkli Dinleme Sekli
Sarkılar iki sekilde dinlenebilir. Isletme hangisini dinledigini bilmez, sunucu sessizce karar verir.
HLS
PC & Guclu Cihazlar
- Internete gore kalite otomatik ayarlanir
- 4 kalite seviyesi (ultralow → original)
- Sifreli — kopyalanamaz (AES-128)
- 4sn segment = donma yok
MP3 Orijinal
Mobil & Tablet (Soft Mode)
- Tek dosya, tek istek — basit ve hafif
- Islemci neredeyse hic calismaz
- HLS kutuphanesi yuklenmez (140 KB tasarruf)
- Orijinal kalite — ses sisteminden iyi duyulur
Neden 128k Degil? Orijinal MP3 Neden?
v1'de "128k yeterli, telefon hoparloru fark etmez" demistik. Ama durum degisti:
v1'deki Yanlis Varsayim
"Kotu cihaz = telefon hoparloru, 128k yeter."
Bu bireysel kullanim icin dogru. Ama Muzibu bireysel degil.
v2 Gercek Durum
"Kotu cihaz + profesyonel ses sistemi. 128k yetmez!"
Isletme eski tabletinden kontrol eder, ama ses amfiden cikar.
Ses Sistemi + Kalite Iliskisi
kalite farki duyulur
varken neden?
en iyi kalite
128k MP3 hala sunucuda kalir — admin zorlama veya acil bant genisligi tasarrufu icin
Nasil Calisiyor? (Sunucu Tarafli Tespit)
v1'de "tarayici cihazi olcsun" diyorduk. v2'de sunucu karar veriyor — daha guvenilir, daha basit.
v1 Yaklasimi (Iptal Edildi)
- Frontend JavaScript ile RAM/CPU olc
- Sonucu localStorage'a yaz
- API'ye "ben zayifim" gondir
- Sorun: JavaScript manipule edilebilir, guvenilmez
v2 Yaklasimi (Aktif)
- Sunucu User-Agent'tan cihazi tespit eder
jenssegers/agentpaketi (zaten yuklu)- Mobil/Tablet → MP3 Orijinal
- Avantaj: Kullanici mudahale edemez, sunucu karar verir
Teknik: resolveAudioFormat() Karar Zinciri
Gercek Hayat Senaryolari
Isletmelerde karsilasilan durumlar ve sistem ne yapar:
Kafe senaryosu: Eski Android tablet kasanin yaninda, muzik tavan hoparlorundan. HLS tableti yorar, MP3 orijinal = tam kalite + sifir donma.
Ofis/lobi senaryosu: Bilgisayar var, internet stabil. En iyi deneyim — adaptif kalite, sifreli icerik.
Windows = PC olarak algilanir → HLS. Eski donanimda yavaslama olursa admin o kullaniciya MP3 atayabilir.
En kotu senaryo. MP3 320k = ~2.4 MB/dk. 3G'de bile akar. Donma yok, ses sistemi kaliteli duyar.
Karar Agaci: Sunucu Nasil Karar Veriyor?
Yukaridan asagiya, ilk eslesen kural gecerli. Tum karar sunucuda verilir.
Admin bu kullaniciya format atamis mi?
AKTIFAdmin panelden "Bu isletmeye MP3 ver" denebilir. Denmisse tartisma yok, o gecerli.
Kurumsal hesap mi? (50+ kisi)
AKTIFSirket hesabinda 50'den fazla kisi varsa hepsi MP3'e yonlendirilir. Sunucu maliyeti duser.
Mobil veya Tablet mi? (User-Agent)
AKTIFSunucu User-Agent basligini okur. Kullanici hicbir sey yapmaz, fark etmez bile.
Android, iPhone, iPad...
Windows, Mac, Linux
Hicbiri → HLS (Varsayilan)
PC, kurumsal degil, admin karismamis → en iyi deneyim, adaptif kalite, sifreli.
Admin Paneli
Bir isletme "donuyor" dedi. Admin ne yapacak?
Kullanici Duzenle Sayfasi
"Donuyor" derlerse → MP3 sec, kaydet. O isletme hangi cihazdan girerse girsin MP3 dinler. Kalite dusmez (orijinal).
HLS Segment Suresi
HLS'te sarkilar kucuk parcalara (segment) bolunur. Her parca ayri ayri indirilir.
Karar: Tum Kaliteler 4 Saniye
Yeni Sarki Yuklenince Ne Olur?
Admin panelden sarki yuklendiginde otomatik olarak sunlar uretilir:
Tum bunlar arkaplanda calisir. Admin sadece MP3 yukler, gerisini sistem halleder.
v1'den v2'ye Neler Degisti?
Isletmeler ses sisteminden dinliyor. 128kbps profesyonel hoparlorde yetersiz. Orijinal kalite sart.
localStorage + JavaScript yerine sunucuda jenssegers/agent ile User-Agent analizi. Daha guvenilir, manipule edilemez.
HLS en yuksek kalite seviyesinin adi "high" idi, "original" olarak degistirildi (anlamli isimlendirme).
B2B platform oldugu, isletmelerin kotu cihaz + iyi ses sistemi kullandigi netlestirildi.
Yeni sarkilarda tum kaliteler 4sn segment ile uretilecek. Hizli ABR gecisi, donma riski sifir.
Mevcut Durum
Tamamlanan Isler
Kalan Isler
SongStreamController, player-core.js, performance-debug.js, AddHlsVariantsCommand
Mevcut high segmentler 6sn → hepsini 4sn olarak yeniden olustur + master.m3u8 guncelle
HLS.js'de "after key load, decryptdata unset or changed" hatasi. 3 kok neden tespit edildi, arastirma devam ediyor.
Mobil User-Agent ile istek atildiginda orijinal MP3'in dogru sunuldugunu dogrula