Настройка телепрограммы (EPG)
Телепрограмма превращает стену из названий каналов в телевидение, которое можно планировать: что идёт сейчас, что будет дальше, что начнётся в девять. Данные за этим называются XMLTV — это отдельный файл рядом со списком каналов, и почти все проблемы возникают оттого, что эти двое не совпадают.
Выясните, где лежат ваши данные программы
При подключении через Xtream Codes программа обычно приходит сама — её несёт сервер. При обычном плейлисте M3U чаще всего нужна вторая ссылка, адрес XMLTV, который провайдер указывает отдельно. Он часто заканчивается на .xml или .xml.gz.
Добавьте ссылку XMLTV
В Tivsy откройте источник и добавьте под ним адрес программы. Сжатые файлы обрабатываются без распаковки вручную. Первая загрузка может быть большой — неделя для тысячи каналов это очень много текста — поэтому делайте это по Wi-Fi.
Дайте каналам сопоставиться
Данные программы опознают каналы по идентификатору, а не по названию, и плеер связывает каждый канал с его передачами через tvg-id из вашего плейлиста. Если идентификаторы верны, программа заполняется сама. Если провайдер их не проставил, часть каналов останется пустой, какими бы хорошими ни были данные.
Смотрите на часы, а не на данные
Если каждая передача верна, но всё смещено на час-другой, с программой всё в порядке, а с часовым поясом нет. Метки времени XMLTV несут смещение; файл, сделанный для одной страны и прочитанный в другой, съезжает. Исправьте смещение для источника, а не ищите другую программу.
Как канал связывается со своей программой
Два сигнала, по убыванию доверия. Сначала собственный tvg-id канала: если файл программы объявляет канал с таким идентификатором, ему верят сразу. Если идентификатора нет или программа его не знает, очищенное имя канала сравнивается со всеми именами, которые программа объявляет для своих каналов. Если не сработало ни то, ни другое, строка намеренно остаётся пустой. Программа, показывающая передачи чужого канала, хуже пустой, потому что вы бы ей поверили.
Почему «BBC One FHD» всё равно находит свои передачи
Потому что имя очищается перед сравнением. Метки качества и дублей убираются — 4K, UHD, FHD, HD, SD, 1080p, VIP, PLUS, BACKUP, ALT и прочие — вместе с диакритикой, регистром и знаками препинания. Так «BBC One FHD», «bbc one hd» и «BBC ONE» сводятся к одному ключу, и одна запись программы может обслуживать все варианты качества, которые перечисляет ваш провайдер. По той же причине два канала, различающиеся лишь меткой, делят одну программу — и это правильно.
Программа обновляется по расписанию, а не при каждом открытии приложения
Файлы XMLTV большие — нередко десятки мегабайт, — а провайдеры пересобирают их самое большее несколько раз в день. Поэтому программа скачивается заново, только если ей больше шести часов, и запрос просит сжатую копию. Двадцать открытий приложения за вечер не скачают ничего. У каждого списка свой адрес программы, так что при двух подписках каждая может указывать на файл своего провайдера.
Частые вопросы
Почему моя телепрограмма пустая?
Либо источник программы не подключён, либо в программе нет записей для идентификаторов ваших каналов. Откройте сначала крупный канал: они размечены лучше всех, так что если программа работает хоть где-то, она работает там.
Почему передачи показываются лишь у части каналов?
Потому что программа покрывает их, а остальных нет, либо у недостающих в плейлисте отсутствует tvg-id. Это свойство выданных вам данных, а не плеера.
Всё сдвинуто ровно на час. В чём дело?
Расхождение часовых поясов, обычно из-за перехода на летнее время. Передачи верны; неверно смещение, с которым их читают.
Как часто обновляется программа?
Tivsy обновляет её в фоне и по запросу. Провайдеры обычно публикуют на несколько дней вперёд и обновляют ежедневно; программа, заканчивающаяся послезавтра, это предел источника.
У одних каналов передачи есть, а у таких же на вид — нет.
Значит, для них не сработали оба сигнала: их tvg-id отсутствует или его нет среди объявленных в вашем файле XMLTV, а очищенное имя не совпадает ни с одним именем внутри. Это расхождение между двумя файлами, а не изъян одного из них. Надёжное исправление — у источника: программа, опубликованная тем же провайдером, что и список, совпадает почти всегда, потому что обе создаются из одной таблицы каналов.
Можно ли использовать больше одного файла программы?
Да, по одному на список. Адрес программы принадлежит списку, а не приложению, так что одна подписка может указывать на XMLTV своего провайдера, пока вторая использует другой. Канал сопоставляется только с программой своего списка — именно это не даёт передачам двух провайдеров перемешаться.
Программа, которая заполняется правильно, но плохо воспроизводится, это другая задача — она про соединение и формат.