• Europejskie IPTV — ponad 3000 kanałów, VOD i catch-up TV.
  • Kontakt

EPG dla wszystkich krajów na GitHubie: Źródła i przewodnik po konfiguracji

EPG dla wszystkich krajów na GitHubie: Źródła& Przewodnik po konfiguracji

Jeśli szukasz epg dla wszystkich krajów github, już znasz podstawy — twoja lista odtwarzania M3U ładuje kanały poprawnie, ale każdy odtwarzacz pokazuje "Brak danych EPG" obok każdego kanału. Ten przewodnik obejmuje prawdziwe rozwiązania: gdzie znajdują się najlepsze agregatory XMLTV open-source, jak poprawnie podłączyć je do swojego odtwarzacza oraz dlaczego większość konfiguracji nie udaje się na jednym konkretnym etapie, o którym prawie nikt nie mówi.

Czym jest EPG i dlaczego GitHub hostuje najlepsze darmowe źródła

Definicja: format XMLTV i jak odtwarzacze go konsumują

Elektroniczny przewodnik programowy (EPG) to strukturalny plik, który odtwarzacz IPTV odczytuje, aby wyświetlić "co jest teraz" i "co będzie następne" obok każdego kanału. Format, który akceptuje prawie każdy odtwarzacz, to XMLTV — otwarty standard, który istnieje od 2000 roku i nie wymagał wielu aktualizacji, ponieważ dobrze spełnia swoją funkcję.

Pliki XMLTV to po prostu XML. Dwa podstawowe elementy przenoszą wszystko:<kanał> definiuje stację z unikalnym identyfikatorem, nazwą wyświetlaną i opcjonalnym adresem URL ikony.<program> przypisuje przedział czasowy do tego identyfikatora kanału z czasem rozpoczęcia i zakończenia w formaciestart="20260511180000 +0000" — to jestYYYYMMDDHHmmss następnie z przesunięciem UTC. Odtwarzacze analizują te elementy w kolejności i budują z nich siatkę przewodnika na ekranie.

Nic egzotycznego, nic zastrzeżonego. Jeśli twój odtwarzacz mówi, że obsługuje XMLTV, odczytuje te tagi.

Dlaczego EPG utrzymywane przez społeczność na GitHubie przewyższają zeskrobane alternatywy

Większość "usług EPG", które sprzedają lub rozdają adresy URL EPG, sama zeskrobuje strony internetowe nadawców i odsprzedaje dane bez żadnej przejrzystości co do świeżości, zasięgu czy metodologii. Znikają bez powiadomienia, zmieniają format URL lub cicho rezygnują z niektórych regionów.

Projekty open-source hostowane na GitHubie są inne. Możesz zobaczyć kod zeskrobujący, workflow CI, który go uruchamia, kiedy miała miejsce ostatnia aktualizacja i czy zadanie faktycznie się powiodło. To prawdziwa odpowiedzialność. Kiedy coś się psuje, ktoś zgłasza problem, a ktoś inny go naprawia — czasami w ciągu kilku godzin.

Utrzymujący społeczność również zazwyczaj dbają o przypadki brzegowe: skrypty nielatynowe, kanały, które nadają w wielu strefach czasowych, regionalne warianty tego samego nadawcy. Komercyjni dostawcy EPG rzadko przejmują się tym poziomem szczegółowości.

Jak repozytoria agregatorów pobierają dane z oficjalnych stron nadawców

Większość poważnych projektów agregatorów nie wymyśla danych. Piszą zeskrobujące programy, które trafiają na oficjalne publiczne strony — sekcję "Harmonogram" nadawcy, ich internetowy przewodnik lub API aplikacji mobilnej — i przekształcają wszelkie HTML lub JSON, które otrzymują, w ważny XMLTV. Zeskrobujące programy działają automatycznie, zazwyczaj za pośrednictwem GitHub Actions w harmonogramie cron. Świeże pliki XMLTV są dodawane do repozytorium (lub przesyłane do wydania) co 6 do 24 godzin.

