Das TV-Programm auf der Xbox einrichten: EPG und XMLTV

Eine Programmadresse besteht oft aus 200 Zeichen Abfragezeichenkette. Es gibt genau einen Ort, an dem Sie das eingeben sollten, und das ist keine Spielkonsole.

Fügen Sie eine typische XMLTV-URL in einen Texteditor ein und zählen Sie sie. Die meisten laufen über 100 Zeichen und viele über 200, denn sie tragen ein Token, einen Regionscode und einen Formatparameter. Eine davon auf einer Konsole einzugeben, Zeichen für Zeichen über ein Bildschirmraster, ist eine schlechte Art, einen Abend zu verbringen.

Der Programmführer wird also dort eingerichtet, wo es eine Tastatur gibt, und die Konsole liest das Ergebnis. Die App sagt das auf dem Bildschirm selbst: Änderungen werden automatisch auf diese Xbox synchronisiert.

Die zwei Arten, einen Programmführer zu haben

Zwei Betriebsarten, die verschiedene Fragen beantworten.

Je Land ist die, mit der man anfängt. Sie wählen die Länder, die Sie sehen, und bekommen gepflegte Programmführer dafür. Nichts einzufügen, nichts am Laufen zu halten. Wenn Ihre Playlist keine eigenen Programmdaten hat, ist das die ganze Antwort.

Global ist für den Fall, dass Sie eigene XMLTV-Dateien haben, meist weil Ihr Anbieter eine veröffentlicht, die genau zu seinen Senderkennungen passt. Sie fügen bis zu 15 Adressen hinzu, jede bis zu 2048 Zeichen lang, und sie werden zusammengeführt.

Sie sind in der einen oder der anderen Betriebsart. Die Obergrenze liegt bei 15 statt unbegrenzt, weil jede Adresse eine Datei ist, die das Gerät von jemandem herunterladen und auswerten muss, bevor der Programmführer nutzbar ist, und ein Haushalt, der 40 davon hinzufügt, hat einen langsamen Programmführer gebaut und keinen vollständigen.

Der Modus je Land hat eine ähnliche Bremse: schalten Sie mehr als 5 Länder ein, und die App warnt Sie vor dem Speichern. Jedes Land ist ein weiterer Sammler, und die Kosten sind in dem Moment, in dem Sie das Häkchen setzen, nicht offensichtlich.

Wer die Datei herunterlädt

Ihre Geräte tun das. Nicht unsere Server.

Dieser Satz steht fast genau so auf dem Einstellungsbildschirm, und er ist eine Entwurfsregel und keine Einschränkung. Eine vom Benutzer angegebene Adresse wird nie serverseitig abgerufen. In der Praxis sieht Ihr Programmanbieter Anfragen von Ihrem Hausanschluss, eine Adresse mit einem privaten Token bleibt zwischen Ihnen und ihm, und ein Programmhost, der Rechenzentrumsbereiche blockiert, funktioniert für Sie trotzdem.

Die fünf angenommenen Dateiformen:

.xml     plain XMLTV
.xmltv   plain XMLTV, alternate extension
.gz      gzip
.zip     zip
.xz      xz

Komprimiert ist normal und meist vorzuziehen. Ein nationaler Programmführer kann als schlichtes XML mehrere zehn Megabyte groß sein und gzip-komprimiert nur einen Bruchteil davon. Der Behälter wird durch Lesen der ersten Bytes der Datei bestimmt, statt der Endung zu vertrauen, eine falsch benannte Datei öffnet also trotzdem. Wenn ein komprimierter Programmführer ankommt und die Hälfte Ihrer Sender fehlt, war die Datei vielleicht abgeschnitten statt fehlerhaft, und das hat eine bestimmte Signatur: ein Programmführer, der auf halbem Weg aufhört behandelt das.

Programmführer gehen auf schwer sichtbare Weise kaputt

