Кастомизация подбора EPG
Добавляя/изменяя параметры в плейлисте, можно очень тонко настраивать подбор EPG и загрузку иконок.
Заголовок плейлиста: #EXTM3U
В нем задаются глобальные параметры плейлиста
url-tvg
,x-tvg-url
- поддерживаются множественные значения, разделитель
,
ссылаться с канала этот блок можно черезtvg-source="#{ЧИСЛО}"
#0
Стандартный параметр, тут обычно указывают ссылки на поставщиков EPG, используемых в листе. foss-tvg
-
поддерживаются множественные значения, разделитель
,
источники в этом списке не учитываются при автоподборе, если явно не прописаны на канале
ссылаться с канала этот блок можно черезtvg-source="#{КОРОТКОЕ_ИМЯ}"
Тут можно указать дополнительные источники EPG, на которые можно ссылаться с каналов по коротким именам.Формат записи:
{КОРОТКОЕ_ИМЯ}::{ССЫЛКА}
, где поле{КОРОТКОЕ_ИМЯ}
, может быть записано, как:простослово
позволяет ссылаться на этот источник, делая использование этого источника EPG приоритетным (если этот источник поддерживается сервером плеера). В качестве{ССЫЛКА}
используется ссылка до каталога с json EPG.
#1- Если короткое имя начинается с символа
=
, то EPG на каналах с таким же коротким именем, будет грузиться напрямую с совместимого сервера FOSS-EPG, минуя общий запрос на автопоиск EPG.
#2 - Специальные короткие имена
!epg-server
/!ico-server
меняют центральный сервер, который занимается автопоиском EPG/значков (ottplay-foss-server-epg), позволяет полностью отвязать работу с EPG от моих серверов. (записывается без закрывающего/
)
#3
Заголовок канала: #EXTINF
В этом блоке указываются параметры поиска EPG, относящиеся к конкретному каналу.
tvg-source
/url-tvg
-
поддерживаются множественные значения, разделитель
,
url-tvg
в этом блоке только для совместимости, все ссылки на него в статье подразумеваютurl-tvg
из заголовка#EXTM3U
Отвечает за привязку канала к конкретному поставщику EPG.
Может быть записан как:- Начинается с символа
#
#{ЧИСЛО}
#0
Для такого канала приоритет в поиске EPG отдается источнику, указанному вurl-tvg
, где{ЧИСЛО}
это порядковый номер записи.#{КОРОТКОЕ_ИМЯ}
#1
Для такого канала приоритет в поиске EPG отдается источнику, указанному вfoss-tvg
, где{КОРОТКОЕ_ИМЯ}
это{КОРОТКОЕ_ИМЯ}
, прописанное вfoss-tvg
заголовка.
- Начинается с символа
=
={КОРОТКОЕ_ИМЯ}
#2
Исключает канал из запроса автопоиска EPG и грузит файл программы для канала статично, с сервера FOSS-EPG с таким же коротким именем из foss-tvg, в качестве идентификатора канала используетсяtvg-id
, множественные записи не поддерживаются.
любой другой текст
- будет обработан, и даже может вернуть программу, если хеш совпадет с тем, что на сервере (например URL до поддерживаемого провайдера на XMLTV без http://), однако такой способ остается для тех, кто знает, что делает, и не рекомендуется обычным пользователям.
- Начинается с символа
Примеры
Простой лист с 3 каналами, программа грузится по схеме:
Все каналы автоподбор
#EXTM3U
#EXTINF:0,Канал 1
http://stream1
#EXTINF:0,Канал 2
http://stream2
#EXTINF:0,Канал 3
http://stream3
Подбирает EPG для всех каналов по схеме:
при условии, что сервер знает ссылки этих провайдеров
Канал 3 iptvx.one
→it999
→автоподбор
Остальные it999
→iptvx.one
→автоподбор
#EXTM3U url-tvg="https://epg.it999.ru/epg.xml.gz,https://iptvx.one/EPG"
#EXTINF:0,Канал 1
http://stream1
#EXTINF:0,Канал 2
http://stream2
#EXTINF:0 tvg-source="#2",Канал 3
http://stream3
Почти тоже самое, что и #0, но через foss-tvg
:
iptvx.one не учитывается в автоподборе, только на 3 канале, где явно прописан
Канал 3 iptvx.one
→it999
→автоподбор
Остальные it999
→автоподбор
#EXTM3U url-tvg="https://epg.it999.ru/epg.xml.gz" foss-tvg="iptvx::https://iptvx.one/EPG"
#EXTINF:0,Канал 1
http://stream1
#EXTINF:0,Канал 2
http://stream2
#EXTINF:0 tvg-source="#iptvx",Канал 3
http://stream3
Статичная загрузка без EPG сервера, для каналов 2 и 3:
Однако статичная загрузка сработает только на канале 3, а 2 пойдет на автоподбор, тк у него отсутствует tvg-id
, который обязателен в таком режиме
Канал 3 прямая загрузка для ch3
iptvx.one
Остальные it999
→автоподбор
#EXTM3U url-tvg="https://epg.it999.ru/epg.xml.gz" foss-tvg="=iptvx::http://epg.ottp.eu.org/iptvx.one/epg/"
#EXTINF:0,Канал 1
http://stream1
#EXTINF:0 tvg-source="=iptvx",Канал 2
http://stream2
#EXTINF:0 tvg-id="ch3" tvg-source="=iptvx",Канал 3
http://stream3
Использование своего epg сервера, аналогичен #0, только
Надо, чтобы на локальном сервере были натсроены провайдеры поддерживающие ссылки из url-tvg
Только для иконок: foss-tvg="!ico-server::http://192.168.1.10:3001"
Для EPG и иконок: foss-tvg="!epg-server::http://192.168.1.10:3001,!ico-server::http://192.168.1.10:3001"
#EXTM3U url-tvg="https://epg.it999.ru/epg.xml.gz,https://iptvx.one/EPG" foss-tvg="!epg-server::http://192.168.1.10:3001"
#EXTINF:0,Канал 1
http://stream1
#EXTINF:0,Канал 2
http://stream2
#EXTINF:0 tvg-source="#2",Канал 3
http://stream3