Av Shamir
Så här ser en XMLTV EPG-fil faktiskt ut (med exempel)
Det snabbaste sättet att slippa förvirras av programguider är att öppna en och läsa den. XMLTV är vanlig XML — utförlig, men inte komplicerad — och tio minuter med ett verkligt exempel sparar dig timmar av gissningar om varför guiden är tom.
I det här inlägget visas en verklig fil, den förklaras tagg för tagg och förståelsen används sedan för att förklara det vanligaste guideproblemet.
Den ärliga beskrivningen: Tuneline är en mediaspelare för innehåll som du tillhandahåller. Den visar en guide från en schemakälla som du anger. Den levereras utan guide och utan innehåll.
Strukturen i en mening
En XMLTV-fil innehåller exakt två sorters saker: <channel>-element som deklarerar vad som finns och <programme>-element som anger vad som visas när.
Det är allt. Resten är detaljer.
Ett minimalt, komplett exempel
<?xml version="1.0" encoding="UTF-8"?>
<tv generator-info-name="example-grabber">
<channel id="example.news.us">
<display-name>Example News</display-name>
<icon src="http://logos.example/news.png" />
</channel>
<programme start="20260806180000 +0000"
stop="20260806190000 +0000"
channel="example.news.us">
<title lang="en">Evening Report</title>
<desc lang="en">The day's headlines and analysis.</desc>
<category lang="en">News</category>
</programme>
</tv>
Det där är en giltig och komplett guide som beskriver en källa och en timmes schema. En verklig fil består av samma två strukturer upprepade tusentals gånger.
Tagg för tagg
| Element | Vad den gör |
|---|---|
<tv> | Roten. Allt finns inuti den. |
<channel id="…"> | Deklarerar en källa. id är den viktiga delen — det är kopplingsnyckeln. |
<display-name> | Det läsbara namnet som visas i guiden. |
<icon src="…"> | URL till logotypen. |
<programme start stop channel> | Ett schemalagt objekt. channel måste matcha en <channel id>. |
<title> | Programnamn. |
<desc> | Sammanfattning. |
<category> | Genre. Det är detta som föräldrakontroller och filter använder. |
Tidsstämpelformatet förvirrar alla
start="20260806180000 +0000"
Läs det som YYYYMMDDHHMMSS följt av en UTC-förskjutning. Det innebär alltså 6 augusti 2026, 18:00:00 UTC.
Förskjutningen är det viktiga. Om en fil utelämnar den eller anger en som inte stämmer med verkligheten läses guiden in utan problem, men allt visas vid fel tid. Det är ett helt annat problem än en tom guide och åtgärdas i tidszoninställningarna, inte genom att byta källa. (Åtgärda felaktiga tider.)
Kopplingen: Därför är guiden tom trots att filen lästes in
Här är det viktigt att förstå en sak, eftersom den förklarar de flesta klagomål på guider.
Din spellista och din guide är två separata filer som måste kopplas ihop. Kopplingen görs med ett ID.
I M3U:
#EXTINF:-1 tvg-id="example.news.us" tvg-logo="…",Example News
http://example.com/news.m3u8
I XMLTV:
<channel id="example.news.us">
tvg-id måste vara samma som channel id. Exakt — inklusive skiftläge och skiljetecken.
När de matchar visas schemat för posten. När de inte gör det får du en post med en tom guide, och det var inget fel på filen. (Den andra sidan av M3U.)
Det är därför ”Jag lade till en guide och inget hände” oftast varken beror på spellistan eller guiden. Det beror på att ingen fick dem att använda samma identifierare. En guide som täcker en annan region än din spellista kan läsa in tusentals program som inte matchar någon av dina poster.