To kluczowa informacja: dane pochodzą z własnych publicznych systemów nadawcy. Projekt GitHub jest standaryzatorem i agregatorem, a nie fabrykantem danych.

Główne agregatory EPG open-source na GitHubie

Repozytoria, które agregują źródła z ponad 100 krajów

Najbardziej przydatne projekty do znalezienia pokrycia epg dla wszystkich krajów github to duże agregatory wielokrajowe. Te repozytoria zazwyczaj zawierają oddzielne pliki przewodników dla każdego kraju lub regionu (np.guides/us.xml,guides/de.xml,guides/ar.xml) oraz plik połączony, który łączy wszystko. Zasięg często obejmuje 80–150 krajów, odświeżany codziennie lub częściej.

Pliki połączone są ogromne — łatwo 100–300 MB w formacie niekompresowanym na pełne 7 dni. Ale większość tych repozytoriów publikuje również pojedyncze pliki krajowe i wersje skompresowane, które mają od 10 do 30 MB. Używaj ich, kiedy tylko możesz.

Dobry projekt wielokrajowy będzie miał aktywną odznakę CI w swoim README, jasno udokumentowany harmonogram aktualizacji oraz uporządkowany układ folderów, który jasno wskazuje, który plik obejmuje który region. Jeśli żaden z tych elementów nie jest obecny, bądź sceptyczny — może to być nieutrzymywany fork.

Repozytoria jednokrajowe i regionalne dla niszowych rynków

Niektóre kraje są dobrze pokryte przez dedykowane projekty jednokrajowe. Często mają one wyższą dokładność dla tego konkretnego rynku, ponieważ utrzymujący rzeczywiście oglądają te kanały i zauważają, kiedy zeskrobujący program przestaje działać. Dla regionów takich jak Azja Południowo-Wschodnia, kraje MENA czy Europa Wschodnia, dedykowany projekt regionalny zazwyczaj ma lepsze pokrycie kanałów niż ogólny agregator wielokrajowy.

Szukaj na GitHubie terminów takich jak "xmltv [nazwa kraju]" lub "epg [nazwa kraju] iptv", a znajdziesz je. Sprawdź, kiedy miała miejsce ostatnia aktualizacja — wszystko, co ma ponad 6 miesięcy bez aktywności, prawdopodobnie jest martwe.

Jak ocenić repozytorium: gwiazdki, ostatni commit, status CI, licencja

Gwiazdki to metryka próżności, ale niskie gwiazdki w projekcie z bardzo niedawnymi commitami mogą oznaczać, że jest nowy i dobry. Wysokie gwiazdki w projekcie bez commitów od 2023 roku oznaczają, że jest martwy i popularny. Data ostatniego commita to prawdziwy sygnał dla żywych projektów — chcesz aktywności w ciągu ostatnich 2–4 tygodni minimum.

Kliknij zakładkę Akcje. Jeśli jest workflow o nazwie coś w stylu "Aktualizuj EPG" lub "Uruchom skrypty" działający według harmonogramu, a ostatnie uruchomienie zakończyło się sukcesem (zielony znacznik), dane są aktywnie utrzymywane. Jeśli ostatnie uruchomienie workflow pokazuje czerwony X i miało miejsce trzy miesiące temu, przejdź dalej.

Jeśli chodzi o licencję: MIT i GPL są w porządku do użytku osobistego i samodzielnego hostingu. Jeśli nie ma pliku LICENSE, traktuj projekt ostrożnie — prawnie oznacza to, że nie masz wyraźnych praw do używania lub rozpowszechniania plików.

Jak dodać EPG hostowany na GitHubie do swojego odtwarzacza IPTV

Zlokalizowanie surowego URL XMLTV na GitHubie (raw.githubusercontent.com)

