IPTV на iPhone: почему канал не играет
IPTV-канал на iPhone обычно не играет по одной из пяти причин: ссылка устарела, поток закрыт по стране, формат не поддерживается iOS, не хватает заголовков или сеть режет соединение. Лучше всего iPhone воспроизводит HLS. Ниже объяснено, что это такое, и дан чек-лист, как найти причину.
Скоро на iPhone
Что такое HLS и почему он важен для iPhone?
HLS (HTTP Live Streaming) — технология потокового видео, которую разработала Apple. Видео режется на короткие фрагменты, а плейлист с расширением .m3u8 говорит плееру, какие фрагменты скачать и в каком качестве. iOS умеет играть HLS системными средствами, поэтому большинство IPTV-каналов, предназначенных для телефонов, отдаются именно так. Описание технологии есть в статье Википедии про HLS.
PlayUp воспроизводит каналы через системный видеоплеер iOS. Поэтому всё, что играет HLS в iOS, будет играть и в приложении. А то, чего iOS не умеет, не заработает и тут.
Откуда взялся HLS и чем он удобен?
Apple разработала HLS как часть QuickTime, Safari, macOS и iOS. Сначала протокол жил как черновик стандарта, а в августе 2017 года его седьмая версия вышла как RFC 8216. Фрагменты потока скачиваются обычными HTTP-запросами, поэтому поток проходит через межсетевые экраны и прокси, которые пропускают веб-трафик, и его можно раздавать с обычных веб-серверов и через CDN. Протоколы на основе UDP, например RTP, так не умеют.
Какие потоки iPhone не играет?
Системный плеер iOS рассчитан на HLS и обычные видеофайлы. Потоки RTMP и сырой UDP он напрямую не воспроизводит. Даже если строка с таким адресом есть в M3U, канал не откроется. Сложности бывают и с кодеками, которые iOS не поддерживает, например с неподходящими вариантами MPEG-2.
Что значит начало и конец адреса в плейлисте?
По адресу канала уже можно прикинуть шансы. Таблица ниже показывает, чего ждать от iPhone.
| Адрес | Что это | Шансы на iPhone |
|---|---|---|
| .m3u8 по https | HLS по защищённому соединению | Хорошие |
| .m3u8 по http | HLS без шифрования | Зависит от настроек безопасности iOS |
| .mp4 по https | Обычный видеофайл | Играет как обычное видео |
| rtmp:// | Потоковый протокол вещания | Системный плеер не воспроизводит |
| udp:// и rtp:// | Сырой поток внутри сети оператора | Системный плеер напрямую не воспроизводит |
Что проверить в Safari за десять секунд?
Вставьте адрес канала в адресную строку Safari на iPhone. Safari воспроизводит HLS системными средствами, поэтому ответ приходит сразу: пошло видео или нет. Это самый короткий способ отделить мёртвый канал от капризов приложения. Если в Safari канал играет, а в плеере нет, смотрите на заголовки User-Agent и Referer в плейлисте.
PlayUp принимает в плейлисте строки с http, https, rtmp, rtsp, udp и rtp, поэтому в списке окажутся и каналы, которые телефон сыграть не сможет. В настройках сборки исключения для незащищённого http не прописаны, так что часть http-каналов может не открыться.
Чек-лист: почему канал не играет
- Проверьте адрес. Если он оканчивается на .m3u8, это HLS, и шансы хорошие. Если начинается с rtmp:// или udp://, iOS, скорее всего, не сыграет.
- Откройте ссылку в другом плеере или браузере. Если не играет нигде, источник мёртв или ссылка устарела.
- Проверьте срок. Некоторые поставщики выдают ссылки с токеном на несколько часов: плейлист нужно обновить кнопкой «Обновить».
- Проверьте географию. Часть каналов открывается только в определённой стране.
- Посмотрите, нет ли в плейлисте строк
#EXTVLCOPTс User-Agent или Referer: источник может требовать их, и PlayUp их читает. - Смените сеть: Wi-Fi и мобильный интернет иногда режут разные потоки.
Почему адрес с http может не открыться?
iOS по умолчанию требует защищённых соединений, и обычный http без шифрования может блокироваться системой, особенно для сайтов во встроенных окнах. Если у поставщика есть https-вариант, используйте его. Это общее поведение платформы, а не особенность PlayUp.
Что с задержкой и буферизацией?
HLS по замыслу идёт с задержкой в несколько фрагментов, обычно в пределах десятков секунд, потому что плеер заранее набирает буфер. Если картинка подвисает, виновата чаще скорость сети или перегруженный сервер поставщика, чем приложение.
Что в открытом списке России на практике?
Ради цифр мы скачали открытый список российских каналов проекта iptv-org, который подставляет кнопка «Открытые каналы России». На 10 октября 2026 года в нём 533 канала. Адресов с .m3u8 там 525, то есть HLS почти везде. По защищённому https идут 234 адреса, по http ещё 299. Строк rtmp, rtsp, udp и rtp в списке нет.
Для iPhone вывод простой: больше половины каналов зависят от того, пропустит ли система незащищённое соединение. Если часть каналов из списка играет, а часть нет, сначала посмотрите на начало адреса. Это быстрее, чем гадать.
Как проверить это без машины?
Все каналы можно проверить на телефоне: плеер показывает «Канал не отвечает», если поток недоступен. Когда канал заработал на телефоне, его можно отправить в машину кнопкой «В машину». Для просмотра на экране CarPlay действуют те же правила: сначала на стоянке, и картинка скрывается в движении, подробности в разделе про паузу. Чем отличаются M3U и M3U8, объясняет статья M3U или M3U8.
Что такое адаптивный битрейт?
Один и тот же канал HLS может предлагаться в нескольких качествах. Главный манифест перечисляет варианты, например 480p, 720p и 1080p, а плеер сам выбирает подходящий по скорости сети и меняет его на ходу. Поэтому на плохой связи картинка теряет чёткость, но не останавливается. Принцип описан в статье Википедии про потоковую передачу с адаптивным битрейтом.
Для вас это значит: если канал играет, но мутный, вероятнее всего плеер временно выбрал низкий вариант из-за сети. Если же не играет совсем, дело в доступности источника, а не в качестве.
Сколько трафика съедает канал?
Считать просто: умножьте мегабиты в секунду на 3600 секунд в часе и разделите на 8, получатся мегабайты за час. HLS подстраивает качество под сеть, поэтому реальный расход колеблется. На экране машины интернет берётся у iPhone, значит трафик списывается с вашего тарифа. Для долгого просмотра на стоянке удобнее Wi-Fi или канал в меньшем качестве. Для сравнения: двухчасовой фильм при 2,5 Мбит/с занимает около 2,2 ГБ, больше половины мобильного пакета в 4 ГБ.
| Битрейт потока | За час | За три часа |
|---|---|---|
| 1 Мбит/с | около 450 МБ | около 1,35 ГБ |
| 2,5 Мбит/с | около 1,1 ГБ | около 3,4 ГБ |
| 5 Мбит/с | около 2,2 ГБ | около 6,8 ГБ |
Как отличить манифест HLS от IPTV-плейлиста?
Оба файла часто называются .m3u8, но внутри разное. IPTV-плейлист содержит строки #EXTINF с названиями каналов и адресами, а манифест HLS содержит теги вроде #EXT-X-STREAM-INF или #EXT-X-TARGETDURATION и адреса фрагментов.
| Признак | IPTV-плейлист | Манифест HLS |
|---|---|---|
| Что перечисляет | Разные каналы | Фрагменты одного потока или варианты качества |
| Характерные теги | #EXTINF, group-title, tvg-logo | #EXT-X-STREAM-INF, #EXT-X-TARGETDURATION |
| Куда вставлять в PlayUp | В «Плейлист» | В адрес канала внутри плейлиста |
| Размер | Десятки и тысячи строк | Обычно короткий файл |
Какую роль играют заголовки?
Некоторые источники отдают поток только плееру с определённым User-Agent или с заданным Referer, то есть адресом страницы, с которой запрос «пришёл». В плейлисте это записывается строками #EXTVLCOPT:http-user-agent= и #EXTVLCOPT:http-referrer=. PlayUp читает эти строки и сохраняет их у канала. Если поставщик их не указал, а источник их требует, поток не откроется.
Что с фоновым воспроизведением и картинкой в картинке?
Звук каналов продолжается при выключенном экране: в приложении включён фоновый режим для аудио. Для видео есть картинка в картинке, её включает отдельная кнопка в плеере. Для отдыха вечером пригодится таймер сна на 15, 30, 60 или 90 минут, он входит в PlayUp Pro.
Что приложить, если нужно обратиться к поставщику?
Эти данные сэкономят поставщику время. Не отправляйте ему в открытом виде ссылки с личными токенами.
- Адрес потока без токенов и паролей: достаточно домена и пути.
- Точное время, когда канал перестал играть.
- Тип сети: Wi-Fi, мобильный интернет или VPN.
- Сообщение плеера: в PlayUp это «Канал не отвечает».
- Версию iOS.
Когда виновата не ссылка?
Иногда проблема в самой сети: VPN может резать видеотрафик, домашний роутер переполнен, а оператор ограничивает скорость. Попробуйте другую сеть и отключите VPN на минуту. Если канал после этого заиграл, источник в порядке, и разбираться нужно с сетью.
Как проверить ссылку на компьютере?
Если мобильный результат неясен, полезно сравнить поведение на другом устройстве.
- Откройте адрес канала в другом плеере на компьютере через «Открыть URL».
- Если картинка пошла, источник жив, и проблема в iOS или в сети телефона.
- Если нет, проверьте адрес в командной строке запросом заголовков: код ответа 200 означает, что сервер отвечает, 403 говорит о запрете по заголовкам или географии, 404 о том, что ссылка устарела.
- Повторите на телефоне в другой сети.
Что такое телепрограмма и архив?
К плейлисту может прилагаться файл телепрограммы (EPG) в формате XML. Ссылка на него записывается в заголовок плейлиста, а идентификаторы tvg-id связывают каналы с расписанием. Описание технологии есть в статье о электронной программе передач. Архив передач указывают параметрами catchup. PlayUp читает эти поля из файла, но наличие телепрограммы или архива зависит от того, что даёт поставщик.
Как относиться к ссылкам из интернета?
Ссылка на личный плейлист часто содержит токен, который работает как пароль. Не публикуйте её и не отправляйте незнакомым людям. Не вводите пароли от своих аккаунтов в «бесплатные» плейлисты и сайты, которые просят войти ради доступа к каналам. Если ссылка попала не в те руки, попросите у поставщика новую.
Частые вопросы
Что значит расширение .m3u8?
Это текстовый файл в кодировке UTF-8. Им называют и IPTV-плейлисты, и манифесты HLS. Разница в содержимом: плейлист IPTV перечисляет каналы, манифест HLS перечисляет фрагменты одного потока.
Почему канал играл вчера, а сегодня нет?
Часто это истёкший токен в ссылке или смена адреса у поставщика. Обновите плейлист или запросите новый.
Играет ли iPhone RTMP?
Системный плеер iOS не воспроизводит RTMP напрямую. Для таких каналов нужен поток в HLS.
Откуда PlayUp знает, что канал не отвечает?
Системный плеер сообщает об ошибке потока, и приложение показывает «Канал не отвечает».
Сколько мобильного трафика уходит на IPTV?
Канал с потоком 2,5 Мбит/с расходует около 1,1 ГБ в час. Точное число зависит от качества, которое выбрал плеер, поэтому на тарифе с лимитом лучше смотреть по Wi-Fi.
Почему часть каналов из открытого списка не открывается на iPhone?
Чаще всего дело в адресе: ссылка устарела, канал закрыт по стране или идёт по незащищённому http. Проверьте адрес в Safari: если там тоже не играет, источник недоступен.