Raspberry Pi : TV en direct avec tvheadend

Il existe de nombreuses possibilités d'utilisation du Raspberry Pi. L'une d'entre elles : le streaming d'un signal DVB dans le réseau, par exemple, pour pouvoir regarder la télévision en direct dans des pièces ne disposant pas d'une bonne réception de la TNT.

DVB-T et DVB-C simultanées, diffusées via tvheadend depuis un Raspberry Pi
DVB-T et DVB-C simultanées, diffusées via tvheadend depuis un Raspberry Pi

Ce dont vous avez besoin : un Raspberry Pi, a Bâton DVB-T qui est supporté par Linux ainsi qu'un client approprié (si vous ne voulez pas utiliser XBMC directement sur le Raspberry) et un Hub USBparce que les ports USB de la Raspberry ne fournissent pas assez de puissance. Dans mon cas, j'utilise cette solution pour pouvoir utiliser ma clé DVB-T avec Mac OS X, où elle n'est malheureusement pas directement supportée.

Entre-temps, j'ai modifié la configuration en Support DVB-C prolongée parce que la connexion du câble est mal placée dans le salon. Il est ainsi facile de distribuer la télévision numérique par câble dans plusieurs pièces - du moins si vous vous limitez aux chaînes non cryptées. Vous n'avez même pas besoin de beaucoup de pièces, les coûts proviennent principalement de la clé USB pour la DVB-T ou, encore plus chère, la DVB-C. La chose la plus importante est le support Linux, sinon vous aurez un problème si vous voulez TVHeadendend veut utiliser.

Liste d'achats pour la télévision en direct avec RaspberryPi
Les éléments suivants sont nécessaires pour pouvoir mettre en œuvre ces instructions :

Installation de la clé DVB-T sous Raspbian

Entre autres choses, j'utilise un Terratec Cinergy HT USB XEqui, tout d'abord, ne dispose pas du firmware approprié (des pilotes compatibles sont disponibles pour le Sundtek MediaTV Pro III). Au moyen d'une courte commande Linux (qui doit être exécutée sur la console), on obtient une liste de messages du noyau - il y a aussi une liste des fichiers de firmware attendus :

~# cat /var/log/dmesg

Sur linuxtv.org il y a les fichiers correspondants, celui qui correspond est simplement copié vers /lib/firmware Après un redémarrage au plus tard, le firmware est chargé et la clé DVB-T peut être utilisée. La sortie dmesg ne devrait maintenant montrer aucune erreur ou fichier manquant en rapport avec la clé. Dans mon cas, le résultat final ressemble à ceci :

dvb-usb : trouvé un 'Terratec Cinergy HT USB XE' en état froid, va essayer de charger un firmware
dvb-usb : téléchargement du firmware du fichier 'dvb-usb-dib0700-1.20.fw'.
dib0700 : le firmware a démarré avec succès.
dvb-usb : a trouvé un 'Terratec Cinergy HT USB XE' à l'état chaud.
dvb-usb : transmettra le flux de transport MPEG2 complet au démuxeur logiciel.
DVB : enregistrement d'un nouvel adaptateur (Terratec Cinergy HT USB XE)
DVB : enregistrement de l'adaptateur 0 frontend 0 (DiBcom 7000PC)...
xc2028 1-0061 : création d'une nouvelle instance
xc2028 1-0061 : type réglé sur XCeive xc2028/xc3028 tuner
xc2028 1-0061 : Chargement de 80 images de firmware à partir de xc3028-v27.fw, type : xc2028 firmware, ver 2.7
Keymap IR enregistré rc-dib0700-rc5
entrée : récepteur IR dans un récepteur DVB USB comme /devices/platform/bcm2708_usb/usb1/1-1/1-1.3/1-1.3.4/rc/rc0/input0
rc0 : récepteur IR dans un récepteur DVB USB comme /devices/platform/bcm2708_usb/usb1/1-1/1-1.3/1-1.3.4/rc/rc0
dvb-usb : programmer l'intervalle de requête à distance à 50 msecs.
dvb-usb : Terratec Cinergy HT USB XE initialisé et connecté avec succès.
usbcore : enregistrement du nouveau pilote d'interface dvb_usb_dib0700

Installation de tvheadend

