EPG für IPTV-Kanäle in Tvheadend einrichten und automatisch aktualisieren

Für die Bereitstellung von Elektronischen Programmführern (EPG) für IPTV-Kanäle in Tvheadend existieren zwei grundlegend verschiedene Ansätze:

Nutzung der EIT-Daten eines DVB-S-Transponders (sehr einfache Methode) Wenn mindestens ein Sender desselben Transponders (z. B. 12551 H bei Astra 19.2°) über DVB-S empfangen werden kann, lassen sich die vom Transponder übertragenen EIT/OTA-EPG-Daten auch für IPTV-Kanäle nutzen, die selbst nicht per Satellit empfangen werden (z. B. 3sat IPTV). Da die EPG-Daten für den gesamten Transponder gemeinsam übertragen werden, reicht der Empfang eines beliebigen Senders dieses Transponders aus, um dieProgramminformationen aller zugehörigen Sender – einschließlich nicht empfangener Kanäle – zu erhalten. Die Zuordnung erfolgt in Tvheadend über die „EPG-Reuse“-Funktion.

Import externer XMLTV-Daten (flexible, aber aufwändigere Methode) Alternativ können Programmdaten unabhängig von einem DVB-S-Empfang über externe XMLTV-Quellen eingepflegt werden. Hierzu wird eine XMLTV-Datei heruntergeladen, über einen Unix-Socket oder eine Datei in Tvheadend importiert und den IPTV-Kanälen manuell oder halbautomatisch zugeordnet. Diese Variante erfordert die Einrichtung eines zusätzlichen EPG-Grabbers sowie – für einen automatisierten Betrieb – ein entsprechendes Update-Skript (z. B. per Cron-Job) inklusive Fehlerbehandlung und Fallback-Mechanismen.

Die nachfolgenden Abschnitte beschreiben beide Verfahren detailliert. Die erste Methode (EPG-Reuse) ist in den meisten Haushalten mit vorhandenem Sat-Empfang die deutlich einfachere und wartungsärmere Lösung.


Übernahme der EPG-Daten vom DVB-S-Transponder

In der vorliegenden Konfiguration ist ein Empfang von 3sat über DVB-S nicht möglich. Es besteht jedoch ein stabiler DVB-S-Empfang von anderen Sendern, die auf demselben Transponder wie 3sat übertragen werden (12551 MHz Horizontal, SR 22000). Somit können die Transponder EPG Daten für den 3sat IPTV Stream verwendet werden. Diese Vorgehensweise gilt in den meisten Anwendungsfällen als die effizienteste, stabilste und wartungsärmste Lösung.

Voraussetzungen

– Mindestens einer der folgenden Sender ist über DVB-S empfangbar:
Das Erste HD, ZDF HD, arte HD, phoenix HD, KiKA HD
(Transponder: 12551 MHz H, Symbolrate 22000, FEC 5/6)
– Der Kanal 3sat ist als IPTV-Stream in Tvheadend eingerichtet und einem Kanal zugeordnet

Konfigurationsschritte

1. Zurücksetzen der EPG-Quelle
→ Konfiguration → Kanal / EPG → Kanäle
→ Kanal „3sat HD“ (IPTV) auswählen → Bearbeiten
→ Feld EPG-Quelle auf „Nicht gesetzt“ setzen
→ Änderungen speichern

2. Zuweisung der EPG-Daten über die Reuse-Funktion
→ Im Bearbeitungsfenster des Kanals „3sat HD“ zu den Experten-Einstellungen navigieren
→ Feld Benutze EPG von:
Einen Sender desselben Transponders auswählen, z. B.:
– Das Erste HD
– ZDF HD
– arte HD
– phoenix HD
→ Änderungen speichern und übernehmen

3. Überprüfung und Priorisierung des EIT-Grabbers
→ Konfiguration → Kanal / EPG → EPG-Grabber-Module
– Modul EIT: DVB Grabber muss aktiviert sein
– Priorität auf Wert 1 oder 2 setzen (höher als XMLTV-Module)
– Andere Grabber-Module (insbesondere XMLTV) gegebenenfalls temporär deaktivieren

4. Aktualisierung der EPG-Daten
– Automatische Aktualisierung abwarten (meist innerhalb von 10–60 Minuten)
– Alternativ: Manuelles Anstoßen des Internal EPG Grabber über die Benutzeroberfläche

Nach erfolgreicher Übernahme werden im Elektronischen Programmführer (EPG) für den Kanal 3sat HD die vollständigen EIT-Daten des Transponders 12551 H angezeigt. Kanäle des Transponders 12515 V (Vertical) sind nicht geeignet, da dort eine andere EIT-Tabelle übertragen wird.