Zwykły przeglądarka plików GitHub owija zawartość w HTML — twój odtwarzacz nie może użyć tego URL.Potrzebujesz surowego pliku. Przejdź do pliku w repozytorium, a następnie kliknij "Raw" w prawym górnym rogu widoku pliku. URL zmieni się naraw.githubusercontent.com/username/reponame/branch/path/to/guide.xml. To jest URL, którego potrzebuje twój odtwarzacz.

Niektóre repozytoria publikują swoje pliki EPG jako zasoby wydania GitHub. Sprawdź sekcję Wydania w prawym pasku bocznym. URL zasobów wydania mają wzórgithub.com/username/reponame/releases/download/tag/guide.xml.gz — linki do pobrania, a nie linki do surowej zawartości. Oba działajądla IPTV odtwarzaczy, które obsługują HTTP.

Dodawanie URL EPG w odtwarzaczach, które obsługują wejście XMLTV

Każdy główny odtwarzacz obsługuje to nieco inaczej, ale ustawienie zazwyczaj nazywa się "EPG URL", "XMLTV URL" lub "Źródło przewodnika programowego". Tivimate, Kodi (z PVR IPTV Simple), OTT Navigator i Spark Player wszystkie to obsługują. Wklej surowy URL, zapisz i wyzwól odświeżenie.

Jeśli odtwarzacz akceptuje pliki skompresowane gzip (większość tak), zawsze preferuj.xml.gz wariant. Plik o wielkości 200 MB skompresowany do 18 MB robi realną różnicę na wolnych połączeniach lub na boxach Android TV z ograniczoną pamięcią RAM.

Dopasowywanie kanałów według tvg-id między M3U a EPG

To jest miejsce, gdzie 90% nieudanych konfiguracji EPG faktycznie się psuje.tvg-id atrybut w twojej liście odtwarzania M3U musi dokładnie pasować doid atrybutu w odpowiadającym<kanale> elemencie w pliku XMLTV. Wrażliwe na wielkość liter. Znak za znakiem.

Jeśli twoje M3U matvg-id="BBC.One.uk" a plik EPG maid="bbc1.uk", odtwarzacz nic nie dostaje. Nie pasują. Brak dopasowania przybliżonego, brak inteligentnego zapasowego w większości odtwarzaczy — tylko cisza.

Aby to zdebugować, otwórz oba pliki w edytorze tekstu. Wyszukaj nazwę kanału, o którym wiesz, że powinna mieć dane. Sprawdź, jakie ID używa XMLTV dla tego kanału, a następnie znajdź odpowiadającą linię w swoim M3U i zaktualizujtvg-id aby dokładnie pasowało. Niektórzy dostawcy list odtwarzania M3U publikują dokument mapujący, który pokazuje, które identyfikatory EPG używa ich lista kanałów — sprawdź to najpierw, zanim edytujesz ręcznie.

Szczególnie złośliwa odmiana: niektóre projekty EPG używają identyfikatorów w stylu slug, takich jakbbc-one podczas gdy listy odtwarzania M3U używają identyfikatorów numerycznych, takich jak70400. Nigdy nie będą się zgadzać bez warstwy tłumaczenia — albo edytuj M3U, znajdź EPG, który używa tego samego schematu ID, albo napisz krótki skrypt do generowania mapowania.

Interwały odświeżania i ustawienia pamięci podręcznej

Ustaw interwał odświeżania EPG w swoim odtwarzaczu, aby odpowiadał temu, jak często źródło faktycznie się aktualizuje — nie częściej. Jeśli repozytorium przesyła nowe dane co 12 godzin, odświeżanie co godzinę zużywa pasmo, marnuje pamięć i czasami osiąga limity prędkości GitHub dla twojego adresu IP (szczególnie istotne, jeśli wiele urządzeń w tej samej sieci jednocześnie żąda tego samego surowego pliku). Co 12–24 godziny jest zazwyczaj odpowiednie.

