"M3U" terimini duydun ama okuduğun açıklamalar doğrudan MIME tiplerine ve genişletilmiş özniteliklere atladıysa, istediğin versiyon bu. M3U, medya URL'lerinden oluşan bir liste içeren düz metin bir dosyadır. Tüm kavram bu. Geri kalanı ayrıntı.

Bu yazı, içinde gerçekte ne olduğunu, "M3U" ile "M3U8" ile "genişletilmiş M3U"yu birbirinden ayıran şeyi ve her IPTV sağlayıcısının neden bu biçimi kullandığını açıyor.

Mümkün olan en basit M3U

İşte tüm biçim üç satırda:

#EXTM3U
#EXTINF:-1,Big Buck Bunny
https://example.com/bunny.mp4

Bir başlık (#EXTM3U), bir kanal kaydı (URL'yi takip eden bir #EXTINF satırı), bitti. M3U'yu destekleyen herhangi bir medya oynatıcı bu üç satırı okuyup "Big Buck Bunny"yi oynatmayı önerir. Yukarıdaki örneği test.m3u olarak kaydedip çift tıklayabilirsin, VLC bunu oynatır. Derleyici yok, kodlama yok, şema doğrulayıcı yok. Bir alışveriş listesinin biçim eşdeğeri.

#EXTINF gerçekte ne içerir

Gerçek dünyadaki bir IPTV oynatma listesindeki her kanal daha çok şöyle görünür:

#EXTINF:-1 tvg-id="bbc1.uk" tvg-logo="https://logos.example/bbc1.png" group-title="UK",BBC One HD
http://provider.example/live/abc123/index.m3u8

Parçalar:

  • -1 — saniye cinsinden süre. Canlı kanallar için her zaman -1'dir ("bilinmiyor / sınırsız" anlamında). VOD kayıtları buraya gerçek bir süre koyar.
  • tvg-id — bu kanalı elektronik program rehberi kayıtlarıyla eşleştirmek için kullanılan bir tanımlayıcı. EPG dosyası <channel id="bbc1.uk"> listeliyorsa, IPTV oynatıcı listelerin bu kanala ait olduğunu bilir.
  • tvg-logo — kanalın logosuna bir URL. İsteğe bağlıdır; eksikse oynatıcı yer tutucu gösterir.
  • group-title — bu kanalın oynatıcıda göründüğü kategori. Geleneksel isimler: "UK", "Sports", "Movies", "News".
  • BBC One HD — virgülden sonraki her şey, görüntülendiği şekliyle kanal adıdır.

Bir sonraki satırda gerçek yayın olan URL de var. Genellikle bir HLS oynatma listesidir (.m3u8 ile biten) veya bir TS yayını (.ts ile biten).

Gerçek bir sağlayıcının oynatma listesi, bunlardan binlercesinin üst üste yığılmasıdır.

"M3U8" ne demek

M3U8, UTF-8 olarak kodlanmış aynı biçimdir. .m3u8 uzantısı, orijinal M3U spesifikasyonunun Latin-1 veya yerel kod sayfaları varsaymasından dolayı vardı; bunlar Arapça, Kiril veya Asya kanal adlarını temsil edemiyordu. M3U8 bunu çözdü.

Modern IPTV'de pratikte her şey M3U8'dir, dosya .m3u olarak adlandırılmış olsa bile. Onları eş anlamlı say.

"M3U URL"si nedir

Bir IPTV sağlayıcısı sana şöyle bir URL gönderdiğinde:

http://provider.example:8080/get.php?username=ABC&password=XYZ&type=m3u_plus

O URL, getirdiğinde bir M3U dosyası döner. Sağlayıcı, kimlik bilgilerin gömülmüş halde dosyayı anlık olarak oluşturur. Dosyanın kendisi yukarıda anlatılan aynı düz metin biçimidir — sadece ek olarak e-postayla gönderilmek yerine HTTP üzerinden teslim edilir.

Sağlayıcının ne gönderdiğini tam olarak görmek istersen, URL'yi bir tarayıcıya yapıştır. Çoğu tarayıcı ham metni gösterir. (Görüntülemek yerine indirirlerse, indirilen dosyayı bir metin editöründe aç.)

İçe aktarmadan önce bir oynatma listesi nasıl doğrulanır

IPTV'de yeniysen en yararlı beceri: oynatma listesinin çalıştığını bir uygulamaya içe aktarmadan önce kontrol et. Bu sitedeki ücretsiz M3U oynatma listesi test aracı URL'yi alır, dosyayı getirir, kanal listesini ayrıştırır ve ilk 100 yayını paralel olarak yoklar. Kaç tanesinin çözüldüğünü söyler. Cevap "sıfır" ise sağlayıcın bozuktur; oynatıcıya zaman harcama.

M3U biçimi o kadar açık ki — herhangi bir şey kurmadan tüm boru hattını birkaç saniyede doğrulayabilirsin.

M3U URL'si için bir giriş alanıyla 'Oynatma listeni ekle' istemini gösteren bir telefon ekranı.

Pratikte M3U içe aktarmak tek bir yapıştırmadır — ayrıştırmanın geri kalanını oynatıcı halleder.

Sağlayıcılar neden M3U kullanır

Biçim 25 yaşından büyük ve orijinal olarak Winamp'taki MP3 oynatma listeleri için tasarlanmıştı. İki nedenle hayatta kaldı: oluşturması çok kolay (herhangi bir arka uç birkaç bin #EXTINF satırını birleştirebilir) ve şimdiye kadar yazılmış her medya oynatıcı onu okuyabilir. Gerçek bir alternatifi yok. Denemeler oldu — JSPF, XSPF — ama hiçbiri tutmadı.

Bugün bir oynatıcı geliştiriyorsan M3U'yu destekliyorsundur çünkü herkes M3U gönderiyor. Sağlayıcıysan M3U gönderiyorsundur çünkü her oynatıcı onu okuyor. Biçim gitmeyecek.

Bir M3U'yu kendin düzenlemek

Düz metin olduğu için, bir oynatma listesini herhangi bir metin editörüyle düzenleyebilirsin. Yaygın nedenler:

  • İzlemeyeceğin kanalları kaldır — sağlayıcın 80 ülkede 5.000 kanal veriyor, sen sadece 200 tanesini izliyorsun. Daha ince bir dosya kaydet.
  • Yeniden kategorize et — birleştirmek için group-title="UK Sports"'u group-title="Sports" olarak değiştir.
  • Bozuk logoları düzelt — eskimiş tvg-logo URL'lerini çalışanlarla değiştir.
  • Sağlayıcıları birleştir — iki M3U dosyasındaki kanalları tek bir dosyaya yapıştır. Çoğu oynatıcı bunu sorunsuz okur.

Düzenlenen dosya orijinalle aynı şekilde çalışır. Yerel olarak my-playlist.m3u şeklinde kaydet, sonra oynatıcını dosyaya (URL'ye değil) yönlendir.

Ne değildir

Bir M3U şu değildir:

  • Bir video dosyası. Videoya yönelik bir işaretçiler listesidir.
  • Bir protokol. Bir dosya biçimidir. İşaret ettiği yayınlar herhangi bir protokol kullanabilir.
  • Korsan kanalları çalışır hale getirmenin bir yolu. M3U sadece metindir; önemli olan içindeki URL'lerin çalışıp çalışmadığı ve bu URL'lerin arkasındaki yayınların yasal olarak yayınlanıp yayınlanmadığıdır.

"URL'leri listeleyen bir metin dosyası"nı anladıysan, M3U'yu anladın. Geri kalanı oynatıcı ve sunucudur. Daha geniş resim için sade dilde IPTV rehberimize bak; sağlayıcının sunabileceği alternatif biçim için Xtream Codes ile M3U'ya bak.