Vorteile der Methode
– Keine Abhängigkeit von externen Programmdatenquellen
– Hohe Datenqualität (inkl. Genre, Episodeninformationen, detaillierte Beschreibungen)
– Vollständig wartungs- und kostenfrei
– Direkte Nutzung der nativen EIT-Daten von Astra 19.2° E


EPG-Daten aus externen Quellen beziehen (XMLTV-Methode)

Wenn kein DVB-S-, DVB-C- oder DVB-T-Empfang verfügbar ist, können Programminformationen (EPG) über externe XMLTV-Datenquellen bereitgestellt werden. Diese Lösung nutzt externe XMLTV-Quellen, ein automatisches Kanal-Mapping sowie ein Update-Skript das über einen Unix-Socket EPG Daten in Tvheadend importiert. Dadurch entsteht eine zuverlässige und weitgehend wartungsarme EPG-Versorgung. Ein täglicher Cron-Job sorgt für die automatische Aktualisierung.

  • Externe XMLTV-Quellen: Bis zu 14 Tage Programmvorlauf durch öffentlich aktualisierte Quellen; Unterstützung für komprimierte und unkomprimierte XML-Formate.
  • Kanal-Mapping: Einmalige manuelle Zuordnung im Tvheadend-Webinterface; dauerhafte Verknüpfung über standardisierte XMLTV-Channel-IDs.
  • Robustes Skript: Primärquelle (epgshare01) mit Fallback (open-epg); umfangreiche Fehlerbehandlung und Logging.
  • Automatische Updates: Täglicher Import (z. B. 04:30 Uhr) im Hintergrund; Integration in Systemd-Journal für zentrale Überwachung.

Voraussetzungen

– Tvheadend läuft nativ auf Debian (kein Docker)
– Externer XMLTV-Grabber ist aktiviert (External: XMLTV mit Socket /var/lib/tvheadend/epggrab/xmltv.sock)
– Der Benutzer „hts“ existiert und Tvheadend läuft unter diesem Benutzer
– socat ist installiert (sudo apt install socat)
– IPTV-Kanäle sind bereits in Tvheadend angelegt

EPG-Grabber einmalig konfigurieren

1. Tvheadend-Webinterface öffnen
→ Configuration → General → Base
→ User interface level = Expert → Save

2. EPG-Grabber aktivieren
→ Configuration → Channel/EPG → EPG Grabber Modules
→ External: XMLTV doppelt anklicken
→ Aktiviert = Ja
→ Priorität = 1
→ Pfad = /var/lib/tvheadend/epggrab/xmltv.sock (meist schon vorausgefüllt)
→ Save

3. Retention-Einstellungen setzen
→ Configuration → Channel/EPG → EPG Grabber
→ Speichere EPG periodisch auf Festplatte (Stunden) = 336 oder 720
→ Save EPG to disk after xmltv import = Ja (Häkchen)
→ Save

EPG-Quelle auswählen und testen

Empfohlene Quellen (Stand 2026):

Quelle URL / Befehl Größe Tage ca. Kommentar
open-epg (schnell) wget https://www.open-epg.com/files/germany1.xml -O /tmp/epg.xml ~1–5 MB 1–3 Tage Sehr aktuell, klein & schnell

Test-Import (nach Download):

Log prüfen (live):

Wichtige Zeilen:
xmltv: broadcasts tot= ... new= ... → Zahl > 0 = Erfolg
epgdb: broadcasts ... → zeigt Gesamtzahl

IPTV-Kanäle mit EPG verknüpfen

1. Configuration → Channel/EPG → Channels
2. Jeden IPTV-Kanal (z. B. 3sat) bearbeiten
3. Feld EPG Source oder XMLTV channel ID anklicken
4. Aus Dropdown den passenden Eintrag wählen (häufig: 3sat.de, 3sat, C3SAT, 3sat HD)
5. Speichern

Nach Mapping → EPG in Web-Interface oder Kodi nach kurzer Zeit sichtbar.

Automatisches tägliches Update (Cron-Script)

Script erstellen (ggf. germany1.xml und germany2.xml zusammenführen)

Script einrichten

Testlauf

Cron einrichten (täglich 04:30 Uhr)

Eintrag hinzufügen:


– EPG wird jetzt täglich automatisch aktualisiert
– Bei Problemen: /var/log/epg_update.log und journalctl -t tvheadend prüfen
– Für noch mehr Tage: im Script weitere wget-Befehle für germany2.xml etc. ergänzen und Dateien zusammenführen (cat file1 file2 > combined.xml)


CC_BY_NC_SAby Speefak

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Back To Top