Zum Inhalt
Tools › EPG Checker: XMLTV-Datei und Zeitangaben prüfen
Kostenlos · lokal im Browser

EPG Checker: XMLTV-Datei und Zeitangaben prüfen

XMLTV lokal prüfen: Sender, Sendungen, doppelte IDs und Zeitangaben auswerten. Mit Erklärungen zu EPG-Zuordnung und UTC.

Bereit. Eingaben werden lokal verarbeitet.

01 · Eigene Datei oder Demo

Beginne mit der Demo oder deinen vorhandenen Daten.

02 · Ergebnis verstehen

Die Anleitung erklärt die genaue Bedeutung und Grenzen.

03 · Im Player prüfen

Ein formales Ergebnis ersetzt keinen Wiedergabetest.

XMLTV prüfen, wenn der Programmführer leer oder verschoben ist

Ein funktionierender Fernsehsender und ein funktionierender Programmführer sind zwei verschiedene Dinge. Der Stream kann problemlos laufen, während die App keine Sendungstitel anzeigt oder die nächste Sendung zur falschen Uhrzeit einordnet. Dieser EPG-Prüfer hilft dir, eine vorhandene XMLTV-Datei besser zu verstehen. Er zählt Senderdefinitionen und Sendungen, sucht doppelte oder fehlende Kennungen und prüft unterstützte Zeitangaben. Die Auswertung erfolgt lokal im Browser anhand des eingefügten Textes.

Das Werkzeug ist eine praktische Strukturprüfung, kein vollständiger XMLTV-Zertifizierer. Es validiert nicht jedes mögliche Element gegen die gesamte DTD und überprüft keine tatsächlich ausgestrahlten Inhalte. Ein unauffälliger Bericht beweist deshalb nicht, dass dein Programmführer aktuell, vollständig oder in jeder App kompatibel ist. Er zeigt dir vielmehr konkrete Ansatzpunkte für die Fehlersuche, bevor du in der App wahllos Quellen oder Zeitzonen veränderst.

So nutzt du den EPG-Prüfer

Lade eine lokale XML-Datei oder füge ihren vollständigen Inhalt in das Textfeld ein. Eine URL allein genügt nicht: Der Prüfer lädt keine fremde EPG-Adresse nach. Wenn dein Anbieter einen komprimierten Download bereitstellt, entpacke ihn zunächst auf deinem Gerät. Unterstützt wird unkomprimierter XML-Text bis zwei MiB. Mit der Demo kannst du den Ablauf ausprobieren, ohne deine eigene Datei zu verwenden. Das Beispiel enthält einen Sender und eine Sendung mit ausdrücklich angegebener Zeitzone.

Nach dem Klick auf „Auswerten“ erscheinen die Zähler im Ergebnisbereich. Beginne mit der Frage, ob überhaupt Sendungen vorhanden sind. Eine Datei mit Senderdefinitionen, aber ohne programme-Einträge kann Namen und Logos beschreiben, liefert jedoch keinen zeitlichen Programmablauf. Umgekehrt kann ein XMLTV-Dokument Sendungen enthalten, ohne sämtliche Sender separat zu definieren. Der Bericht behandelt nicht deklarierte Sender deshalb als Hinweis und nicht pauschal als kaputtes XML.

Arbeite anschließend die auffälligen Zähler durch. Doppelte Senderkennungen, fehlende Titel oder ein Ende vor dem Beginn sind konkrete Hinweise auf Datenprobleme. Eine fehlende optionale Endzeit ist dagegen eine andere Art von Information. Unterscheide außerdem zwischen einer ungültigen Zeit und einem erlaubten Zeitformat, das dieses Werkzeug nicht auswertet. So verhinderst du, dass du eine zulässige, aber weniger gebräuchliche XMLTV-Datei unnötig veränderst.

Senderkennung ist nicht gleich Sendername

XMLTV verbindet Sendungen mit Sendern über Kennungen. Der sichtbare Anzeigename ist für Menschen gedacht, die Kennung für die Zuordnung. Wenn eine Playlist eine andere tvg-id verwendet als der Programmführer, kann ein Player den passenden Eintrag möglicherweise nicht automatisch finden. Zwei nahezu identische Namen sind deshalb noch kein Beweis für eine korrekte Verbindung. Prüfe bei einem einzelnen fehlenden Programmführer immer die tatsächlich verwendeten Kennungen.

