TVHeadend in Docker mit DVB-T2 und IPTV

  • Hi,

    nach dem aktuellen Update meines Libreelec Rechners ist mein TVHeadend-Server im Eimer. Da es im Libreelec Forum nicht viel Feedback dazu gab, außer, ich könnte es neu installieren, habe ich mir gedacht, ich probiere mal eine Dockerinstallation aus. Da ich demnächst ne SelbstbauNAS/Homeserver aufbauen will, wo die TV-Karte dann auch hinzieht, kann das vlt. eh nicht schaden. Webgrabplus habe ich bereits im Docker zum laufen bekommen.

    Ich stehe aber jetzt beim einrichten des TVHeadend Containers auf dem Schlauch. In der Anleitung https://forum.libreelec.tv/thread/6721-li…al-docker-info/ steht folgendes:

    Zitat

    Host vs. Bridge
    If you use IPTV, SAT>IP or HDHomeRun, you need to create the container with --net=host and remove the -p flags. This is because to work with these services Tvheadend requires a multicast address of 239.255.255.250 and a UDP port of 1900 which at this time is not possible with docker bridge mode.If you have other host services which also use multicast such as SSDP/DLNA/Emby you may experience stabilty problems. These can be solved by giving tvheadend its own IP using macavlan.


    Ich möchte gerne meine DVB-T2 Karte nutzen und natürlich gerne meinen Server dann auch über "IP-vom-Rechener":9981 erreichen. Aber ich möchte gerne zum Beispiel ARD alpha über IPTV hinzufügen, weil es dass hier nicht gibt. Macavlan habe ich nichts weiter zu gefunden und sagt mir gar nichts.

    Ich habe rausgefunden, dass es mit Emby wohl mittlerweile keine Probleme mehr gibt, weil Port 1900 nicht mehr benötigt wird. Vermutlich läuft es mit TVHeadend im Host mode und Emby im Bridge mode ohne Probleme.

    Offene Fragen:
    1. Wie bekomme ich die Picons, die im TVHeadend vorhanden sind und zum Beispiel im EPG richtig angezeigt werden auch im Client unter Libreelec? Ergänzung: Das Picon von ARD-Alpha, der über IPTV läuft und wo das Picon per URL von Kodinerds kommt, funktioniert wie erwartet. Bloß die Picons der DVB-T2 Sender fehlen.
    2. Meine EPG ist in Libreelec nach dem Neustart leer. Das war bei der nativen Installation anders.
    Nicht die Lösung. Funktioniert nicht zuverlässig manchmal fehlen einzelne Sender. A: Ich glaube in den EPG Einstellungen von TVH den Haken zu setzen, dass nach dem Scrapen die EPG auf Platte gespeichert werden soll, damit es nach einem Crash da ist, hat geholfen. Das herunterfahren ist wohl wie ein Crash.
    3. Bislang habe ich ein Addon genutzt, um das aufwachen und schlafen um eine geplante Aufnahme zu erreichen. Das funktioniert nicht mehr. Gibt es eine alternative?
    4. Die laufenden Docker Container verzögern Shutdowns oder Reboots, kann man wahrscheinlich nicht ändern, ist auch nicht super schlimm. Wenn mans optimieren kann, nehm ichs gerne mit.

    Gelöste Fragen:
    5. Ich habe unter dem Storage Ordner noch viele alte Aufzeichnungen. Die sehe ich jetzt in der neuen Installation nicht. Wie bekomme ich es hin, dass TVH die bereits vorhandenen Dateien als Aufnahmen integriert?
    A: Gibt keine offizielle Möglichkeit. Ich habe auf Seite zwei ein Skript, mit dem ich die Dateien einbinden konnte.

  • Ja, update habe ich zusammen mit anderen Addons angestoßen. Habe auch versucht noch mal die 9.0.2 zu installieren, aber das hat es auch nicht wieder zum leben erweckt.

    Aber wie gesagt, einen config ordner anzulegen für eine Dockerinstallation ist vielleicht praktisch. Habe die Hoffnung, dass ich einfach nur den config ordner zu Debian rüberziehen muss, um dann dort wieder allesfertig konfiguriert zu haben.

    Edit:Ich habe dort auch ein addon.[definition='1','0']log[/definition] gelassen, wo man sieht, dass es crasht.

  • Zum eigentlichen Thema:
    Vielen Dank an @hoppel118! Durch ein paar Nachrichten habe ich, zumindest glaube ich das, das Problem und die Notiz im DockerHub verstanden.
    Hauptproblem ist, dass ich nur marginale Kenntnisse von Docker und insbesondere Docker und Netzwerk habe ^^. Mein rudimentäres Verständnis von der Geschichte ist nun, dass der Container erst mal isoliert ist und gar nichts von dem Netzwerk und der IP der Maschine weiß. Standardnetzwerkmodus im Docker ist dann wohl Bridge und durch das Freigeben der Ports macht man im Prinzip ein Portfordwarding. Anscheinend kann Docker aber den Port 1900 nicht weiterleiten, weswegen man den Host Modus nehmen muss. Damit wird der Container komplett in das Netzwerk der Maschine integriert. Deswegen kann man auch die Portfreigabe weglassen, weil der Container damit automatisch auf alle Ports hört. Der hintere Teil bezieht sich dann darauf, wenn man noch andere Container oder Dienste laufen hat, die auf die selben Ports hören. Dann gäbe es nämlich Konflikte. Wie man das dann einrichtet, weiß ich noch nicht.

    Aktuell kann ich also einfach den Host-Modus nehmen und es sollte laufen. In Zukunft, wenn ich den TVHeadend Container auf dem Server verwenden will, auf dem auch Emby im Container läuft, wird es dann aber wohl Probleme geben und ich muss das irgendwie mit macvlan lösen.

    In dem Zusammenhang wundert mich, dass auf meiner NAS Emby im Bridge Modus läuft, und dort der Port 1900 auf 1900 gemappt wird. Das dürfte nach meinen neuen Erkenntnissen ja eigentlich gar nicht gehen. Emby braucht das wohl für DLNA. Ich habe keine Ahnung, wie sich DLNA bei Emby bemerkbar macht, vlt. läuft das auch einfach gar nicht bei mir.

  • Docker kann Port 1900 im Bridged Mode weiterleiten. Die Multicasts von UPnP/DLNA allerdings nicht. Die bleiben im Bridged Netz des Containers und damit ist das dann unbrauchbar. Somit bleiben dir dann nur der Host Mode und Macvlan.

    Gruß Hoppel

    frontend: nvidia shield tv 2019 pro | apple tv 4k | sonos arc 5.1.2 | lg oled65c97la
    backend: supermicro x11ssh-ctf | xeon | 64gb ecc | wd red | zfs raid-z2 | dd max s8

    software: debian | proxmox | openmediavault | docker | kodi | emby | tvheadend | fhem | unifi

  • Eine Frage nebenher. Irgendwie sehe ich auf der Docker Seite nicht ganz durch, welche Version denn dort die latest ist. Ist dsa 4.3 oder 4.2.
    Selbst auf der TVHeadend Seite blicke ich bei den Versionen nicht durch. Da findet man allerhand zu 4.2 und 4.4 aber nichts zu 4.3.
    Wenn latest 4.3 sein sollte. Gibt es dann einen Grund bei 4.2 zu bleiben? Wenn ich das mal richtig aufgeschnappt habe, sind die Konfigurationen davon nicht hundertprozent kompatibel.

  • Und noch eine Frage:
    EPG XML fileIf you have EPG data in XML format from a supplier, you can drop it in the data folder of your /config volume mapping. If it doesn't exist, create it.

    Wenn ich den Ordner /storage/docker/tvheadend als config-Ordner einbinde, soll ich dann dort einen Ordner "data" anlegen? Und kann ich dann im container von webgrabplus diesen Ordner als data einbinden? Dann könnten die ohne weiteren Overhead perfekt miteinander arbeiten. Klingt für mich logisch, aber nicht, dass die ins Gerangel kommen, wenn die auf die gleichen Ordner zugreifen.
    Wenn ich den Webgrabplus schon eingerichtet habe, aber einen anderen data ordner angegeben habe, wie kann ich dass jetzt ändern? Soll ich den Container löschen und neu anlegen oder geht das auch eleganter.

  • Ich hänge gerade daran fest, mein Webgrab++ File in TVHeadend zu integrieren. Ich habe den Conatainer mit dem latest image erstellt. Aber ich habe gar keine EPG Grabber Module Seite. Da ist einfach nichts. Auch ein Wechsel auf Expertenansicht brachte nichts.

    Außerdem sind meine alten Recordings nicht in TVHeadend importiert worden. Ich hätte gedacht, der Server erkennt, dass bereits Files in Recordings sind und integriert die.


    Edit: Das erste habe ich gelöst. Hatte vergessen, dass man unter den Einstelliungen generell auf Expertenansicht stellen muss.
    Ich mache im Startpost noch mal eine Liste mit den offenen Fragen. Ich habe nämlich auch wieder das Problem, dass ich die Picons zwar im Server richtig habe, was ich in der EPG im Browser sehe, aber in Libreelec sind die nicht zu sehen.

    Ich habe rausgefunden, dass es mit Emby wohl mittlerweile keine Probleme mehr gibt, weil Port 1900 nicht mehr benötigt wird. Vermutlich läuft es mit TVHeadend im Host mode und Emby im Bridge mode ohne Probleme.

  • Es sind noch ein paar Fragen hinzugekommen.


    Offene Fragen:
    1. Wie bekomme ich die Picons, die im TVHeadend vorhanden sind und zum Beispiel im EPG richtig angezeigt werden auch im Client unter Libreelec? Ergänzung: Das Picon von ARD-Alpha, der über IPTV läuft und wo das Picon per URL von Kodinerds kommt, funktioniert wie erwartet. Bloß die Picons der DVB-T2 Sender fehlen.
    3. Bislang habe ich ein Addon genutzt, um das aufwachen und schlafen um eine geplante Aufnahme zu erreichen. Das funktioniert nicht mehr. Gibt es eine alternative?
    4. Die laufenden Docker Container verzögern Shutdowns oder Reboots, kann man wahrscheinlich nicht ändern, ist auch nicht super schlimm. Wenn mans optimieren kann, nehm ichs gerne mit.
    5. Ich habe unter dem Storage Ordner noch viele alte Aufzeichnungen. Die sehe ich jetzt in der neuen Installation nicht. Wie bekomme ich es hin, dass TVH die bereits vorhandenen Dateien als Aufnahmen integriert?

    Gelöste Fragen:
    2. Meine EPG ist in Libreelec nach dem Neustart leer. Das war bei der nativen Installation anders.
    A: Ich glaube in den EPG Einstellungen von TVH den Haken zu setzen, dass nach dem Scrapen die EPG auf Platte gespeichert werden soll, damit es nach einem Crash da ist, hat geholfen. Das herunterfahren ist wohl wie ein Crash.

  • Zu 1.) Insofern du den linuxserver.io tvheadend Container verwendest, lies ab hier:

    Picons und TVHeadend

    Dort steht, wie ich es in Docker gelöst habe. Bei dem Container sind die picons direkt mit an Board. ;)

    Gruß Hoppel

    frontend: nvidia shield tv 2019 pro | apple tv 4k | sonos arc 5.1.2 | lg oled65c97la
    backend: supermicro x11ssh-ctf | xeon | 64gb ecc | wd red | zfs raid-z2 | dd max s8

    software: debian | proxmox | openmediavault | docker | kodi | emby | tvheadend | fhem | unifi

    Einmal editiert, zuletzt von hoppel118 (7. Dezember 2019 um 16:27)

  • Ich habe das schon gefunden. Damals hatte ich auch schon das Problem, aber nur die V4.2 nativ unter Libreelec. Jetzt habe ich den linuxserver/tvheadend-latest.
    Ich habe den oberen Haken entfernt. Der String bei den Channel-Icons war ja schon so. Ich habe den Pfad bei den Picons nicht gelöscht. Außerdem habe ich, wie ein paar posts weiter unten steht die Authentifizierung auf Both Plain und Digest gestellt. Wenn ich im EPG auf der Browserseite vom Server schaue, sind die Picons auch da. Aber in Libreelec einfach nicht.

    Ich habe auch im Libreelec PVR Settings den Teil mit den Picons resettet. Da passiert einfach nichts. Ich hab schon überlegt, ob ich vlt. einfach so ein etwas kaputtes System habe und ich Libreelec einfahc mal neu installiere. Aber eigentlich wollte ich vorher eine saubere Config hinbekommen.

  • Mach doch mal Screenshots. Steht evtl etwas im Log (Kodi, TVH-Docker).

    frontend: nvidia shield tv 2019 pro | apple tv 4k | sonos arc 5.1.2 | lg oled65c97la
    backend: supermicro x11ssh-ctf | xeon | 64gb ecc | wd red | zfs raid-z2 | dd max s8

    software: debian | proxmox | openmediavault | docker | kodi | emby | tvheadend | fhem | unifi

  • In meinem KODI.[definition='1','0']log[/definition] sehe ich folgendes, was mir aufgefallen ist:

    Code
    2019-12-07 18:27:19.736 T:139925983164544   DEBUG: ------ Window Init (MyPVRChannels.xml) ------
    2019-12-07 18:27:19.736 T:139925983164544    INFO: Loading skin file: MyPVRChannels.xml, load type: KEEP_IN_MEMORY
    2019-12-07 18:27:19.764 T:139925983164544   DEBUG: CGUIMediaWindow::GetDirectory (pvr://channels/tv/Alle Kanäle/)
    2019-12-07 18:27:19.764 T:139925983164544   DEBUG:   ParentPath = []
    2019-12-07 18:27:19.805 T:139925538207488   ERROR: CCurlFile::Stat - Failed: Couldn't connect to server(7) for http://HTPC/xxx@192.168.199.11:9981/imagecache/2
    2019-12-07 18:27:19.806 T:139925538207488   DEBUG: GetImageHash - unable to stat url http://HTPC/xxx@192.168.199.11:9981/imagecache/2

    Das taucht mehrmals auf mit anderen Zahlen. Vielleicht ist das der Versuch meines PVR-Clients die Bilder zu bekommen.

    So sehen die Settings aus:

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!