Kiedy EPG wydaje się błędne pomimo niedawnej aktualizacji, problem zazwyczaj leży po stronie pamięci podręcznej odtwarzacza. Większość odtwarzaczy ma opcję "Wyczyść pamięć podręczną EPG" lub "Wymuś odświeżenie" ukrytą w ustawieniach. Użyj tego przed założeniem, że dane źródłowe są uszkodzone.

Struktura pliku XMLTV i powszechne problemy

Anatomia wpisu programu: tytuł, podtytuł, opis, kategoria, ikona

Podstawowy<element programu>wygląda tak:

<programme start="20260511190000 +0000" stop="20260511200000 +0000" channel="bbc1.uk">  <title lang="en">The Nine O'Clock News</title>  <sub-title lang="en">Monday edition</sub-title>  <desc lang="en">National and international news.</desc>  <category lang="en">News</category>  <icon src="https://example.com/posters/news.jpg" /></programme>

Tytułelementujest jedynym wymaganym polem. Wszystko inne jest opcjonalne, aleopisikategoriaczynią przewodnik znacznie bardziej użytecznym.Ikonaelement wyświetla grafikę programu w obsługiwanych odtwarzaczach — niektóre repozytoria ją zawierają, wiele nie.

Obsługa strefy czasowej i błędy przesunięcia

Przesunięcie UTC w znaczniku czasu (+0000,+0200,-0500, itd.) to sposób, w jaki twój odtwarzacz przetwarza czas nadawania na twój lokalny zegar. Jeśli skrypt twardo koduje+0000 dla kanału, który faktycznie nadaje w+0200, każdy program pojawia się 2 godziny wcześniej, niż jest nadawany.

Przejścia DST pogarszają sytuację. Skrypt, który poprawnie obsługuje+0100 dla CET zimą, ale zapomina przełączyć na+0200 dla CEST latem, będzie pokazywał programy przesunięte o godzinę przez około 6 miesięcy w roku. To jeden z najczęstszych błędów w skryptach EPG — jeśli zauważysz, że twój EPG jest przesunięty dokładnie o godzinę po zmianie czasu, to jest powód. Zgłoś problem w repozytorium z konkretnym kanałem i przesunięciem, które widzisz.

Problemy z kodowaniem z niełacińskimi skryptami (cyrylica, arabski, CJK)

Wszystkie pliki XMLTV muszą być zakodowane w UTF-8 z deklaracją XML<?xml version="1.0" encoding="UTF-8"?> na górze. Kiedy skrypt pobiera nazwy programów w języku arabskim, cyrylicy, chińskim lub hindi z źródła i nie obsługuje kodowania poprawnie, odtwarzacze wyświetlają mojibake — nieczytelne znaki zamiast czytelnego tekstu.

Jeśli widzisz znaki takie jakпÑогÑамма dla tego, co powinno być cyrylicą, plik prawdopodobnie został zakodowany w Latin-1 lub Windows-1252 gdzieś w procesie. Dobry projekt to naprawi; pośpiesznie napisany nie. Sprawdź, czy repozytorium ma otwarte problemy dotyczące kodowania lub konkretnych języków niełacińskich przed zaangażowaniem się w nie dla tych regionów.

Co zrobić, gdy przewodnik w danym kraju jest niedostępny lub przestarzały

Otwórz problem w repozytorium opisując problem: który kraj, które kanały, jak daleko wstecz dane są przestarzałe. Większość utrzymujących docenia dobrze napisany raport o błędzie znacznie bardziej niż jednozdaniowe "to nie działa".

Lepiej jeszcze: zgłoś prośbę o włączenie. Jeśli projekt ma framework skryptów i możesz zrozumieć, jak działa istniejący skrypt dla jednego kraju, replikacja go dla brakującego kraju jest często prosta. Niektóre projekty w ten sposób dostarczyły skrypty dla ponad 30 krajów. Jeśli naprawianie istniejącego projektu wydaje się zbyt wolne, poszukaj regionalnego forka lub projektu dla jednego kraju jako rozwiązania tymczasowego — użyj go jako źródła EPG dla tego regionu, podczas gdy główny projekt nadrobi zaległości.

