Перейти к содержанию

Формат файлов *.m3u (*.m3u8)

Формат применяется для составления мультимедиа плейлистов, как оффлайн, так и онлайн.

Разница между m3u и m3u8 уже давно отсутствует, но исторически так сложилось, то m3u8 должен был быть только в формате UTF-8.

Директивы начинаются с новой строки и символа #. У каждой директивы могут (не) быть атрибуты, которые следуют в одну строку.

После директив с новой строки указывается ссылка на канал (или путь к файлу).

В свою чередь, по этой ссылке может быть: * либо текстовое представление контента в формате m3u/m3u8/XMLTV/MPD с описанием непосредственно участки трансляции; * либо непосредственно сама потоковая трансляция mp4 или т. п.

Рассмотрим на выдуманном примере плейлиста IPTV:

#EXTM3U url-tvg="https://iptvx.one/EPG" catchup="append" catchup-days="3" catchup-source="?offset=-${offset}&utcstart=${timestamp}"

#EXTINF:-1 tvg-id="ntv" tvg-logo="http://epg.it999.ru/img2/2001.png",НТВ HD
#EXTGRP:🇷🇺 Эфирные
http://example.com/play-ntv.m3u

#EXTINF:-1 tvg-logo="http://tvoetv.space/tvoetv.png" tvg-id="tvoetv",Твоё ТВ HD v8 с VPN
http://example.com/play-tvoetv.m3u

#EXTINF:0 tvg-name="BBC" audio-track="eng" tvg-logo="http://mylogos.domain/BBC.png", BBC World
http://example.com/play-bbc.m3u

#EXTINF:-1 tvg-id="5TV.am" tvg-country="AM" tvg-language="Armenian" tvg-logo="https://i.imgur.com/yigw9dr.png" user-agent="Mozilla/5.0 (iPhone; CPU iPhone OS 12_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148" group-title="General",5-րդ ալիք (480p)
#EXTVLCOPT:http-user-agent=Mozilla/5.0 (iPhone; CPU iPhone OS 12_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148
#EXTVLCOPT:http-caching=1200
http://example.com/play-am.m3u8

Директива #EXTM3U

Заголовок файла (обязателен).

Атрибут url-tvg (он же x-tvg-url)

Ссылка программу передач в формате *.xml или *.xml.gz.

Атрибуты catchup*

Читай здесь: Архив телепрограмм (SS IPTV)

Директива #EXTGRP

Название группы, к которой относится контент (звуковая дорожка или канал).

Указывается в формате #EXTGRP:XXX, где: XXX -- название группы.

Директива #EXTINF

Описывает контент (звуковую дорожку или канал).

Указывается в формате #EXTINF:XXX YYY,ZZZ, где: * XXX -- длительность в секундах (обязательно, но может быть -1 или 0); * YYY -- атрибуты (см. ниже); * ZZZ -- название контента;

Атрибут tvg-shift

Cмещение телепрограммы в часах относительно указанного в программе.

Атрибуты tvg-id и tvg-name

Идентификатор телепрограммы канала. По нему телепрограмма привязывается к трансляции с учётом смещения времени.

Ссылка на логотип канала.

Атрибут tvg-country

Код Alpha-2 страны вещания согласно ISO 3166-1 или ОКСМ.

Атрибут tvg-language

Название языка телепередачи согласно ISO 639-2.

Атрибут group-title

Название группы. По функционалу идентичен директиве #EXTGRP.

Атрибут user-agent

Значение заголовка User-Agent для обращения к контенту по http.

Атрибут audio-track

Языковой код (ISO 639-2) аудио дорожки канала, например: "eng,rus".

Допускается указание нескольких аудио дорожек через запятую: "rus,ukr,eng".

Дорожкой по умолчанию устанавливается первая указанная в списке.

Атрибут aspect-ratio

Определяет пропорции экрана (может быть недоступно для некоторых моделей телевизоров).

Допустимые значения: 16:9, 3:2, 4:3, 1,85:1, 2,39:1 (наиболее распространенное значение для фильмов)

Директива #EXTVLCOPT

Специфична для VLC Player. Директив может быть множество для одной дорожки (канала).

Указывается в формате #EXTVLCOPT:XXX или #EXTVLCOPT--XXX=YYY, где: * XXX -- параметр командной строки VLC Player (полный список); * YYY -- значения параметра.

Дополнительные материалы