Скоро на iPhone

Что такое EPG в IPTV и зачем нужна телепрограмма

обновлено · 4 мин чтения

EPG (Electronic Program Guide) это электронная программа передач: что идёт на канале сейчас и что будет дальше. В IPTV она отдельный файл, чаще всего в формате XMLTV, а адрес указывается в заголовке M3U-плейлиста. Не все приложения умеют показывать программу, PlayUp её не показывает.

Скоро на iPhone

Что такое EPG простыми словами?

EPG это таблица, в которой для каждого канала по времени расписаны передачи: название, начало, конец, описание. На телевизоре вы видите её по кнопке «Гид» на пульте. В IPTV программа передач живёт отдельно от самого видеопотока. Плейлист говорит, где смотреть канал, а EPG рассказывает, что на нём идёт. Общее понятие описано в Википедии.

Благодаря EPG приложение может показать, что идёт сейчас, напомнить о передаче, сгруппировать каналы по жанрам и открыть архив, если провайдер его поддерживает. Без программы остаётся просто список каналов.

Хороший пример. Вы открываете канал в плеере с EPG и видите под ним строку «Сейчас: новости, до 19:30. Далее: сериал». Нажав на строку, вы можете прочитать описание, посмотреть расписание на неделю, поставить напоминание. Если программа не подключена, вы просто видите название канала, и что на нём идёт, узнаёте только включив его. Для долгого просмотра это неудобно, а для быстрого включения на стоянке достаточно.

Как EPG связан с M3U-плейлистом?

Связь создаётся тремя способами. Во-первых, в первой строке плейлиста указывают адрес программы атрибутом url-tvg или x-tvg-url. Во-вторых, у каждого канала задают идентификатор tvg-id, по которому его находят в программе. В-третьих, имена каналов в EPG должны совпадать с идентификаторами в плейлисте. Если идентификатор не совпал, программа для канала не покажется.

Выглядит это примерно так: в заголовке #EXTM3U url-tvg="https://example.com/epg.xml", а у канала tvg-id="Channel1". Приложение скачивает файл программы, ищет там запись с тем же идентификатором и подставляет расписание.

На практике идентификаторы часто не совпадают. Один и тот же канал в разных источниках называется по-разному: «Первый», «1 канал», «Channel One». Поэтому качественные плейлисты и программы выпускают парой: провайдер собирает оба файла сам и следит за соответствием. Если вы смешиваете плейлист одного источника и программу другого, часть каналов останется без расписания, и поправить это в самом плеере обычно нельзя.

Что такое XMLTV и откуда берутся данные?

XMLTV это открытый формат: большой XML-файл со списком каналов и передач. Он хорошо читается программами, но весит много, иногда десятки мегабайт, и приложение скачивает его не мгновенно. Поэтому программу обновляют раз в несколько часов, а не при каждом открытии.

Обновление программы зависит от источника. У провайдеров она часто свежая на несколько дней вперёд, у открытых сборников обновляется раз в сутки. Если расписание отстаёт, проверьте дату последнего обновления файла. Передачи в реальном эфире могут сдвигаться, поэтому даже лучший EPG бывает неточен на несколько минут, особенно у спортивных и новостных каналов.

Если вы собираете программу сами, учтите часовые пояса. Файл XMLTV хранит время с указанием смещения, и если приложение читает его неверно, все передачи сдвигаются на несколько часов. Это самая частая жалоба на самодельные программы, и проверить её легко: сравните время ближайшей передачи в файле и в эфире.

Размер тоже имеет значение. Программа на неделю для тысячи каналов весит много, и на мобильном интернете её скачивание заметно расходует трафик. Поэтому провайдеры нередко делают отдельные файлы под разные наборы каналов, а плееры подтягивают только нужное.

ИсточникЧто даётНа что обратить внимание
Провайдер IPTVГотовая программа под свои каналыЛучше всего совпадает с плейлистом, но доступна по договору
Открытые сборники XMLTVПрограмма для популярных каналовМогут отставать, часть каналов отсутствует
Сайты телепрограммРасписание для просмотра в интернетеПодходят для чтения, но не для приложений
Собственная сборкаСвоя программаТребует знаний и времени