Dieser Prüfer vergleicht die channel-Angaben der Sendungen mit den channel-Definitionen innerhalb derselben XML-Datei. Er vergleicht nicht gleichzeitig deine M3U-Datei mit dem EPG. Der Zähler „Sendungen ohne Senderdefinition“ beschreibt daher nur die interne Situation im XML-Dokument. Für eine vollständige Zuordnungsprüfung musst du zusätzlich die tvg-id deiner Playlist betrachten. Der M3U-Validator kann beim Auffinden entsprechender Metadaten helfen; die endgültige Zuordnung erfolgt in deiner Datenquelle oder im Player.

Eine doppelte Sender-ID verdient besondere Aufmerksamkeit. Mehrere Anzeigenamen innerhalb einer einzelnen Senderdefinition können sinnvoll sein, etwa für unterschiedliche Sprachen. Zwei getrennte channel-Elemente mit derselben Kennung sind dagegen etwas anderes. Der Bericht zählt solche Wiederholungen. Wenn du mehrere Programmführer zusammengeführt hast, überprüfe, ob du dieselben Sender mehrfach übernommen hast oder ob verschiedene Quellen zufällig identische Kennungen für unterschiedliche Programme verwenden.

Wie die Zeitprüfung funktioniert

Für die genaue Reihenfolge wertet das Werkzeug vollständige Angaben mit Jahr, Monat, Tag, Stunde und Minute aus; Sekunden sind optional. Unterstützt werden außerdem numerische Zeitzonenoffsets wie +0200 oder -0500. Die Werte werden für den Vergleich auf UTC umgerechnet. Dadurch ist ein Ende nicht allein deshalb falsch, weil es in einer anderen numerischen Zeitzone dargestellt wird. Entscheidend sind die tatsächlichen Zeitpunkte nach der Umrechnung.

Die XMLTV-Spezifikation nimmt UTC an, wenn keine Zeitzone angegeben ist. Der Bericht zählt solche Startangaben gesondert, behandelt sie aber nicht automatisch als ungültig. Das ist wichtig, weil die Vermutung „ohne Offset immer lokale Zeit“ zu falschen Korrekturen führen würde. Wenn eine App andere Annahmen verwendet oder eine Quelle unbeabsichtigt Ortszeit ohne Offset liefert, kann die Anzeige trotzdem verschoben sein. Diese Abweichung musst du anhand der Quelle und der App-Einstellungen klären.

XMLTV erlaubt auch verkürzte Datumsangaben und benannte Zeitzonen. Der lokale Prüfer bewertet diese Formen nicht vollständig und weist sie als „Zeitformat nicht ausgewertet“ aus. Er behauptet damit keinen Formatfehler. Ungültige Kalendertage innerhalb des unterstützten vollständigen Formats werden dagegen erkannt. Ebenso wird gezählt, wenn eine vorhandene Endzeit nicht nach dem Beginn liegt. Eine fehlende stop-Angabe bleibt ausdrücklich als optionaler fehlender Wert getrennt davon sichtbar.

Was die späteste Endzeit aussagt

Der Ergebnisbereich zeigt die späteste erfolgreich ausgewertete Endzeit in UTC. Dieser Wert gibt dir einen schnellen Anhaltspunkt, wie weit die Datei zeitlich reicht. Er ist aber kein Beleg dafür, dass jeder Sender bis zu diesem Zeitpunkt vollständig versorgt ist. Eine einzige weit in der Zukunft liegende Sendung kann den Maximalwert bestimmen, während andere Sender bereits am selben Abend enden. Prüfe die für dich wichtigen Sender deshalb zusätzlich im Player.

Die angezeigte Endzeit ist auch kein automatisches Aktualitätsversprechen. Eine alte Datei kann noch einzelne zukünftige Einträge enthalten; eine frisch heruntergeladene Datei kann Lücken haben. Ebenso können Daten für andere Regionen oder zeitversetzte Sender enthalten sein. Vergleiche bei Problemen einen konkreten Sender und einen konkreten Sendezeitpunkt mit der vorgesehenen Quelle. Das ist wesentlich aussagekräftiger als die bloße Gesamtzahl aller Sendungen.

Typische Meldungen verständlich eingeordnet

