M3U
Текстовий файл без відео, і те, що насправді є підпискою IPTV.
M3U — це звичайний текстовий список медіа-адрес із прикріпленими іменами. Він узагалі не містить ні звуку, ні відео. Коли провайдер IPTV продає тобі підписку, ти отримуєш посилання саме на такий список — назви каналів, логотипи, групи й адреси потоків, які плеєр перетворює на телепрограму.
30 липня 2026 р.
Відкривається без сторонньої допомоги в
Ніщо в 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 мілісекунд на пошук по всьому списку. Ці цифри цікаві лише тому, що наївний підхід у принципі не здатен їх показати.
Як цим користуватися
- Додавати як URL, а не як файл
Провайдери оновлюють свої списки — канали переїжджають, адреси змінюються. Плеєр, що зберігає URL, може оновити дані; плеєр, що зберігає одного разу завантажену копію, застаріває вже після першої ж зміни.
- Заздалегідь змиритися з хаосом у групах і користуватися пошуком
Назви категорій надходять від провайдера й не підпорядковуються жодній угоді. У великому списку знайти канал пошуком швидше, ніж дістатися до нього навігацією, — за умови, що застосунок шукає по базі даних, а не по завантаженому в пам’ять масиву.
- Пам’ятати, що список — це не контент
M3U — це просто адреси. Чи законно дивитися те, на що вони вказують, — питання до провайдера, а не до файлу чи плеєра. Жоден застосунок не постачає канали сам і не може поручитися за список, який надав ти.
Питання про цей формат
Звідки ці факти
Суміжні формати
Твоя бібліотека нарешті в одному місці.
Безкоштовно для завантаження. Жодного акаунту, жодної реєстрації, нічого передавати.