Tüm Şarkıların Ses Format Durumu - tenant_muzibu_1528d0
Sistemde toplam 511 sarki var. Her sarki farkli kalitelerde dinlenebilmesi icin cesitli formatlara donusturuluyor:
HLS (Adaptive Streaming): Sarkilar parcalara bolunup sifreleniyor. Dinleyicinin internet hizina gore kalite otomatik ayarlaniyor. 4 seviye var: ultralow (cok dusuk), low (dusuk), mid (orta), high (yuksek/orijinal).
MP3 Fallback: HLS desteklemeyen cihazlar icin yedek MP3 dosyalari. 128kbps (iyi kalite) ve 64kbps (dusuk kalite) olmak uzere 2 seviye.
Neden Onemli?
muzibu/hls/34455/
├── enc.bin (16 byte AES key)
├── enc.keyinfo (FFmpeg key bilgisi)
├── master.m3u8 (ABR index)
├── playlist.m3u8 (high/orijinal)
├── segment-000.ts (~140 KB, 4sn)
├── segment-001.ts
├── ...
├── ultralow/
│ ├── enc.keyinfo
│ ├── playlist.m3u8
│ └── segment-*.ts (~18 KB)
├── low/
│ ├── enc.keyinfo
│ ├── playlist.m3u8
│ └── segment-*.ts (~35 KB)
└── mid/
├── enc.keyinfo
├── playlist.m3u8
└── segment-*.ts (~69 KB)
| Format | Bitrate | Sample | Kanal | Filtre |
|---|---|---|---|---|
| Orijinal | Degisken | Degisken | Stereo | Yok |
| MP3 128k | 128 kbps | 44.1 kHz | Stereo | 2-pass loudnorm |
| MP3 64k | 64 kbps | 22.05 kHz | Mono | 2-pass loudnorm |
| Grup | Sayi | HLS High | Ultralow | Low | Mid | Master | MP3 128k | MP3 64k | Sifreleme | ID Araligi |
|---|---|---|---|---|---|---|---|---|---|---|
| Tam Komple | 237 | 34455-34691 | ||||||||
| HLS Full + MP3 128k | 165 | 34692-34965 (kismen) | ||||||||
| Sadece HLS High | 109 | 34692-34801 | ||||||||
| TOPLAM | 511 | |||||||||
Onemli Not
109 eksik variant sarkinin tamami aktif. Bu sarkilar su anda sadece yuksek kalitede (high) sunuluyor. Dusuk bant genislikli kullanicilar icin adaptive bitrate calismayacaktir.
storage/tenant1001/app/public/muzibu/
├── songs/
│ ├── song_698203301fad4.mp3 (orijinal, 511 dosya)
│ ├── mp3_128/
│ │ └── {song_id}.mp3 (402 dosya, ~1.1 GB)
│ └── mp3_64/
│ └── {song_id}.mp3 (237 dosya, ~332 MB)
└── hls/
└── {song_id}/ (511 klasor, ~5.2 GB)
├── enc.bin (AES-128 key, 16 byte)
├── enc.keyinfo (FFmpeg key bilgisi)
├── master.m3u8 (ABR index - 402 sarkida)
├── playlist.m3u8 (high variant)
├── segment-*.ts (sifrelenmis parcalar)
├── ultralow/ (32k - 402 sarkida)
├── low/ (64k - 402 sarkida)
└── mid/ (128k - 402 sarkida)
Modules/Muzibu/App/Models/Song.phpapp/Services/Muzibu/HLSService.phpModules/Muzibu/App/Console/Commands/AddHlsVariantsCommand.phpModules/Muzibu/App/Jobs/ConvertToHLSJob.phpVeritabanindaki hls_path alaninda 3 farkli format kullaniliyor:
| Format | Sayi | Ornek |
|---|---|---|
| muzibu/hls/{id} | 237 | muzibu/hls/34455 |
| muzibu/hls/{id}/playlist.m3u8 | 165 | muzibu/hls/34800/playlist.m3u8 |
| tenant1001/muzibu/hls/{id}/playlist.m3u8 | 109 | tenant1001/muzibu/hls/34692/playlist.m3u8 |
Dikkat
3 farkli format, kodda getHlsDir() gibi metodlarda ekstra fallback mantigi gerektiriyor. Idealde tek formata normalize edilmeli.
php artisan tenants:run hls:add-variants --tenants=1001 --quality=all
php artisan tenants:run hls:add-variants --tenants=1001 --quality=all --mp3-128
php artisan tenants:run hls:add-variants --tenants=1001 --quality=all --mp3-64