tête de télé est un logiciel qui contrôle la clé DVB et fournit le flux de la chaîne respective dans le réseau. En outre, il existe un guide électronique des programmes (EPG), la possibilité de chronométrer les enregistrements (utile uniquement si un disque dur est connecté à la clé DVB). Raspberry Pi est connecté). Pour Raspbian il existe des paquets tvheadend prêts à l'emploi qui peuvent être facilement installés via aptitude : cela vous évite d'avoir à compiler les sources au préalable. Est tête de télé est installé et démarré, vous pouvez y accéder sous http://:9981 l'interface tvheadend.

Configuration du tvheadend

TVheadend Recherche de chaînes : Sélection de la zone
TVheadend Recherche de chaînes : Sélection de la zone

Avant de commencer à l'utiliser, vous devez bien sûr effectuer une recherche des chaînes. Bien qu'il existe des paramètres régionaux pour le balayage dans tvheadend, pour moi, à Munich, il ne fonctionnait qu'avec la valeur par défaut, qui balaie un spectre plus large.

liste des canaux de tvheadend
liste des canaux de tvheadend

Au final, 33 chaînes ont été trouvées, les superflues qui ne font référence qu'à une médiathèque sont filtrées afin de n'obtenir que les chaînes utilisables.

Via le lien de lecture, vous pouvez soit ouvrir le flux directement dans le navigateur (si le plug-in VLC est installé), soit obtenir un lien vers ce flux particulier, que vous pouvez ensuite ouvrir dans VLC. Cela vous permet de vérifier, même si c'est un peu gênant, si la configuration fonctionne correctement et si une image TV en direct est transmise.

Important : L'heure sur le Raspberry Pi doit être correcte, sinon il y aura des problèmes avec le guide électronique des programmes (EPG). La solution la plus simple est d'installer ntpdate, qui réglera correctement la date et l'heure au démarrage du Raspberry (si une connexion internet est disponible).

tvheadend avec tuner DVB-C et DVB-T

tvheadend avec deux tuners sur Raspberry Pi : en fonctionnement.
tvheadend avec deux tuners sur Raspberry Pi : le petit ordinateur atteint ses limites, mais ça marche.


tvheadend est capable de s'adresser à plusieurs tuners. Cela offre plusieurs avantages : d'une part, deux clients peuvent recevoir un programme différent indépendamment l'un de l'autre (ou vous pouvez enregistrer une autre chaîne), d'autre part, les faiblesses de réception peuvent être compensées (dans mon cas, la chaîne DMAX fonctionne plutôt mal via la DVB-C, mais via la DVB-T sans aucun problème. L'installation est simple : il suffit de configurer les deux clés DVB et d'affecter les chaînes souhaitées à celle qui doit les recevoir. Les clients n'en sont pas informés, mais reçoivent seulement une liste continue de canaux.

Au début, j'étais sceptique quant à la capacité du Raspberry Pi à gérer deux périphériques USB exigeants, mais overclocké à 900 MHz, cela ne semble pas poser de problème. Le streaming parallèle sur iPhone et iPad avec deux stations différentes fonctionne également de cette manière.

Clients pour tvheadend

VLC comme client tvheadend
VLC comme client tvheadend

Si vous utilisez Windows, vous pouvez utiliser un fichier Plugins support de rétrofit pour tvheadend. Il est également possible d'utiliser XBMC (par exemple également sur une Un boîtier TV Android comme mon ATV1200), une instruction correspondante si vous avez configuré tvheadend peut être trouvée par exemple ici. XBMC peut également être exécuté directement sur le Raspberry, de sorte qu'une image de télévision en direct est ensuite diffusée via la sortie HDMI.

Pour les appareils iOS, j'utilise l'application Boîte noirequi, à 5,99 euros, n'est pas l'un des moins chers, mais qui fonctionne avec tvheadend sans aucun problème.

DVB-C avec tvheadend : RTL à Munich

DVB-T et DVB-C simultanées, diffusées via tvheadend depuis un Raspberry Pi
DVB-T et DVB-C simultanées, diffusées via tvheadend depuis un Raspberry Pi

