Kirjoittaja Shamir
Miltä XMLTV EPG -tiedosto oikeasti näyttää (esimerkkien kera)
Nopein tapa päästä eroon ohjelmaoppaiden aiheuttamasta hämmennyksestä on avata sellainen ja lukea sitä. XMLTV on pelkkää XML:ää — laveasanaista mutta ei monimutkaista — ja kymmenen minuuttia oikean esimerkin parissa säästää tuntikausia arvailua siitä, miksi opas on tyhjä.
Tässä julkaisussa näytetään oikea tiedosto, puretaan se tagi tagilta ja käytetään tätä ymmärrystä yleisimmän opasongelman selittämiseen.
Rehellisesti sanottuna: Tuneline on mediasoitin sisällölle, jonka sinä toimitat. Se näyttää ohjelmaoppaan aikataululähteestä, jonka sinä annat. Sen mukana ei toimiteta opasta eikä sisältöä.
Rakenne yhdellä lauseella
XMLTV-tiedostossa on täsmälleen kahdenlaisia asioita: <channel>-elementtejä, jotka ilmoittavat mitä on olemassa, ja <programme>-elementtejä, jotka kertovat mitä milloinkin esitetään.
Siinä kaikki. Kaikki muu on yksityiskohtia.
Pieni mutta täydellinen esimerkki
<?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>
Tämä on kelvollinen, täydellinen opas, joka kuvaa yhtä lähdettä ja yhden tunnin ohjelma-aikataulun. Oikeassa tiedostossa nämä kaksi rakennetta vain toistuvat tuhansia kertoja.
Tagien purku tagi tagilta
| Elementti | Mitä se tekee |
|---|---|
<tv> | Juuri. Kaikki sijaitsee sen sisällä. |
<channel id="…"> | Ilmoittaa lähteen. id on tärkeä osa — se toimii yhdistämisavaimena. |
<display-name> | Oppaassa näkyvä ihmiselle luettava nimi. |
<icon src="…"> | Logon URL-osoite. |
<programme start stop channel> | Yksi aikataulutettu ohjelma. channel-arvon on vastattava <channel id>-arvoa. |
<title> | Ohjelman nimi. |
<desc> | Tiivistelmä. |
<category> | Laji. Tähän perustuvat -ikärajoitukset ja suodattimet. |
Aikaleimojen muoto yllättää kaikki
start="20260806180000 +0000"
Luetaan muodossa YYYYMMDDHHMMSS, jota seuraa UTC-poikkeama. Kyseessä on siis 6. elokuuta 2026 klo 18.00.00 UTC.
Poikkeama on se osa, jolla on merkitystä. Jos se puuttuu tiedostosta tai ilmoitettu poikkeama ei vastaa todellisuutta, opas latautuu ongelmitta mutta näyttää kaiken väärään aikaan. Tämä on täysin eri ongelma kuin tyhjä opas, ja se korjataan aikavyöhykeasetuksista, ei lähteitä vaihtamalla. (Väärien aikojen korjaaminen.)
Yhdistäminen: miksi opas on tyhjä, vaikka tiedosto latautui
Tämä kannattaa ymmärtää, koska se selittää suurimman osan opasta koskevista ongelmailmoituksista.
Soittolistasi ja oppaasi ovat kaksi erillistä tiedostoa, jotka on yhdistettävä toisiinsa. Yhdistäminen tapahtuu tunnisteen perusteella.
M3U-tiedostossa:
#EXTINF:-1 tvg-id="example.news.us" tvg-logo="…",Example News
http://example.com/news.m3u8
XMLTV-tiedostossa:
<channel id="example.news.us">
tvg-id-arvon on oltava sama kuin channel id-arvo. Täsmälleen sama — kirjainkoko ja välimerkit mukaan lukien.
Kun ne täsmäävät, kohde näyttää ohjelma-aikataulunsa. Kun ne eivät täsmää, kohteella näkyy tyhjä opas, eikä vika ollut tiedostossa. (Tämän M3U-puoli.)
Siksi ”Lisäsin oppaan, mutta mitään ei tapahtunut” ei yleensä johdu soittolistasta eikä oppaasta. Ongelma on siinä, ettei niiden tunnisteita ole sovitettu yhteen. Eri alueen kattava opas kuin soittolistasi lataa tuhansia ohjelmia, joista yksikään ei vastaa kohteitasi.