„Kein wohlgeformtes XMLTV-Dokument“ bedeutet, dass der XML-Parser den Text nicht als passendes Dokument lesen kann oder die tv-Wurzel fehlt. Häufig steckt eine HTML-Anmeldeseite, eine Serverfehlermeldung oder eine komprimierte Datei dahinter. Auch ein ungeschütztes kaufmännisches Und innerhalb von XML-Text kann die Struktur beschädigen. Prüfe zuerst den Dateianfang und die Herkunft, bevor du einzelne Zeichen auf Verdacht entfernst.

Fehlende Titel betreffen Sendungen ohne nichtleeres title-Element. Eine vorhandene Beschreibung ersetzt den eigentlichen Titel nicht unbedingt. Fehlende Senderkennungen erschweren die Zuordnung, selbst wenn ein schöner Anzeigename vorhanden ist. Der Prüfer zeigt hierfür zusammengefasste Zähler statt tausender Rohzeilen. Das hält die Auswertung auf Mobilgeräten übersichtlich. Er bietet jedoch keine automatische Reparatur, bei der fehlende Titel oder Kennungen geraten und anschließend als vermeintlich korrekte Daten gespeichert werden.

Eine übliche externe DTD-Deklaration für tv wird vor dem lokalen Parsen entfernt, ohne die referenzierte Datei anzufordern. Interne DTD-Blöcke und eigene Entity-Deklarationen verarbeitet dieses Werkzeug nicht. Das ist eine bewusst begrenzte Importfunktion, keine Aussage darüber, dass jede solche XML-Datei grundsätzlich unzulässig wäre. Benötigst du eine vollständige DTD-Validierung komplexer Quellen, verwende dafür ein geeignetes XML-Werkzeug außerhalb dieses einfachen Browserprüfers.

Von der Diagnose zur funktionierenden EPG-Anzeige

Wenn die Datei lesbar ist und Sendungen enthält, prüfst du im nächsten Schritt die EPG-Quelle in deinem Player. Stimmt der ausgewählte Sender mit der vorgesehenen Kennung überein? Hat die App die neue Datei tatsächlich geladen oder zeigt sie noch einen älteren Stand? Gibt es eine globale Zeitverschiebung und zusätzlich eine Einstellung pro Playlist? Dokumentiere zunächst die vorhandenen Werte, bevor du mehrere Einstellungen gleichzeitig änderst.

Bei einer systematischen Verschiebung solltest du einen eindeutig bekannten Sendezeitpunkt heranziehen. Vergleiche Quelle, UTC-Offset und Geräteeinstellung. Korrigiere dann genau die Stelle, an der die Abweichung entsteht. Eine pauschale Verschiebung kann kurzfristig helfen, aber beim Wechsel zwischen Sommer- und Winterzeit erneut falsch werden. Der Prüfer verändert deine Datei nicht und setzt keine Zeitzone in der App. Er liefert lediglich die Informationen, mit denen du diese Entscheidung gezielter treffen kannst.

Häufige Fragen zum XMLTV-Prüfer

### Wird meine EPG-Datei hochgeladen? Nein. Die Analyse läuft in der geöffneten Browserseite. Es werden keine EPG-Adressen, Bilder oder DTD-Dateien nachgeladen. Deine Eingabe wird weder in einem Konto noch im lokalen Browserspeicher abgelegt. Bereits vorhandene lokale Dateien bleiben selbstverständlich auf deinem Gerät.

Prüft das Tool Programmlücken und Überschneidungen?

Es prüft die Reihenfolge von Start und Ende innerhalb einer Sendung. Es berechnet keine vollständigen Lücken oder Überschneidungen zwischen sämtlichen Sendungen eines Kanals. Ein unauffälliger Zeit-Zähler bedeutet deshalb nicht, dass der ganze Tagesablauf lückenlos ist.

Kann ich die Demo als echten Programmführer verwenden?

Nein. Die Demo enthält ausschließlich Beispieldaten und einen erfundenen Sender. Sie zeigt, wie Eingabe und Bericht zusammenhängen. Für deinen Player benötigst du die zu deinem Zugang und deiner Senderliste passende tatsächliche Programmführerquelle.

Weiter mit deinem Setup

Passenden IPTV-Player finden → · M3U Validator

Technische Grundlagen: XMLTV format · XMLTV DTD