Avec l'aide d'un Sundtek MediaTV Pro III est également Support DVB-C est possible. D'une part, cela résout le problème de la trop grande distance entre la terminaison du câble et le téléviseur et de l'absence de câbles appropriés, et d'autre part, les chaînes de RTL Group peuvent à nouveau être reçues dans la région de Munich. Depuis le Raspberry Pi lui-même ne doit pas afficher une image vidéo mais seulement transmettre l'information, la performance est suffisante pour cela. De manière assez surprenante, la DVB-T et la DVB-C fonctionnent en parallèle avec deux clés USB sur le Raspberry Pi, et vous pouvez même diffuser deux chaînes simultanément.

Sinon, la solution fonctionne déjà très bien, même si la TNT est bien sûr également disponible dans les autres pièces sans aucun problème - ma première préoccupation était d'obtenir une installation fonctionnelle. Ce résultat a également été obtenu sans Overclocker Raspberry Pi de manière significative de devoir le faire.

Pour ceux qui veulent encore plus de puissance pour leur serveur domestique ou qui veulent exécuter d'autres services, ce post est recommandé : . Tvheadend fonctionne sur le Cubietruck comme sur le Raspberry Pi, mais il n'utilise pas autant de puissance CPU (mais un peu plus de puissance).

Mise à jour 08.09.2014 :
La FireTV Box d'Amazon devrait également prendre en charge XBMC, dans tous les cas il existe déjà une Instructions à ça. FireTV avec XBMC semble être une bonne combinaison pour un client HTPC qui peut également fonctionner comme un client TV pour tvheadend. Je continuerai à suivre le sujet ici sur le blog à l'avenir.

[amazon box="B07ZV9C6QF"]