Så kontrollerar du en guidekälla innan du litar på den
Innan du skyller på spelaren bör du titta på filen.
1. Är den komprimerad? Många källor levereras som .xml.gz. Det är normalt — de flesta spelare hanterar det. Om du granskar filen manuellt ska du packa upp den först.
2. Innehåller den faktiskt dina källor? Sök i filen efter något av dina tvg-id-värden. Om det inte finns där täcker guiden inte din lista, och ingen inställning kan ändra det.
curl -s "https://example.com/guide.xml.gz" | gunzip | grep -c "<channel "
curl -s "https://example.com/guide.xml.gz" | gunzip | grep "example.news.us"
Den första kontrollen visar hur många källor den deklarerar. Den andra visar om din källa finns bland dem.
3. Täcker den ett användbart tidsintervall? Kontrollera de tidigaste och senaste start-värdena. Vissa kostnadsfria guider innehåller bara 24 timmar, andra två veckor. En guide som slutade uppdateras i går ser likadan ut som en trasig guide.
4. Hur stor är den? Fullständiga nationella guider kan bli tiotals eller hundratals megabyte okomprimerade. Det är normalt och är anledningen till att den första inläsningen kan ta flera minuter på en TV-box. (Kostnadsfria XMLTV-källor.)
Vanliga fel i filerna
Guidefiler från verkligheten går sönder på förutsägbara sätt:
- En HTML-felsida som sparats som
.xml. Öppna den. Om den första raden är<!DOCTYPE html>misslyckades hämtningen och felet sparades. - Ohanterade et-tecken. Ett ensamt
&i stället för&i en titel är ogiltig XML och kan avbryta hela tolkningen. En enda felaktig titel och guiden försvinner helt. - Dubbla
<channel id>-poster. Två deklarationer av samma ID; beteendet beror på spelaren. - Program utan matchande kanal. Schemaposter vars attribut
channelinte matchar någon deklarerad<channel id>. De tas bort utan meddelande. - Tider där
stopsaknas. Vissa hämtare utelämnar dem och förväntar sig att starttiden för nästa program ska ange sluttiden. Vissa spelare drar inte den slutsatsen, vilket lämnar luckor.
Kan jag skriva eller redigera en själv?
Ja. Det är XML, så vilken textredigerare som helst fungerar, och för en liten, handplockad konfiguration är det fullt praktiskt.
Användbara ändringar:
- Ändra ett
<channel id>så att det matchar dettvg-idsom din spellista redan använder — ofta enklare än att redigera hundratals rader i spellistan. - Banta den. Ta bort de
<channel>- och<programme>-element du inte behöver. En mindre fil läses in mycket snabbare på enheter med begränsade resurser. - Korrigera förskjutningen om alla tider är fel på samma sätt.
Två regler: spara som UTF-8 och se till att filen är välformad — ett enda obehörigt & kan göra hela guiden obrukbar.
Vanliga frågor
Hur ser en EPG-fil ut?
Vanlig XML med två sorters element: <channel> som deklarerar varje källa och <programme> som anger starttid, sluttid och titel för varje schemalagt objekt.
Vilket format har XMLTV?
XML, som vanligtvis tillhandahålls som .xml eller gzip-komprimerad .xml.gz. Tidsstämplar är YYYYMMDDHHMMSS plus en UTC-förskjutning.
Varför läses min guide in men visar ingenting?
Nästan alltid för att värdena i din spellistas tvg-id inte matchar guidens <channel id>-värden. Filen lästes in utan problem, men det fanns inget att koppla den till.
Hur kontrollerar jag om en guide täcker mina källor?
Hämta den, packa upp den vid behov och sök efter någon av dina tvg-id-strängar. Om den inte finns i filen beskriver guiden inte din lista.
Varför är min guidefil så stor?
En nationell guide med två veckors schema för hundratals källor är verkligen tiotals eller hundratals megabyte stor. Det är förväntat och är anledningen till att den första inläsningen går långsamt.
Kan jag redigera en XMLTV-fil?
Ja, i valfri textredigerare. Spara som UTF-8 och se till att XML-filen är välformad — ett enda obehörigt & kan förstöra hela tolkningen.
Sammanfattning
- XMLTV innehåller exakt två saker:
<channel>-deklarationer och<programme>-poster. - Tidsstämplar är
YYYYMMDDHHMMSS+ UTC-förskjutning — en felaktig förskjutning innebär rätt data men fel tider. - Guiden kopplas till din spellista genom
tvg-id=channel id, exakt. En felaktig matchning är den vanligaste orsaken till en tom guide. - Kontrollera innan du skyller på något: packa upp filen, sök efter ditt ID och kontrollera datumintervallet.
- Ett enda obehörigt
&kan göra en hel guidefil ogiltig.
Har du en spellista och en guide-URL? Ladda ner Tuneline — lägg till båda så fylls rutnätet i. Kostnadsfritt och utan annonser.
— Shamir
Dela artikeln
Get Tuneline free
A clean, no-account media player for macOS, Windows, Linux, Android, TV, and iOS. Bring your own playlist.
Download freeRelaterade artiklar
- Den bästa streamingenheten 2026: prestanda, tillförlitlighet och hur länge den håller
- En enklare streaminglösning för äldre familjemedlemmar (2026)
- Ethernet kontra Wi-Fi för 4K-streaming: vad som faktiskt spelar roll (2026)
- Gemini på Google TV 2026: Vad det faktiskt gör
- Gör din setup redo för säsongen 2026/27
Läs den här artikeln på ett annat språk
- EnglishWhat an XMLTV EPG File Actually Looks Like (With Examples)
- AfrikaansHoe lyk 'n XMLTV EPG Lêer Eintlik (Met Voorbeelde)
- العربيةكيف يبدو ملف XMLTV EPG فعليًا (مع أمثلة)
- বাংলাএকটি XMLTV EPG ফাইল আসলে কেমন দেখায় (উদাহরণ সহ)
- DeutschSo sieht eine XMLTV EPG-Datei wirklich aus (mit Beispielen)
- ΕλληνικάΠώς μοιάζει στην πραγματικότητα ένα αρχείο XMLTV EPG (με παραδείγματα)
- فارسیفایل XMLTV EPG واقعاً چگونه به نظر می رسد (با نمونه ها)
- SuomiMiltä XMLTV EPG -tiedosto oikeasti näyttää (esimerkkien kera)
- हिन्दीXMLTV EPG फ़ाइल वास्तव में कैसी दिखती है (उदाहरणों के साथ)
- ItalianoChe aspetto ha davvero un file XMLTV EPG (Con esempi)
- 한국어XMLTV EPG 파일이 실제로 어떻게 생겼는지 (예제 포함)
- Bahasa MelayuRupa Sebenar Fail XMLTV EPG (Dengan Contoh)
- NorskHvordan en XMLTV EPG-fil faktisk ser ut (med eksempler)
- РусскийКак выглядит файл XMLTV EPG на самом деле (с примерами)
- СрпскиKako zapravo izgleda XMLTV EPG fajl (sa primerima)
- SvenskaSå här ser en XMLTV EPG-fil faktiskt ut (med exempel)
- TürkçeBir XMLTV EPG Dosyası Gerçekte Neye Benziyor (Örneklerle)
Tuneline är en mediespelarapplikation. Den tillhandahåller, lagrar eller distribuerar inget innehåll. Du tar med din egen spellista, precis som med VLC.