Samodzielne hostowanie vs bezpośrednie korzystanie z GitHub

Pobieranie pliku XMLTV bezpośrednio z raw.githubusercontent.com

Bezpośrednie korzystanie to najprostsza konfiguracja. Wklej surowy URL, gotowe. Wadą jest to, że jesteś zależny od tego, że GitHub będzie działał i repozytorium pozostanie publiczne. GitHub jest zazwyczaj niezawodny, ale repozytoria czasami otrzymują powiadomienia o usunięciu DMCA — projekt, który był dostępny wczoraj, może dziś zwrócić 404. To rzadkie, ale się zdarza.

Jest też kwestia ograniczeń liczby żądań. GitHub ogranicza liczbę żądań dotyczących surowych treści według IP. Jeśli jesteś w sieci współdzielonej (budynek mieszkalny, biuro, akademik) z wieloma użytkownikami IPTV, którzy pobierają ten sam plik 200 MB co 12 godzin, możesz zacząć widzieć błędy żądań. Dla osobistego użytku w jednym gospodarstwie domowym zazwyczaj jest to w porządku.

Lustrzane odbicie pliku na własnym serwerze za pomocą cron

Jeśli masz VPS, Raspberry Pi działające 24/7 lub nawet NAS z harmonogramem, możesz pobrać plik XMLTV w zadaniu cron i serwować go lokalnie. Prosta komenda wget lub curl w wpisie crontab, uruchamiana nieco po harmonogramie aktualizacji repozytorium, oznacza, że zawsze masz świeżą skopiowaną wersję:

0 6 * * * curl -s -o /var/www/html/epg/guide.xml.gz \

Twój odtwarzacz wskazuje wtedy nahttp://your-server/epg/guide.xml.gz zamiast GitHub. Szybciej, bardziej niezawodnie i odporne na ograniczenia liczby żądań GitHub. Całkowity czas konfiguracji: około 10 minut.

Filtrowanie dużych plików wielokrajowych do kanałów, które faktycznie oglądasz

Plik XMLTV o wielkości 200 MB jest naprawdę bolesny na niskobudżetowych boxach Android TV. Odtwarzacz musi przetworzyć cały plik, aby zbudować przewodnik, a na urządzeniach z 1–2 GB RAM, może to powodować spowolnienia lub awarie. Filtrowanie tylko do kanałów w twojej playliście to prawdziwe rozwiązanie.

Wyodrębnij identyfikatory kanałów z M3U (grep dlatvg-id=), a następnie użyj tych identyfikatorów do filtrowania pliku XMLTV. Podejście koncepcyjne: przeczytaj listę kanałów, zachowaj tylko<elementy> kanału i<elementy> programu, którychid lubkanał atrybut pojawia się na tej liście. Plik o wielkości 200 MB często kurczy się do poniżej 5 MB, gdy jest filtrowany do 100–150 konkretnych kanałów.

Generowanie szczuplejszego EPG za pomocą narzędzi wiersza poleceń

Dla podejścia wiersza poleceń,xmlstarlet jest odpowiednim narzędziem. Przykład filtra wygląda mniej więcej tak:

xmlstarlet sel -t \> filtered.xml

Python'sxml.etree.ElementTree również radzi sobie z tym w sposób czysty dla każdego, kto czuje się bardziej komfortowo z skryptowaniem niż narzędziami powłoki. Zbuduj zestaw swoich pożądanych identyfikatorów, iteruj po drzewie źródłowym raz, zapisz pasujące elementy. Dla listy 150 kanałów, które oglądasz, krok filtrowania zajmuje mniej niż sekundę, a wynik ładowany jest natychmiast w dowolnym odtwarzaczu.

