Configurer le guide TV sur Xbox : EPG et XMLTV
Une URL de guide fait souvent 200 caractères de chaîne de requête. Il n’y a qu’un seul endroit où vous devriez la saisir, et ce n’est pas une console de jeu.
Collez une URL XMLTV typique dans un éditeur de texte et comptez. La plupart dépassent 100 caractères et beaucoup dépassent 200, parce qu’elles transportent un jeton, un code de région et un paramètre de format. Saisir l’une d’elles sur une console, un caractère à la fois, à travers une grille à l’écran, est une mauvaise façon de passer une soirée.
Le guide se configure donc là où il y a un clavier, et la console lit le résultat. L’application le dit sur l’écran lui-même : les changements se synchronisent automatiquement vers cette Xbox.
Les deux façons d’avoir un guide
Deux modes, qui répondent à des questions différentes.
Par pays est celui par lequel commencer. Vous choisissez les pays que vous regardez et vous obtenez des guides maintenus pour eux. Rien à coller, rien à garder en état de marche. Si votre playlist n’a pas de données de guide en propre, c’est toute la réponse.
Global est pour le cas où vous avez vos propres fichiers XMLTV, en général parce que votre fournisseur en publie un qui correspond exactement à ses identifiants de chaînes. Vous ajoutez jusqu’à 15 URL, chacune jusqu’à 2048 caractères, et elles sont fusionnées.
Vous êtes dans un mode ou dans l’autre. Le plafond est de 15 plutôt qu’illimité parce que chaque URL est un fichier que l’appareil de quelqu’un doit télécharger et analyser avant que le guide soit utilisable, et qu’un foyer qui en ajoute 40 s’est construit un guide lent plutôt qu’un guide complet.
Le mode par pays a un frein similaire : activez plus de 5 pays et l’application vous avertit avant d’enregistrer. Chaque pays est un fragment de grabber de plus, et le coût n’est pas évident au moment où vous cochez la case.
Qui télécharge le fichier
Vos appareils. Pas nos serveurs.
Cette phrase figure sur l’écran des réglages presque mot pour mot, et c’est une règle de conception plutôt qu’une limitation. Une URL fournie par l’utilisateur n’est jamais récupérée côté serveur. En pratique, votre fournisseur de guide voit des requêtes venant de votre connexion domestique, une URL qui porte un jeton privé reste entre vous et lui, et un hébergeur de guide qui bloque les plages de centres de données fonctionne quand même pour vous.
Les cinq formes de fichier acceptées :
.xml plain XMLTV
.xmltv plain XMLTV, alternate extension
.gz gzip
.zip zip
.xz xz
Compressé est normal et en général préférable. Un guide national peut peser des dizaines de mégaoctets en XML brut et une fraction de cela en gzip. Le conteneur est déterminé en lisant les premiers octets du fichier plutôt qu’en faisant confiance à son extension, donc un fichier mal étiqueté s’ouvre quand même. Si un guide compressé arrive et que la moitié de vos chaînes manquent, le fichier a peut-être été tronqué plutôt que malformé, ce qui a une signature précise : un guide qui s’arrête à mi-chemin la couvre.
Les guides se cassent de façons difficiles à voir
Un jeu de fixtures de 51 fichiers de guide réels a fait remonter 3 défauts d’analyseur, et les 3 avaient la même forme : un octet fautif, et tout le guide d’un fournisseur disparaît. Une esperluette non échappée dans un titre de programme. Un fichier qui déclare UTF-8 tout en transportant des octets Latin-1. Un caractère de contrôle égaré au milieu d’une description.
Les 3 sont maintenant réparés au lieu d’être fatals, et les réparations sont comptées, si bien qu’un guide qui a eu besoin d’un rafistolage le dit au lieu de fonctionner en silence. La raison d’en parler ici, c’est que « mon guide est vide » n’est presque jamais un réglage que vous avez raté. C’est en général le fichier.
L’autre moitié de « presque jamais un réglage », c’est l’horloge, et c’est la partie que je n’attendais pas. Je suis retourné à la définition du format lui-même pour vérifier ce que signifie un horodatage sans fuseau horaire, en supposant que la réponse serait « indéfini ». Ce n’est pas le cas. La documentation dit qu’UTC est supposé. En pratique, un générateur qui omet le décalage publie presque toujours l’heure locale de l’horloge murale, donc la spécification et les fichiers dans la nature se contredisent, et un guide peut être décalé d’exactement une ou deux heures alors que chacun de ses octets est correct. Pourquoi les heures du guide sont fausses mérite d’être lu avant de conclure que votre fournisseur publie le programme avec une heure de retard.
Où le guide apparaît sur la console
À l’intérieur de la TV en direct, pas comme un écran à part. Syntonisez une chaîne, ouvrez la couche de programme, et les gâchettes vous déplacent d’un jour à la fois. A regarde ce qui est sélectionné ; B ferme la couche et vous laisse sur la chaîne.
La destination Guide autonome de la navigation est encore un écran de substitution. C’est son état réel, pas quelque chose que vous n’avez pas réussi à trouver.
Si le guide est configuré et que la console n’affiche rien, établissez d’abord s’il s’agit d’un problème de configuration ou d’un problème de données : un guide vide parcourt cette séparation, et ce qu’est XMLTV explique ce que le fichier est censé contenir.
Ce que cet article a mesuré21 affirmations, chacune avec les preuves derrière elles
| Réclamation | Preuve | Compté |
|---|---|---|
| Les fichiers de guide sont téléchargés par vos appareils, pas par nos serveurs. L’écran de réglage le dit à l’utilisateur au lieu de le laisser à l’état de détail d’implémentation. | n = 1 | 31 août 2026 |
| Un guide en mode global accepte au plus 15 URL de source, chacune jusqu’à 2048 caractères, et le plafond est appliqué à la fois côté client et côté serveur. | n = 1 | 31 août 2026 |
| Activer plus de 5 pays en mode par pays déclenche un avertissement de charge avant l’enregistrement, parce que chacun ajoute un fragment de grabber à récupérer. | n = 1 | 31 août 2026 |
| Cinq formes de fichier sont acceptées pour une source de guide : .xml, .xmltv, .gz, .zip et .xz. | n = 1 | 31 août 2026 |
| Trois défauts d’analyseur, dont chacun pouvait faire perdre tout le guide d’un fournisseur sur un seul octet fautif, ont été trouvés par un jeu de fixtures et corrigés : une esperluette non échappée, de l’UTF-8 déclaré sur des octets Latin-1, et un caractère de contrôle égaré. | n = 51 | 16 août 2026 |
| Le conteneur est déterminé en lisant les premiers octets du fichier plutôt qu’en faisant confiance à son extension, avec quatre formes reconnues par nombre magique et tout le reste traité comme non compressé. | n = 4 | 1 sept. 2026 |
| La décompression est bornée deux fois : un plafond absolu de 2 GiB en sortie et un plafond de ratio de 400 pour 1 par rapport aux octets compressés réellement reçus. | n = 2 | 1 sept. 2026 |
| Un guide est traité comme une entrée non fiable : les définitions de type de document sont ignorées, le résolveur externe est null, et l’expansion d’entités est plafonnée à zéro caractère. | n = 3 | 1 sept. 2026 |
| Onze limites bornent une analyse : profondeur 32, texte 64 KB, description 4 KB, titre 1 KB, 15 crédits, 6 catégories, 8 noms alternatifs, des lots de 512 chaînes et 2 000 programmes, et un plafond de durée de programme de 6 heures. | n = 11 | 1 sept. 2026 |
| Le plafond de titres existe parce qu’un programme peut légitimement porter un titre par langue, et qu’un guide en émettant quarante les concaténerait sinon tous les quarante en un seul titre stocké. | n = 1 | 1 sept. 2026 |
| Les programmes hors de la fenêtre de rétention sont écartés pendant l’analyse plutôt que stockés puis purgés plus tard, avec par défaut 8 jours en avant et 1 en arrière, bornés à 14 et 7. | n = 1 | 1 sept. 2026 |
| Une analyse renvoie sept champs, dont le nombre d’entrées écartées et les comptes d’octets compressés et décompressés, si bien qu’un fichier tronqué se distingue d’un fichier simplement filtré. | n = 7 | 1 sept. 2026 |
| L’ingestion de guide distingue huit types d’échec, en gardant une limite de décompression et une limite de sécurité séparées d’un échec réseau ordinaire. | n = 8 | 1 sept. 2026 |
| Un horodatage de guide sans fuseau horaire explicite n’est pas indéfini : la documentation du format elle-même dit qu’UTC est supposé.xmltv.dtd, date field documentation, verbatim: "You can also append a timezone to the end; if no explicit timezone is given, UTC is assumed." | Spécification | Sans objet |
| Une correction manuelle de guide est stockée au niveau du profil contre une clé de chaîne indépendante de la source, si bien qu’une seule correction couvre tous les fournisseurs qui portent cette chaîne. | n = 1 | 1 sept. 2026 |
| Les deux modes de guide forment une paire fermée nommée dans le modèle de vue global et par pays, pas un réglage en texte libre. | n = 2 | 1 sept. 2026 |
| Le cache du guide est l’une des premières choses libérées quand la console signale une pression mémoire, décrite comme fréquente sur le matériel le plus ancien. | n = 1 | 1 sept. 2026 |
| La console affiche 7 lignes de guide contre 12 sur le bureau, à partir du même modèle de vue avec un gabarit par plateforme. | n = 2 | 1 sept. 2026 |
| La couche de programme de la console annonce exactement 3 boutons, ce qui correspond à ce qu’elle gère : regarder, fermer, et un pas d’un jour sur les gâchettes. | n = 3 | 1 sept. 2026 |
| Une URL de guide est acceptée jusqu’à 2048 caractères, ce qui explique que le plafond porte sur le nombre d’URL que vous pouvez ajouter, 15, plutôt que sur une limite de longueur. | n = 1 | 1 sept. 2026 |
| Sur la console, le programme est une couche à l’intérieur de la TV en direct plutôt qu’une destination séparée. L’entrée Guide autonome de la navigation de l’application est encore un écran de substitution. | n = 1 | 31 août 2026 |