25 commentaires

  1. Bonjour, quelles sont vos expériences avec le DVB-S2 ? J'ai entendu des choses plutôt négatives pour le moment car le port USB n'est tout simplement pas conçu pour un fonctionnement continu. Le faible budget s'est fait sentir dans le lecteur de carte SD et le port USB.

    Sinon, merci pour les suggestions, j'espère pouvoir bientôt configurer mon Pi comme enregistreur vidéo et dispositif de streaming.

    Salutations
    Andreas

    1. Je n'ai pas encore essayé le DVB-S2 parce que je n'ai pas d'antenne parabolique, mais en fonction de la date de livraison de la clé correspondante, j'essaierai le DVB-C en 2013, qui devrait avoir des débits de données similaires.

      J'avais déjà le Pi - sinon, bien sûr, cela peut aussi être fait avec n'importe quel autre ordinateur qui fonctionne sous Debian.

      1. Tout d'abord, merci pour ce superbe tutoriel ! J'ai d'abord une question : existe-t-il d'autres alternatives pour le DVB-C que le Sundtek MediaTV Pro III en connexion avec un Pi ? Par exemple, vous parlez de "2013 DVB-C" ici, qu'est-ce que c'est censé être exactement ?

        1. Oh, c'est probablement un peu trompeur : au moment du commentaire, je n'avais pas encore la clé DVB-C, le 2013 faisait référence au fait que je voulais l'essayer avant le Nouvel An.

          Je ne connais pas d'autre clé USB qui supporte à la fois le DVB-C et Linux sans aucun problème et qui offre également un bon support ; j'ai dû d'abord chercher la pièce Sundtek.

          Pour cela, il fonctionne très bien.

          1. Maintenant je comprends, merci pour la réponse rapide !

            J'ai actuellement raspbmc en fonctionnement, tvheadend fonctionnerait-il aussi correctement avec lui ? Il est également basé sur Debian mais devrait être plus gourmand en mémoire avec XBMC.

            Si ce n'est pas le cas, y a-t-il une possibilité d'installer Raspbian comme second système d'exploitation et de choisir ce qui doit être démarré à partir du PI au démarrage ?

            Je veux utiliser tvheadend principalement pour l'enregistrement, le streaming est juste un plus pour moi.

          2. Avec NOOBS (http://www.raspberrypi.org/downloads), vous pouvez installer plusieurs distris en parallèle (à condition que la carte SD soit suffisamment grande).

            Ce dont vous avez également besoin dans tous les cas si le Pi doit sortir la vidéo directement : les codes MPEG-2 : http://www.raspberrypi.com/ (sinon le décodeur matériel n'est pas utilisé).

            Si vous avez une clé DVB-T, vous pouvez simplement l'essayer pour voir si tvheadend et Raspbmc fonctionnent correctement en même temps. Mais ça devrait fonctionner.

          3. L'idée de la clé DVB-T est bonne, j'en ai encore une quelque part. Je vais le tester avec pour le moment. NOOBS semble également bon, je l'essaierais s'il ne fonctionne pas correctement avec Raspbmc. J'ai déjà activé les clés.

            Merci pour les conseils avisés, je ferai un compte-rendu après mes premiers essais.

          4. Cela a bien fonctionné avec la clé DVB-T ! Je vais maintenant acheter le Sundtek.

            Un grand éloge pour les excellentes instructions !

          5. Oui, le bâton Sundtek est tout aussi facile à mettre en place (même plus facile car vous n'avez pas à chercher le pilote). En ce qui concerne le tvheadend, cependant, la configuration est identique.

          6. Bonjour, je suis relativement nouveau dans ce domaine, j'ai donc une question pour commencer. Donc la clé Sundtek que vous avez mentionnée fonctionne bien avec la DVB-C et le Pi ? Je voudrais le connecter au Pi (avec un hub USB) et profiter de LiveTV sur la TV via le Pi. Est-ce possible, d'après ce que je comprends du blog ?

            Y a-t-il quelque chose que je dois prendre en compte - comme l'overclocking ou quelque chose de similaire ?

            Merci pour votre aide.

          7. Oui et non. Je l'utilise de telle sorte que le Raspberry Pi exécute tvheadend et ne lit pas directement le programme, mais le transmet aux autres appareils du réseau. Théoriquement, le Pi pourrait aussi faire les deux en même temps, mais seulement avec des codecs achetés et un overclocking - le streaming en lui-même le met à rude épreuve. Il vous faut donc deux Raspberry Pi pour profiter de tous les avantages.

  2. Bonjour, j'essaie actuellement de faire fonctionner le terratec cinergy ht usb xe sur un raspberry. Cependant, linux ne réussit à télécharger que le fichier xc3028-v27.fw, après quoi il est absent. Le bâton reste à l'état froid et ne peut être sélectionné dans tvheadend. Quelqu'un a-t-il une idée ?

    salutations moriz
    Rasbian Wheezy
    Noyau 3.10

    1. Vous avez donc téléchargé le fichier .fw ? L'avez-vous également copié dans le répertoire correspondant (/lib/firmware) ? Le système ne peut charger le fichier qu'à partir du répertoire.

      1. Donc un pas de plus. J'ai fait fonctionner le stick sans problème avec sudo apt-get install firmware-linux-nonfree. La clé est également reconnue dans TVHeadend sans hub actif. Mais il ne trouve aucun service. Si je connecte un hub actif entre les deux, la clé n'est plus trouvée dans TVHeadend.

        1. Avez-vous au moins redémarré tvheadend après être passé au hub actif ? tvheadend ne reconnaît les sticks que lorsqu'il redémarre.

          1. Oui, j'ai redémarré complètement. Il ne reconnaît pas du tout la clé lorsqu'elle est connectée à un hub. J'ai maintenant essayé 3 moyeux.

  3. Bonjour, c'est génial d'utiliser le Raspi et la clé DVB à bas prix pour distribuer la télévision sur le réseau domestique via TvHeadend. Je suis confronté au dernier obstacle pour obtenir TVHeadend via DNLA sur ma Smart TV. LIve stream ne fonctionne pas (jusqu'à présent) J'ai lu dans le www que vous devez créer la liste des chaînes manuellement et ensuite la rendre disponible via DNLA.
    Avez-vous eu une expérience dans ce domaine et avez-vous des conseils ?

    Salutations Tom

    1. Je n'ai pas encore essayé. J'utilise XBMC sur une Apple TV 2 comme client. Je ne savais pas jusqu'à présent que cela pouvait également se faire via DLNA. Quand j'y arriverai, je jetterai un coup d'œil à TVHeadend et DLNA.

  4. La solution complète fonctionne-t-elle pour les chaînes HD et la DVB-C ? Est-il possible d'enregistrer ces derniers sans saccades ?

    Merci beaucoup 😉

    1. Il faudrait que je l'essaie, mais si c'est le cas, cela ne fonctionne que pour les radiodiffuseurs publics qui diffusent en HD sans cryptage. Ça ne fonctionnera pas pour les stations privées avec cryptage.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *