M3U
İçinde hiç video olmayan bir metin dosyası; bir IPTV aboneliğinin gerçekte kendisi.
M3U, adlarıyla birlikte yazılmış medya adreslerinden oluşan düz metin bir listedir. İçinde ne ses ne görüntü vardır. Bir IPTV sağlayıcısı sana abonelik sattığında aldığın şey bunlardan birine giden bir bağlantıdır — bir oynatıcının kanal rehberine çevirdiği kanal adları, logolar, gruplar ve yayın adresleri.
30 Temmuz 2026
Kendi başına açan
iOS ya da macOS’ta bir M3U’yu liste olarak okuyan hiçbir şey yok. Dokununca karşına bir metin duvarı çıkar. Bu bir medya biçimi değil ve hiçbir sistem onu öyle saymayacaktı — listenin *ne işe yaradığını* bilen bir uygulama gerekiyor.
Künye
| Tam adı | MP3 URL — yani MPEG Audio Layer 3 Uniform Resource Locator |
|---|---|
| Türü | Oynatma listesi — adres listesi, medya değil |
| Uzantılar | .m3u (herhangi bir kodlama), .m3u8 (UTF-8) |
| Yayım | 1990’ların sonu, Winamp için Fraunhofer tarafından; hiç resmen standartlaşmadı |
| Yapı | Her girdiyi adlandıran bir #EXTINF satırı ve ardından adresi |
| IPTV eklentileri | tvg-id, tvg-name, tvg-logo, group-title — şartnameyle değil, teamülle eklendi |
| Adreslerin işaret ettiği | Genellikle HLS listeleri ya da MPEG-TS yayınları; bazen düz dosyalar |
| Tipik sağlayıcı boyutu | Birkaç yüz KB’tan, yüz binlerce kanallık listelerde 200 MB’ın epey üstüne |
Ad ve adres listesi
Biçim, bir biçimin olabileceği kadar basit. Her girdi iki satır: #EXTINF ile başlayıp adı veren biri ve adresi veren diğeri. Geri kalan her şey — logolar, kanal numaraları, oynatıcıda kategoriye dönüşen gruplar — sonradan, insanların #EXTINF satırına koymakta anlaştığı özellikler olarak geldi. Hiçbir standart kurumu bunların hiçbirini onaylamadı.
M3U dosyalarının bu kadar birbirini tutmaması da o gayriresmîlikten. Bir sağlayıcı group-title="Sports" yazar, bir başkası group-title="SPOR", üçüncüsü hiç yazmaz ve oynatıcının tahmin etmesini bekler. IPTV’yi iyi kotaran bir oynatıcı, aslında çok sayıda kötü yazılmış M3U görmüş bir oynatıcıdır.
M3U8 karışıklığını da netleştirelim: oradaki 8, UTF-8 metin kodlamasını gösterir, başka bir şeyi değil. Her HLS listesi bir M3U8’dir; ama her M3U8 HLS değildir — UTF-8 kaydedilmiş bir IPTV kanal listesi de .m3u8’dir ve parçalı yayınla hiçbir ilgisi yoktur.
Neden bütün mesele boyut
Sağlayıcı listeleri, biçimin hiç öngörmediği bir şekilde büyüdü. 2010’da birkaç yüz satır olan bir dosya, bugün büyük bir sağlayıcıda yüz binlerce girdi ve yüzlerce megabayt metin.
Bunu okumanın kolaycı yolu — dosyayı belleğe al, ayrıştır, sonucu tut — çok daha önce çöker. 200 MB’lık bir listeyi böyle ayrıştırmak, bir iPhone’un kaldıramayacağı bir bellek sıçraması demektir; iOS da beklemek yerine uygulamayı kapatır. Bu kadar çok IPTV uygulamasının büyük bir sağlayıcıda çökmesinin sebebi bu.
İşe yarayan yaklaşım listeyi hiç bellekte tutmamak: diskten parça parça oku, her kanalı ayrıştırdıkça doğrudan bir veritabanına yaz ve ekranı o veritabanından sayfala. FoxDL, iki milyon kanallık 485 MB’lık bir listeyle ölçüldü — 123 saniyede içe aktarma, 9 MB ek bellek, ilk sayfayı çizmesi 4 milisaniye, bütün listede arama 400 milisaniye. Bu sayılar yalnızca kolaycı yaklaşımın onlara hiç yaklaşamayacak olması yüzünden ilginç.
Nasıl kullanılır
- Dosya olarak değil, URL olarak ekle
Sağlayıcılar listelerini günceller — kanallar yer değiştirir, adresler döner. URL’yi tutan bir oynatıcı yenileyebilir; bir kez indirdiğin kopyayı tutan oynatıcı, ilk değişiklikte geride kalır.
- Grupların dağınık olacağını varsay, aramayı kullan
Kategori adları sağlayıcıdan gelir ve hiçbir kurala uymaz. Büyük bir listede bir kanalı aramak, ona kadar gitmekten hızlıdır — yeter ki uygulama belleğe yüklenmiş bir dizide değil, veritabanında arasın.
- Listenin içerik olmadığını unutma
M3U adreslerden ibarettir. O adreslerin izlenmesinin yasal olup olmadığı, dosyayla ya da oynatıcıyla değil sağlayıcıyla ilgili bir sorudur. Hiçbir uygulama kanal göndermez ve hiçbiri senin verdiğin bir listeye kefil olamaz.
Bu format hakkında sorulanlar
Bu bilgiler nereden geliyor
Yakın formatlar
Kütüphanen sonunda tek yerde.
İndirmesi ücretsiz. Hesap yok, kayıt yok, verecek hiçbir bilgi yok.