Ein Vorlagenpaket aus 51 echten Programmdateien förderte 3 Auswertungsfehler zutage, und alle 3 hatten dieselbe Form: ein schlechtes Byte, und der gesamte Programmführer eines Anbieters ist weg. Ein nicht maskiertes kaufmännisches Und in einem Sendungstitel. Eine Datei, die UTF-8 deklariert und Latin-1-Bytes trägt. Ein verirrtes Steuerzeichen mitten in einer Beschreibung.

Alle 3 werden heute repariert statt tödlich zu sein, und die Reparaturen werden gezählt, ein Programmführer, der geflickt werden musste, sagt das also, statt still zu funktionieren. Der Grund, das hier zu erwähnen, ist, dass "mein Programmführer ist leer" fast nie eine falsch gesetzte Einstellung ist. Meist ist es die Datei.

Die andere Hälfte von "fast nie eine Einstellung" ist die Uhr, und das ist der Teil, den ich nicht erwartet hatte. Ich bin zur Definition des Formats zurückgegangen, um nachzusehen, was ein Zeitstempel ohne Zeitzone bedeutet, in der Annahme, die Antwort wäre "undefiniert". Ist sie nicht. Die Dokumentation sagt, dass UTC angenommen wird. In der Praxis veröffentlicht ein Erzeuger, der den Versatz weglässt, fast immer die örtliche Uhrzeit, die Spezifikation und die Dateien in freier Wildbahn widersprechen sich also, und ein Programmführer kann genau ein oder zwei Stunden danebenliegen, während jedes Byte darin korrekt ist. Warum die Programmzeiten falsch sind lohnt die Lektüre, bevor Sie schließen, dass Ihr Anbieter das Programm eine Stunde zu spät veröffentlicht.

Wo das Programm auf der Konsole auftaucht

Innerhalb von Live-TV, nicht als eigener Bildschirm. Schalten Sie einen Sender ein, öffnen Sie die Programmschicht, und die Schultertasten bewegen Sie tageweise. A sieht sich an, was ausgewählt ist; B schließt die Schicht und lässt Sie auf dem Sender.

Das eigenständige Programmziel in der Navigation ist weiterhin ein Platzhalter. Das ist der ehrliche Stand und nicht etwas, das Sie zu finden versäumt haben.

Wenn der Programmführer eingerichtet ist und die Konsole nichts zeigt, klären Sie zuerst, ob es ein Konfigurations- oder ein Datenproblem ist: ein leerer Programmführer geht diese Trennung durch, und was XMLTV ist erklärt, was in der Datei stehen soll.