Rozważania prawne i etyczne

Dane harmonogramu i prawa autorskie w różnych jurysdykcjach

Harmonogramy programów — nazwa kanału, nazwa programu, czas rozpoczęcia, czas zakończenia — to dane faktyczne. W większości jurysdykcji prawa zwyczajowego (USA, UK, Australia) surowe fakty bez twórczej autorstwa generalnie nie mogą być objęte prawem autorskim. UE przyjmuje nieco inne podejście poprzez dyrektywę o bazach danych, która przyznaje ochronę bazom danych reprezentującym znaczne inwestycje, chociaż krótkie harmonogramy faktów często mieszczą się poniżej tego progu.

Co podlega prawu autorskiemu: streszczenia odcinków napisane przez zespół redakcyjny nadawcy, materiały promocyjne i oryginalne opisy. Projekty EPG, które zawierają szczegółowe opisy odcinków, znajdują się w szarej strefie w porównaniu do tych, które zawierają tylko tytuł, czas i kategorię. To nie jest porada prawna — w przypadku komercyjnego użytku na dużą skalę, skonsultuj się z prawnikiem, który specjalizuje się w twojej jurysdykcji.

Dlaczego większość publicznych projektów EPG działa na podstawie precedensu dozwolonego użytku

Większość projektów EPG open-source działa publicznie od lat bez działań prawnych. Dominujący wzór jest taki, że nadawcy korzystają z dokładnego rozpowszechniania swoich danych harmonogramu — zwiększa to oglądalność. Projekty społecznościowe, które formatują i publikują te dane, robią coś podobnego do tego, co historycznie robiły magazyny z programami telewizyjnymi: agregują publicznie ogłoszone harmonogramy dla wygody widzów.

To powiedziawszy, "jeszcze nie zostało zakwestionowane" nie jest tym samym co "prawnie jasne". Zrozum różnicę.

Szanując warunki korzystania z usług nadawcy

Niektórzy nadawcy wyraźnie zabraniają automatycznego skanowania w swoich warunkach korzystania z usług. Autorzy skryptów EPG muszą to uwzględnić przy pisaniu swoich narzędzi. Jako użytkownik konsumujący wynikowe pliki XMLTV, jesteś o krok oddalony od tego — ale zrozumienie, skąd pochodzą dane, ma znaczenie, jeśli planujesz je redystrybuować.

Sprawdzenie pliku README repozytorium pod kątem jakichkolwiek uwag dotyczących ich metodologii skanowania i warunków źródłowych jest warte kilku minut czytania przed zbudowaniem produktu lub usługi na podstawie danych.

Wnoszenie wkładu do społeczności open-source

Ekosystem epg dla wszystkich krajów na GitHubie działa na zasadzie pracy wolontariuszy. Jeśli znajdziesz błąd — zły czas, problem z kodowaniem, uszkodzony skrypt dla twojego kraju — właściwym krokiem jest wniesienie poprawki, a nie tylko narzekanie lub ciche forking. Większość konserwatorów jest szczerze zadowolona z dobrze udokumentowanego problemu lub działającego pull requesta. Projekty, które mają najlepsze pokrycie, to te z aktywnymi społecznościami współtwórców, a nie te z jednym przeciążonym konserwatorem próbującym samodzielnie utrzymać 120 skryptów.

Czy legalne jest korzystanie z plików EPG z repozytoriów GitHub?

Do użytku osobistego, konsumowanie publicznie opublikowanych danych harmonogramu jest generalnie akceptowane w większości jurysdykcji. Redystrybucja jest bardziej skomplikowana — zależy od pliku LICENSE repozytorium oraz wszelkich warunków związanych z źródłami nadawcy. Przeczytaj oba przed redystrybucją. W przypadku użytku komercyjnego, uzyskaj odpowiednią poradę prawną, zamiast polegać na postach na forach lub tym artykule.

