{"id":146,"date":"2011-11-01T15:01:02","date_gmt":"2011-11-01T14:01:02","guid":{"rendered":"http:\/\/mmed.roulleau.net\/?p=146"},"modified":"2022-09-22T12:33:47","modified_gmt":"2022-09-22T12:33:47","slug":"xmltv-remplir-la-programmation-dune-chaine-inconnue","status":"publish","type":"post","link":"https:\/\/mmed.roulleau.net\/?p=146","title":{"rendered":"XMLTV : Remplir la programmation d&rsquo;une cha\u00eene inconnue"},"content":{"rendered":"<p>MythTV, le plus puissant PVR open-source disponible, n&rsquo;est vraiment pas dou\u00e9 avec les cha\u00eenes pour lesquelles il ne dispose pas de programme TV. En l&rsquo;absence de flux de programmation XMLTV, l&rsquo;enregistrement est tr\u00e8s laborieux, jugez plut\u00f4t : lors d&rsquo;une visualisation en direct, il se fait par tranche d&rsquo;une demi heure sans possibilit\u00e9 de pr\u00e9ciser l&rsquo;heure de fin. Et depuis la grille de programmes, pas moyen de pr\u00e9ciser intuitivement la tranche horaire vis\u00e9e. On a vu mieux comme int\u00e9gration&#8230;<\/p>\n<p>Afin de pallier ce probl\u00e8me, j&rsquo;ai cr\u00e9\u00e9 un petit script python qui g\u00e9n\u00e8re un fichier XMLTV pour les cha\u00eenes qui n&rsquo;en disposent pas. Vous le trouverez ici : <a href=\"https:\/\/mmed.roulleau.net\/wp-content\/uploads\/2022\/09\/XMLTVFill.py_.zip\">XMLTVFill.py<\/a><\/p>\n<p>Il dispose de quelques param\u00e8tres, comme la granularit\u00e9 de programmation, le nombre de jour \u00e0 g\u00e9n\u00e9rer (\u00e0 partir de la date du jour), un d\u00e9calage horaire \u00e0 ajouter, et la liste des ID XMLTV pour lesquels la programmation doit \u00eatre faite. Je vous laisse les d\u00e9couvrir dans le fichier joint.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>MythTV, le plus puissant PVR open-source disponible, n&rsquo;est vraiment pas dou\u00e9 avec les cha\u00eenes pour lesquelles il ne dispose pas de programme TV. En l&rsquo;absence de flux de programmation XMLTV, l&rsquo;enregistrement est tr\u00e8s laborieux, jugez plut\u00f4t : lors d&rsquo;une visualisation en direct, il se fait par tranche d&rsquo;une demi heure sans possibilit\u00e9 de pr\u00e9ciser l&rsquo;heure [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[3,7],"tags":[29,37,41,55],"_links":{"self":[{"href":"https:\/\/mmed.roulleau.net\/index.php?rest_route=\/wp\/v2\/posts\/146"}],"collection":[{"href":"https:\/\/mmed.roulleau.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mmed.roulleau.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mmed.roulleau.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mmed.roulleau.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=146"}],"version-history":[{"count":1,"href":"https:\/\/mmed.roulleau.net\/index.php?rest_route=\/wp\/v2\/posts\/146\/revisions"}],"predecessor-version":[{"id":282,"href":"https:\/\/mmed.roulleau.net\/index.php?rest_route=\/wp\/v2\/posts\/146\/revisions\/282"}],"wp:attachment":[{"href":"https:\/\/mmed.roulleau.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=146"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mmed.roulleau.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=146"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mmed.roulleau.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=146"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}