Was dieser Artikel gemessen hat21 Behauptungen, jeweils mit den Beweisen dahinter
AnspruchBeweiseGezählt
Die Dateien des Programmführers werden von Ihren Geräten heruntergeladen, nicht von unseren Servern. Der Einstellungsbildschirm sagt das der Nutzerin oder dem Nutzer, statt es als Umsetzungsdetail stehen zu lassen.n = 131.08.2026
Ein Programmführer im globalen Modus nimmt höchstens 15 Quelladressen an, jede bis zu 2048 Zeichen lang, und die Grenze wird sowohl auf dem Client als auch auf dem Server durchgesetzt.n = 131.08.2026
Mehr als 5 Länder im Modus je Land einzuschalten löst vor dem Speichern eine Lastwarnung aus, denn jedes davon fügt einen weiteren Sammler hinzu, der abgerufen werden muss.n = 131.08.2026
Für eine Programmquelle werden fünf Dateiformen angenommen: .xml, .xmltv, .gz, .zip und .xz.n = 131.08.2026
Drei Auswertungsfehler, von denen jeder über ein einziges schlechtes Byte den gesamten Programmführer eines Anbieters verlieren konnte, wurden von einem Vorlagenpaket gefunden und behoben: ein nicht maskiertes kaufmännisches Und, als UTF-8 deklarierte Latin-1-Bytes und ein verirrtes Steuerzeichen.n = 5116.08.2026
Der Behälter wird durch Lesen der ersten Bytes der Datei bestimmt, statt der Endung zu vertrauen, wobei vier Formen an ihrer Kennung erkannt werden und alles andere als unkomprimiert behandelt wird.n = 401.09.2026
Die Dekomprimierung ist zweifach begrenzt: eine absolute Obergrenze von 2 GiB Ausgabe und eine Verhältnisgrenze von 400 zu 1 gegen die tatsächlich empfangenen komprimierten Bytes.n = 201.09.2026
Ein Programmführer gilt als nicht vertrauenswürdige Eingabe: Dokumenttypdefinitionen werden ignoriert, der externe Auflöser ist leer, und die Entitätsauflösung ist auf null Zeichen begrenzt.n = 301.09.2026
Elf Grenzen umgeben eine Auswertung: Tiefe 32, Text 64 KB, Beschreibung 4 KB, Titel 1 KB, 15 Mitwirkende, 6 Kategorien, 8 alternative Namen, Stapel von 512 Sendern und 2000 Sendungen, und eine Obergrenze von 6 Stunden Sendungsdauer.n = 1101.09.2026
Die Titelgrenze gibt es, weil eine Sendung zulässigerweise einen Titel je Sprache tragen darf und ein Programmführer, der vierzig davon ausgibt, sonst alle vierzig zu einem einzigen gespeicherten Titel verketten würde.n = 101.09.2026
Sendungen außerhalb des Aufbewahrungsfensters werden schon beim Auswerten verworfen, statt gespeichert und später aufgeräumt zu werden, standardmäßig 8 Tage vorwärts und 1 zurück, begrenzt auf 14 und 7.n = 101.09.2026
Eine Auswertung liefert sieben Felder zurück, darunter die Anzahl verworfener Einträge und sowohl die komprimierten als auch die unkomprimierten Byte-Zahlen, eine abgeschnittene Datei ist also von einer bloß gefilterten unterscheidbar.n = 701.09.2026
Die Aufnahme des Programmführers unterscheidet acht Fehlerarten und hält eine Dekomprimierungsgrenze und eine Sicherheitsgrenze von einem gewöhnlichen Netzwerkfehler getrennt.n = 801.09.2026
Ein Zeitstempel im Programmführer ohne ausdrückliche Zeitzone ist nicht undefiniert: die Dokumentation des Formats selbst sagt, dass UTC angenommen wird.xmltv.dtd, date field documentation, verbatim: "You can also append a timezone to the end; if no explicit timezone is given, UTC is assumed."SpezifikationNicht zutreffend
Eine manuelle Programmkorrektur wird auf Profilebene gegen einen quellenfreien Senderschlüssel gespeichert, eine Korrektur deckt also jeden Anbieter ab, der diesen Sender führt.n = 101.09.2026
Die beiden Betriebsarten des Programmführers sind ein geschlossenes Paar, im Ansichtsmodell als global und je Land benannt, und keine freie Einstellung.n = 201.09.2026
Der Zwischenspeicher des Programmführers gehört zu den ersten Dingen, die freigegeben werden, wenn die Konsole Speicherdruck meldet, was auf der älteren Hardware als häufig beschrieben ist.n = 101.09.2026
Die Konsole zeigt 7 Programmzeilen gegen die 12 des Desktops, aus demselben Ansichtsmodell mit einer Vorlage je Plattform.n = 201.09.2026
Die Programmschicht der Konsole zeigt genau 3 Tasten an, und das ist, was sie behandelt: ansehen, schließen und ein Tagesschritt auf den Schultertasten.n = 301.09.2026
Eine Programmadresse wird bis zu 2048 Zeichen angenommen, und deshalb liegt die Obergrenze dafür, wie viele Sie hinzufügen können, bei 15 und nicht bei einer Längenbeschränkung.n = 101.09.2026
Auf der Konsole ist das Programm eine Schicht innerhalb von Live-TV und kein eigenes Ziel. Der eigenständige Programm-Eintrag in der App-Navigation ist weiterhin ein Platzhalterbildschirm.n = 131.08.2026