Плейлист плейлист IPTV

M3U

Текстовый файл без единого видео внутри, и есть то, чем на самом деле является подписка IPTV.

Коротко

M3U — это обычный текстовый список медиа-адресов с прикреплёнными именами. Он вообще не содержит ни звука, ни видео. Когда провайдер IPTV продаёт тебе подписку, ты получаешь ссылку именно на такой список — названия каналов, логотипы, группы и адреса потоков, которые плеер превращает в телепрограмму.

30 июля 2026 г.

Открывается без посторонней помощи в

iPhone · iPad Не открывает
Mac Не открывает
FoxDL Открывает

Ничто в iOS или macOS не читает M3U как плейлист. Нажатие на такой файл покажет стену текста. Это не медиаформат, и ни одна система никогда не собиралась воспринимать его как таковой — нужно приложение, которое понимает, для *чего* нужен этот список.

Факты

Полное название MP3 URL, или Moving Picture Experts Group Audio Layer 3 Uniform Resource Locator
Тип Плейлист — список адресов, без медиа
Расширения .m3u (любая текстовая кодировка), .m3u8 (UTF-8)
Опубликован Конец 1990-х, компанией Fraunhofer для Winamp; никогда формально не стандартизировался
Структура Строка #EXTINF, называющая каждую запись, за ней — её адрес
Расширения для IPTV tvg-id, tvg-name, tvg-logo, group-title — добавлены по договорённости, а не по спецификации
На что указывают адреса Обычно на плейлисты HLS или потоки MPEG-TS; иногда на обычные файлы
Типичный размер у провайдера От нескольких сотен КБ до заметно больше 200 МБ для списков в сотни тысяч каналов

Список имён и адресов

Формат настолько прост, насколько формат вообще может быть. Каждая запись — это две строки: одна начинается с #EXTINF и называет объект, другая содержит его адрес. Всё остальное — логотипы, номера каналов, группы, превращающиеся в категории в плеере — появилось позже как атрибуты, которые люди договорились помещать в строку #EXTINF. Ни один орган по стандартизации ничего из этого не утверждал.

Именно из-за этой неформальности файлы M3U так сильно различаются между собой. Один провайдер пишет group-title="Sports", другой — group-title="СПОРТ", третий вообще опускает это поле и рассчитывает, что плеер сам догадается. Плеер, хорошо справляющийся с IPTV, — это в основном плеер, повидавший множество плохо написанных файлов M3U.

Стоит прояснить путаницу с M3U8: 8 здесь означает всего лишь кодировку текста UTF-8, ничего больше. Каждый плейлист HLS — это M3U8, но не каждый M3U8 — это HLS: список каналов IPTV, сохранённый в UTF-8, тоже является файлом .m3u8 и не имеет никакого отношения к сегментированному стримингу.

Почему вся проблема в размере

Списки провайдеров выросли так, как формат никогда не предполагал. Файл, который в 2010 году состоял из нескольких сотен строк, у крупного провайдера сегодня насчитывает сотни тысяч записей и сотни мегабайт текста.

Наивный способ его прочитать — загрузить файл целиком в память, разобрать, держать результат в памяти — ломается задолго до завершения. Разбор списка на 200 МБ таким образом означает всплеск потребления памяти, который iPhone не потерпит, а iOS завершит приложение вместо того, чтобы ждать. Именно поэтому так много IPTV-приложений просто вылетает на списке крупного провайдера.

Работающий подход — вообще никогда не держать список целиком в памяти: читать его с диска по частям, записывать каждый канал сразу в базу данных по мере разбора, а экран подгружать постранично из этой базы. FoxDL проверялся на списке в 485 МБ с двумя миллионами каналов — 123 секунды на импорт, 9 МБ дополнительной памяти, 4 миллисекунды на отрисовку первой страницы, 400 миллисекунд на поиск по всему списку. Эти цифры интересны только потому, что наивный подход в принципе не способен их показать.

Как этим пользоваться

  1. Добавляй как URL, а не как файл

    Провайдеры обновляют свои списки — каналы переезжают, адреса меняются. Плеер, хранящий URL, может обновить данные; плеер, хранящий однажды скачанную копию, устаревает при первом же изменении.

  2. Заранее смирись с хаосом в группах и пользуйся поиском

    Названия категорий приходят от провайдера и не следуют никакому соглашению. В большом списке найти канал поиском быстрее, чем добраться до него навигацией, — при условии, что приложение ищет по базе данных, а не по загруженному в память массиву.

  3. Помни, что список — это не контент

    M3U — это просто адреса. Законно ли смотреть то, на что они указывают, — вопрос к провайдеру, а не к файлу или плееру. Ни одно приложение не поставляет каналы само и не может поручиться за список, который предоставил ты.

Полная версия M3U, Xtream Codes, EPG: что означают эти слова и что есть у тебя M3U или Xtream, что нужно для работы EPG, из-за чего возникает буферизация и кто может это исправить.

Вопросы об этом формате

Как добавить плейлист M3U в FoxDL? Открой «Источники», выбери добавление плейлиста и вставь URL M3U или M3U8, который дал провайдер, — или выбери файл .m3u из «Файлов» или Finder. FoxDL разбирает его один раз, сохраняет каналы локально, и список готов к просмотру и поиску. Справится ли FoxDL с плейлистом на миллионы каналов? Да. Импорт протестирован на плейлисте из 2 000 000 каналов размером около 485 МБ: он завершается примерно за две минуты и поднимает пиковое потребление памяти примерно на 9 МБ, потому что плейлист пишется на диск потоком, а не читается целиком в память, и фиксируется одной транзакцией базы данных. Предоставляет ли FoxDL каналы IPTV, фильмы или потоки? Нет. FoxDL не предоставляет, не размещает и не поставляет вообще никакого контента — вместе с приложением не идёт ни один канал, фильм или поток, и оно не продаёт подписок. Это плеер для контента, который ты добавляешь сам от сервиса, на который законно подписан, и ты сам за этот контент отвечаешь.

Откуда эти факты

Похожие форматы

Твоя библиотека — наконец в одном месте.

Скачать бесплатно. Без аккаунта, без регистрации, без данных, которые нужно кому-то передавать.

Загрузите в App Store