Показывает ли PlayUp телепрограмму?

Нет. PlayUp читает адрес программы из заголовка плейлиста и сохраняет его вместе с данными плейлиста, но самой телепрограммы не показывает. Приложение не подтягивает расписание и не выводит, что идёт сейчас. Так что если вам нужна программа передач с напоминаниями и архивом, лучше пользоваться плеером с EPG. Как приложение читает плейлисты, описано на странице про IPTV-плейлисты.

Зато PlayUp показывает каналы по группам, логотипы, избранное и историю. Каналы на экране машины выводятся крупными плитками, а выбор канала делается одним касанием. Такой упрощённый интерфейс подходит для стоянки, где нужно быстро включить канал и не листать расписание.

Если вам нужна программа в плеере, ищите в описании приложения слова EPG, программа передач или XMLTV. Если их нет, рассчитывать на расписание нельзя. Для быстрого включения канала без программы отлично подходит простой интерфейс, в котором есть только каналы, группы и поиск по названию. Как приложение читает плейлисты, смотрите на странице про IPTV-плейлисты.

Почему в приложении нет программы, хотя адрес указан?

Проверить адрес можно вручную: вставьте его в окно на компьютере. Если файл скачивается, откройте его и найдите в нём тег channel с нужным идентификатором. Так вы поймёте, виноват плейлист или программа.

Если вы всё же хотите увидеть расписание, откройте файл программы на компьютере и найдите нужный канал: в нём перечислены все передачи с временем. Это громоздко, зато даёт понять, что именно идёт на канале.

  • Плеер вообще не поддерживает EPG и просто игнорирует адрес.
  • Адрес указан, но файл программы недоступен или удалён.
  • Идентификаторы каналов в плейлисте не совпадают с идентификаторами в программе.
  • Файл программы слишком большой для вашего соединения и не успел скачаться.
  • Провайдер выдаёт программу только в своём приложении.

Что такое архив и как он связан с EPG?

Архив (catchup) позволяет смотреть передачи, которые уже прошли. Он держится на программе и на специальной ссылке для каждого канала с указанием времени. В плейлисте для этого есть атрибуты вроде catchup и catchup-source. PlayUp их читает при разборе файла, но возможности смотреть архив в интерфейсе не заявляет, поэтому на архив рассчитывать не стоит.

Архив и программа обычно предоставляются платными провайдерами. В открытых списках эфирных каналов их нет.

Итог для практики. Если вам нужна программа передач, выбирайте плеер с заявленной поддержкой EPG и плейлист от провайдера, который выдаёт и программу. Если нужно просто включить канал, достаточно списка и поиска по названию. Для просмотра на стоянке второй вариант часто удобнее: меньше экранов и меньше нажатий. А если когда-нибудь программа понадобится, адрес в плейлисте можно оставить, он ничему не мешает и пригодится, когда у приложения появится соответствующая возможность. Пока же планируйте просмотр заранее по сайту телеканала или по программе в телефоне.

Частые вопросы

Что такое EPG?

Электронная программа передач: список того, что идёт и будет идти на каналах. В IPTV это отдельный файл, обычно XMLTV.

Где указывается адрес EPG?

В первой строке M3U-плейлиста атрибутом url-tvg или x-tvg-url.

Показывает ли PlayUp телепрограмму?

Нет. Приложение читает адрес программы, но саму программу не отображает.

Зачем нужен tvg-id?

Это идентификатор канала, по которому приложение находит его в программе передач. Без совпадения идентификаторов программа не подставится.

Что лучше для программы передач?

Плеер, который заявляет поддержку EPG. PlayUp телепрограмму не показывает: он читает только адрес программы из заголовка плейлиста.

Читайте также

Видео на экране CarPlay, когда машина стоит

  • Свои сайты и IPTV-плейлисты в одном приложении
  • В движении картинка на экране машины скрыта, звук идёт
  • Пассажир смотрит дальше на своём телефоне

Скоро на iPhone