Jak często aktualizują się EPG na GitHubie?

Większość aktywnych projektów agregatorów uruchamia swoje skrypty co 6 do 24 godzin za pomocą GitHub Actions lub zewnętrznego crona. Dokładna częstotliwość jest zazwyczaj udokumentowana w pliku README. Możesz również sprawdzić zakładkę Actions repozytorium — poszukaj zaplanowanego przepływu pracy i kiedy ostatnio zakończył się sukcesem. Ustaw interwał odświeżania swojego odtwarzacza, aby odpowiadał, a nie był szybszy.

Dlaczego moje kanały nie pokazują danych programowych po dodaniu EPG?

Prawie na pewno jest to niezgodność tvg-id. Otwórz swój plik M3U i znajdźtvg-id wartość dla kanału, o którym wiesz, że powinien mieć dane. Następnie otwórz plik XMLTV i wyszukaj<channel id="..."> element, który powinien mu odpowiadać. Jeśli ciągi nie pasują dokładnie — ta sama wielkość liter, te same znaki — odtwarzacz nie ma sposobu, aby je połączyć. Naprawtvg-id w M3U, aby pasował do identyfikatora kanału XMLTV, lub znajdź EPG, który używa tej samej schemy ID, co twój M3U.

Który format XMLTV jest obsługiwany przez większość odtwarzaczy IPTV?

Standardowy format XMLTV DTD to to, czego oczekuje praktycznie każdy odtwarzacz. Zarówno niekompresowane.xml i skompresowane gzip.xml.gz są szeroko wspierane — większość nowoczesnych odtwarzaczy obsługuje gzip w sposób przezroczysty. Nieliczne starsze odtwarzacze wymagają, aby adres URL kończył się wyraźnie na.xml lub.xml.gz i nie będą podążać za przekierowaniami, które zmieniają rozszerzenie, więc używaj bezpośrednich surowych adresów URL zamiast skróconych linków.

Czy mogę połączyć wiele EPG z różnych krajów w jeden plik?

Tak. Format XMLTV ma jeden główny<tv> element zawierający wszystkie<channel> i<programme> elementy. Aby połączyć dwa pliki: usuń element główny ze wszystkich plików oprócz jednego, połącz zawartość, upewnij się, że identyfikatory kanałów są unikalne w źródłach (zazwyczaj są takie z założenia), i zamknij<tv> tag na końcu. Biblioteka Pythonaxml.etree.ElementTree lub pakietxmltv-util obsługują to w sposób czysty, bez ryzyka ręcznej manipulacji ciągami.

Co jeśli EPG mojego kraju na GitHubie jest nieaktualne?

Najpierw otwórz zgłoszenie w repozytorium, opisując dokładnie, co jest zepsute — który kraj, które kanały i jak stare są dane. Jeśli masz jakiekolwiek umiejętności skryptowe, spójrz, jak jest zbudowany istniejący działający skrypt dla kraju i spróbuj go skopiować dla zepsutego. Prośba o włączenie z działającą poprawką jest szybciej scalana niż skarga. Jako krótkoterminowe rozwiązanie, przeszukaj GitHub w poszukiwaniu projektów dla pojedynczego kraju obejmujących Twój region — często są mniejsze dedykowane projekty z lepszą dokładnością dla konkretnych rynków.

Jak duże są pliki XMLTV dla wielu krajów?

Pełny przewodnik na 7 dni obejmujący ponad 100 krajów zazwyczaj zajmuje 100–300 MB w formacie nieskompresowanym, spadając do 10–30 MB w formacie gzip. Na tanich boxach Android TV (1–2 GB RAM), załadowanie pliku o wielkości 200 MB może spowodować zawieszenie lub awarię odtwarzacza. Ogranicz plik do swojej rzeczywistej listy kanałów — 150 kanałów z pliku o wielkości 200 MB często daje wynik poniżej 5 MB, co każda urządzenie obsługuje natychmiast.