Opaslähteen tarkistaminen ennen siihen luottamista
Ennen kuin syytät soitinta, tarkista tiedosto.
1. Onko se pakattu? Monet lähteet toimitetaan muodossa .xml.gz. Se on normaalia — useimmat soittimet käsittelevät sen. Jos tarkistat tiedoston käsin, pura pakkaus ensin.
2. Sisältääkö se todella lähteesi? Hae tiedostosta yhtä tvg-id-arvoistasi. Jos sitä ei löydy, opas ei kata listaasi, eikä mikään asetus muuta asiaa.
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"
Ensimmäinen kertoo, kuinka monta lähdettä tiedosto ilmoittaa. Toinen kertoo, kuuluuko omasi niiden joukkoon.
3. Kattaako se hyödyllisen ajanjakson? Tarkista aikaisimmat ja myöhäisimmät start-arvot. Jotkin ilmaiset oppaat sisältävät vain 24 tuntia, jotkin kaksi viikkoa. Eilen päättynyt opas näyttää aivan samalta kuin rikkinäinen opas.
4. Kuinka suuri se on? Täydet valtakunnalliset oppaat ovat pakkaamattomina kymmeniä tai satoja megatavuja. Se on normaalia ja siksi ensimmäinen lataus voi kestää televisioboksilla minuutteja. (Ilmaiset XMLTV-lähteet.)
Yleiset virheet
Oikean maailman opastiedostot rikkoutuvat ennakoitavilla tavoilla:
- HTML-virhesivu tallennettuna muodossa
.xml. Avaa tiedosto. Jos ensimmäinen rivi on<!DOCTYPE html>, lataus epäonnistui ja virhe tallentui tiedostoon. - Escapettomat et-merkit. Otsikossa oleva paljas
&merkkien&sijaan tekee XML:stä virheellistä ja voi keskeyttää koko jäsennyksen. Yksi virheellinen otsikko, eikä opasta ole lainkaan. - Päällekkäiset
<channel id>-merkinnät. Sama tunniste on ilmoitettu kahdesti; toiminta riippuu soittimesta. - Ohjelmat, joilla ei ole vastaavaa kanavaa. Aikataulumerkinnät, joiden
channel-attribuutti ei vastaa mitään ilmoitettua<channel id>-attribuuttia. Ne hylätään hiljaisesti. - Puuttuvat
stop-ajat. Jotkin kerääjät jättävät ne pois ja olettavat seuraavan ohjelman alkamisajan määrittävän päättymisajan. Kaikki soittimet eivät päättele sitä, jolloin aikatauluun jää aukkoja.
Voinko kirjoittaa tai muokata oppaan itse?
Kyllä. Kyseessä on XML, joten mikä tahansa tekstieditori käy, ja pieneen, itse kuratoituun kokoonpanoon se on täysin käytännöllinen ratkaisu.
Hyödyllisiä muokkauksia:
- Vaihda
<channel id>-arvo vastaamaantvg-id-arvoa, jota soittolistasi jo käyttää — usein helpompaa kuin satojen soittolistarivien muokkaaminen. - Karsi tiedostoa. Poista tarpeettomat
<channel>- ja<programme>-elementit. Pienempi tiedosto latautuu paljon nopeammin rajoitetuilla laitteilla. - Korjaa poikkeama, jos kaikki ajat ovat tasaisesti väärässä.
Kaksi sääntöä: tallenna UTF-8-muodossa ja pidä tiedosto hyvin muodostettuna — yksi escapetoimaton & voi viedä koko oppaan.
UKK
Miltä EPG-tiedosto näyttää?
Pelkkää XML:ää, jossa on kahdenlaisia elementtejä: <channel> ilmoittaa jokaisen lähteen ja <programme> antaa jokaisen aikataulutetun kohteen alkuajan, päättymisajan ja nimen.
Missä muodossa XMLTV on?
XML-muodossa, yleensä muodossa .xml tai gzip-pakattuna muodossa .xml.gz. Aikaleimat ovat muodossa YYYYMMDDHHMMSS, jota seuraa UTC-poikkeama.
Miksi opas latautuu mutta ei näytä mitään?
Lähes aina siksi, etteivät soittolistasi tvg-id-arvot vastaa oppaan <channel id>-arvoja. Tiedosto latautui normaalisti, mutta sille ei ollut mitään yhdistettävää.
Miten tarkistan, kattaako opas lähteeni?
Lataa tiedosto, pura pakkaus tarvittaessa ja hae yhtä tvg-id-merkkijonoistasi. Jos sitä ei löydy tiedostosta, opas ei kuvaa listaasi.
Miksi opastiedostoni on niin suuri?
Kansallinen opas, jossa on kahden viikon aikataulut sadoille lähteille, on luonnostaan kymmeniä tai satoja megatavuja. Se on odotettua ja siksi ensimmäinen lataus on hidas.
Voinko muokata XMLTV-tiedostoa?
Kyllä, millä tahansa tekstieditorilla. Tallenna tiedosto UTF-8-muodossa ja pidä XML hyvin muodostettuna — yksi escapetoimaton & voi rikkoa koko jäsennyksen.
Yhteenveto
- XMLTV sisältää täsmälleen kaksi asiaa:
<channel>-määritykset ja<programme>-merkinnät. - Aikaleimat ovat muodossa
YYYYMMDDHHMMSS+ UTC-poikkeama — väärä poikkeama tarkoittaa, että data on oikein mutta ajat väärin. - Opas yhdistyy soittolistaasi täsmälleen ehdolla
tvg-id=channel id. Yhteensopimattomuus on tyhjän oppaan yleisin syy. - Tarkista ennen kuin syytät: pura pakkaus, etsi tunnistettasi grepillä ja tarkista päivämääräalue.
- Yksi escapetoimaton
&voi tehdä koko opastiedostosta virheellisen.
Onko sinulla soittolista ja opas-URL? Lataa Tuneline — lisää molemmat, niin ohjelmaopas täyttyy. Ilmainen ja ilman mainoksia.
— Shamir
Jaa artikkeli
Get Tuneline free
A clean, no-account media player for macOS, Windows, Linux, Android, TV, and iOS. Bring your own playlist.
Download freeAiheeseen liittyvät artikkelit
- Ethernet vs. Wi-Fi 4K-suoratoistossa: mikä oikeasti ratkaisee (2026)
- Gemini Google TV-alustalla vuonna 2026: mitä se oikeasti tekee
- Kodi 22 \"Piers\": Mitä uutta ja kannattaako päivittää?
- Linux Videon toisto vuonna 2026: Wayland, VA-API ja HDR
- Mikä on stream-URL ja miten tarkistat omasi? (2026)
Lue tämä artikkeli toisella kielellä
- 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 on mediasoitinsovellus. Se ei tarjoa, isännöi eikä jaa mitään sisältöä. Tuot oman soittolistasi itse, aivan kuten VLC:ssä.