Suche

lichtschattenblog

Kategorie

TVHeadend

unbeaufsichtigte Installation von Kodi unter Windows

Vorab: Bei Verwendung der hier genannten Skripte und eventuell resultierenden Schäden übernehme ich keine Haftung. Jegliche Verwendung erfolgt auf eigene Gefahr.

 

Zur unbeaufsichtigten Installation und Deinstallation von Kodi gibt es ein paar Möglichkeiten dies auszuführen.

Wichtig ist vorab die Logik zur Konfiguration von Kodi zu verstehen. Die zusammenfassend sind:

  • eine Installation von Kodi im Silent Mode kann mit dem Argument /S durchgeführt werden
  • Anpassungen von Kodi werden unter Windows unterhalb %appdata% des jeweiligen Benutzers gespeichert
  • für eine angepasste Installation und Konfiguration müssen alle wichtigen Dateien zu den vorgenommen Anpassungen erkannt und gespeichert werden. Dies kann ggf. nur durch ausprobieren erfolgen
  • teilweise können Konfigurationsdateien aus älteren Kodi-Versionen problemlos übernommen werden. Ggf. erfolgt eine automatische Aktualisierung einiger Dateien, wie db-Dateien

In meinem Fall wurde ein Kodi in Version 17.6 verwendet. Abweichend zur Standardinstallation liegen Anpassungen zur Verwendung von tvheadend (pvr.hts), deutscher Oberfläche, dem Skin, reduzierten Menüs (keine Bilder, keine Musikdatenbank, keine Videodatenbank), reduzierten Benutzerrechten (aktiviertem Master-Password) und Verwendung einer Hama-Fernbedienung vor. In diesem Fall sind die Anpassungen in den folgenden Dateien gespeichert:

Wie kann nun die unbeaufsichtigte Installation erfolgen?

Zunächst kopieren wir das Verzeichnis kodi aus %appdata% bzw. c:\users\<dein benutzername>\AppData\Roaming in eine geeignete Freigabe (bei Verwendung meiner Skripte zusätzlich in den Unterordner appdata) auf einem Server und löschen alle nicht relevanten Dateien und Ordner in der Kopie. Wer Anpassungen in weiteren Addons durchgeführt hat, muss speziell die Dateien unterhalb …\kodi\userdata\addon_data berücksichtigen.

Anschließend kann die Verteilung automatisiert über eine Gruppenrichtlinie (gpo) oder wie in meinem Fall über einen Remoteinstallationsserver (Remote Installer von Firma emco software: https://emcosoftware.com/) erfolgen. Vorteil ist die Installation und Aktualisierung von Programmen zum laufenden Betrieb.

Anbei die von mir selbst erstellten Skripte. Die Verwendung mit diesen Skripten bei Installation von Kodi 17.6 war bisher unter Windows 10 problemlos. Unter Windows 7 gab es wenige Rechner wo die Installation nicht möglich war, da ein notwendiges Windows-Update nicht installiert werden konnte (bei manueller Installation erscheint eine Fehlermeldung die mit <Enter> bestätigt werden muss). In diesem Fall und Einsatz von Gruppenrichtlinien würde die Installation nicht erfolgreich sein und erst nach 15 Minuten zum Rechnerstart die Installation abgebrochen werden. Daher empfehle ich unter Windows 7 Kodi 16.

Anbei die drei Skripte, welche in der Freigabe gespeichert werden. In diesem Verzeichnis gibt es die Installationsdatei kodi-17.6-Krypton-x86.exe und das Unterverzeichnis appdata mit den entsprechenden Dateien vom kodi (<Verzeichnis als Freigabe>\appdata\kodi).

Hinweis: In meinen Skripten ist das Verzeichnis kodi unterhalb %appdata% weiterhin vorhanden!

 

install_kodi.bat

@echo off

set "install_file=%~dp0kodi-17.6-Krypton-x86.exe"
set "refresh_appdata_script=%~dp0kodi_refresh_appdata.bat"
set "win10_kodi_lnk=C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Kodi\Kodi.lnk"


:KILL_KODI_PROCESS
taskkill /F /IM kodi.exe /T > nul


:INSTALL_KODI
"%install_file%" /S


:REFRESH_APPDATA_KODI
call "%refresh_appdata_script%"


:CREATE_KODI_LNK
REM needs admin rights
if EXIST "%win10_kodi_lnk%" (

xcopy "%win10_kodi_lnk%" "%allusersprofile%\Desktop" /R /Y > nul

)

 

kodi_refresh_appdata.bat

@echo off

set "appdata_source=\\<servername>\kodi$\appdata"

if NOT "%ProgramFiles(x86)%" == "" (
if EXIST "%ProgramFiles(x86)%\kodi\kodi.exe" GOTO REFRESH_APPDATA_KODI
) else (
if EXIST "%ProgramFiles%\kodi\kodi.exe" GOTO REFRESH_APPDATA_KODI
)

GOTO END


:REFRESH_APPDATA_KODI
if NOT "%appdata_source%" == "" (
for /F "delims=*" %%a in ('dir /B c:\Users ^| find /V /I "TEMP" ^| find /V /I "Public" ^| find /V /I "Default.migrated"') do (
if EXIST "c:\users\%%a\AppData\Roaming\" (
echo try: xcopy "%appdata_source%" "c:\users\%%a\AppData\Roaming\" /E /C /I /R /Y
xcopy "%appdata_source%" "c:\users\%%a\AppData\Roaming\" /E /C /I /R /Y
)
)
)

:END

remove_kodi.bat

@echo off

set "win10_kodi_lnk=C:\Users\Public\Desktop\Kodi.lnk"


:KILL_KODI_PROCESS
taskkill /F /IM kodi.exe /T > nul


:START_UNINSTALL_KODI
if NOT "%ProgramFiles(x86)%" == "" (
if EXIST "%ProgramFiles(x86)%\kodi\uninstall.exe" ( "%ProgramFiles(x86)%\kodi\uninstall.exe" /S )
) else (
if EXIST "%ProgramFiles%\kodi\uninstall.exe" ( "%ProgramFiles%\kodi\kodi.exe" /S )
)

:CLEAN_APPDATA_KODI

for /F "delims=*" %%a in ('dir /B c:\Users ^| find /V /I "TEMP" ^| find /V /I "Public" ^| find /V /I "Default.migrated"') do (
if EXIST "c:\users\%%a\AppData\Roaming\Kodi" (
echo try: rmdir /S /Q "c:\users\%%a\AppData\Roaming\Kodi\"
rmdir /S /Q "c:\users\%%a\AppData\Roaming\Kodi\"
)
)

:REMOVE_DESKTOP_LINK
if EXIST "%win10_kodi_lnk%" (
del "%win10_kodi_lnk%"
)

 

Anbei ein paar Erläuterungen zum Skript install_kodi.bat:

  • %~dp0 bedeutet das Verzeichnis indem sich die install_kodi.bat befindet
  • %~dp0kodi-17.6-Krypton-x86.exe ist somit bei Ausführung \\<servername>\<freigabe>\kodi-17.6-Krypton-x86.exe
  • zu Beginn wird ein ggf. bestehender Kodi-Prozess beendet
  • die Installation von Kodi mit Option /S wird durchgeführt (großes S !!!)
  • kodi_refresh_appdata.bat wird gestartet
  • Verknüpfung zum Aufruf von Kodi wird auf den Desktop für alle Benutzer kopiert
  • mit diesem Skript kann auch eine Aktualisierung oder Neuinstallation von Kodi erfolgen

Ein paar Erläuterungen zum kodi_refresh_appdata.bat:

  • zu Beginn wird das Verzeichnis mit der AppData-Kopie von kodi definiert
  • Hinweis: sofern mehrere Verzeichnisse mit abweichender AppData-Kopie definiert werden müssen (Beispiel mehrere TVHeadend-Server), kann dies ggf. durch Abgleich mit dem Standardgateway erfolgen:
    ipconfig | find /I „192.168.x.x“ if %ERRORLEVEL% == 0 ( set „appdata_source=\\<servername>\kodi$\appdata_standort1“ )
  • es wird geprüft ob Kodi installiert ist und wenn ja werden die Kodi-Konfigurationsdateien für alle Benutzer auf dem jeweiligen System (außer Public, Temp und Default.Migrated) aktualisiert
  • dieses Skript kann separat bei einer bereits erfolgten Installation zur Konfigurationsaktualisierung verwendet werden
  • die Verwendung erfordert vollen administrativen Zugriff auf die Verzeichnisse der verschiedenen Benutzer

Ein paar WICHTIGE Erläuterungen zu remove_kodi.bat:

  • zu Beginn wird ein ggf. bestehender Kodi-Prozess beendet
  • die Deinstallation von kodi über uninstall.exe mit Option /S wird durchgeführt (großes S !!!)
  • für alle Benutzerprofile auf dem PC werden die Konfigurationsdateien vom Kodi gelöscht
    Wer dies nicht möchte muss die Zeile:
    rmdir /S /Q „c:\users\%%a\AppData\Roaming\Kodi\“
    löschen oder REM zu Beginn der Zeile:
    rmdir /S /Q „c:\users\%%a\AppData\Roaming\Kodi\“
    schreiben.
    also: REM rmdir /S /Q „c:\users\%%a\AppData\Roaming\Kodi\“
    Bei falscher Anwendung und Anpassung dieser Zeile besteht die Möglichkeit von Datenverlust. Ggf. diese Zeile löschen!!!
  • es wird die Desktop-Verknüpfung von Kodi gelöscht
Advertisements

Installation und Einrichtung TVHeadend auf einem Debian-Server mit Verwendung einer Tuner-Karte Cine S2 und Verwendung via Kodi

Historie Artikel:

  • Update 24. Oktober 2016 – Zusammenfassung Zeitprobleme EPG und Erweiterung um Troubleshooting bei Korrektur EPG, Serverzeit und Zeitzone
  • Update 2. Juni 2016 um 2. Variante zur Behebung Zeitprobleme EPG
  • Update 27. Mai 2016 um 1. Variante zur Behebung Zeitprobleme EPG

Bei diesem Eintrag geht es um die Installation und Einrichtung einer TVTuner-Karte Cine S2 V6.5 DuoFlex S2v4 von DigitalDevices unter Debian 8.4, mit anschließender Installation und Einrichtung von HTS Tvheadend 4.0.9-4. Zur späteren Verwendung wird Kodi 16.1 (Stand 24.04.2016) als Client genutzt.

Der Anwendungsfall beschreibt die Möglichkeit zum Sehen und Hören unseres deutschen Radio- und Fernsehangebots über Computer (Windows/Linux), Android-Tablet, Android-Smartphone, Amazon Fire TV-Stick, Raspberry Pi mit OpenELEC oder LibreELEC, jeweils auch über WLAN, im privaten Netzwerk, zum Beispiel abends im Garten.

In meinem Fall erfolgt die Verwendung eines Systems zur Verteilung des bestehenden SAT-Signals auf mehrere Endgeräte gleichzeitig über ein Kabel. Alternativ kann ein LNB mit mehreren Ausgängen verwendet werden. Hier empfehle ich dringend einen Fachmann zu Rate zu ziehen. Dieser verfügt über entsprechende Möglichkeiten zum Testen und kann vorab bestätigen, dass das Signal zur Verwendung wirklich anliegt. Sofern dies nicht sichergestellt ist, empfehle ich nicht die Anschaffung teuerer Hardware.

Folgende Punkte werden hier erläutert:

  • Vorauswahl der notwendigen TVTuner-Karte
  • Installation Debian 8.4 im Minimalzustand
  • Installation der Treiber für TVTuner-Karte Cine S2 V6.5 DuoFlex S2v4
  • Installation TVHeadend
  • Einrichtung TVHeadend
  • Verwendung TVHeadend innerhalb Kodi

Vorauswahl und Vorüberlegung zur Wahl der notwendigen TVTuner-Karte:

Vor dem Kauf einer entsprechenden Karte sind mehrere Punkte zu beachten. Dies sind:

  • Welcher Anschluss und welches Verfahren werden zur Signaleinspeisung verwendet?
  • Wie viele Clients werden maximal (auch langfristig gesehen) verwendet?
  • Wie viele Programme sollen mindestens gleichzeitig zur Verfügung stehen?
  • Wird eine CI-Karte für zusätzliche Inhalte benötigt?
  • Wie erfolgt die Übertragung des Satelitten-Signals? Über Mehrfach-LNB oder Verfahren wie Unicable?

Als erste notwendige Informationen möchte ich hierbei auf die Produktliste von DigitalDevices und den Senderlisten von Astra verweisen:

DigitalDevices bietet für unterschiedlichen Einsatzszenarien unterschiedliche Varianten an. In meinem Fall, den ich hier auch explizit beschreibe, wird das Signal über eine Sattelitenempfangsanlage  und einem Multischalter in das neue System eingespeist. Daher wird eine Karte mit S2 im Namen verwendet. S2 steht hierbei für die interne Verwendung eines DVB-S/S2-Tuner. Wird hingegen ein DVB-C (Kabel)-Tuner oder DVB-T-Tuner benötigt, so muss eine Variante mit CT gewählt werden. In meinem Fall bietet die von mir verwendete Karte 4 Eingänge die anschließend über ein zusätzliches DuoFlex-Modul mit 4 weiteren Eingängen erweitert werden kann und später beschrieben, wird. Hierzu wird die neue Karte mit zwei Flachbandkabeln mit der bestehenden direkt verbunden.

Ich bitte um Beachtung, dass ich hier nur den computerseitigen Bereich behandle, nicht jedoch den der SAT-Anlage. Diese bestand bereits im Vorfeld!

Die Möglichkeiten bei den Karten von DigitalDevices sind sehr groß, daher sollte im Vorfeld genau geprüft werden, welche Variante die sinnvollste im eigenen Sonderfall ist.

Für ganz kleine Szenarien empfehle ich zu prüfen, ob ggf. ein Raspberry Pi mit USB-Stick als Player oder Streaming-Server genutzt werden kann. Als Client kann zum Beispiel ein Android-Tablet genutzt werden. Es muss lediglich ein WLAN-Router beide Systeme verbinden. Multischalter, Mehrfach-LNB etc. könnten somit entfallen.

Zu den Senderlisten von Astra folgende Hinweise:

tvheadend_Astra_Senderliste

Über die Sortierung nach Frequenzbelegung ist am Beispiel von ARTE Deutschland HD, Das Erste HD, SWR Fernsehen BW HD und SWR Fernsehen RP HD zu sehen, dass alle über die gleiche Frequenz 11494 MHz verfügbar sind.

tvheadend_Astra_Senderliste_11494

Die Tuner-Karten können hierbei pro Eingang eine Frequenz mit den spezifischen Empfangsdaten gleichzeitig, mit den jeweiligen Programmen, empfangen. Somit stehen bei Verwendung der Frequenz 11494 MHz vier Sender gleichzeitig zur Verfügung. Je nach Frequenz und Standard-Technologie (SD, HD oder Radio) sind zusätzliche Programme pro Frequenz möglich.

Mit dem in Deutschland verfügbaren „kleinen“ Programm werden in etwa acht Frequenzen benötigt, die gleichzeitig zur Verfügung stehen müssen, um die entsprechende Programmvielfalt in etwa nutzen zu können. Das bedeutet, wenn wir acht Eingänge nutzen, dass wir acht Frequenzen gleichzeitig mit allen Programmen nutzen können, unabhängig ob wir zwei, vier, oder 60 Clients im Netzwerk verwenden. Alle Sender der acht Frequenzen würden uns gleichzeitig zur Verfügung stehen. Wichtig ist hierbei, dass zum Beispiel über ein Multischalter, für die acht Frequenzen, die Signale jeweils zur Verfügung stehen.

Bei Verwendung einer einfachen TV-Tuner-Karte mit zwei Eingängen bedeutet jedoch, dass wir maximal zwei Frequenzen mit allen Sendern nutzen können. Bei Verwendung von drei Clients gleichzeitig stehen somit nur 8 bis 12 Programme, je nach Frequenz, zur Verfügung. Werden nur zwei Clients gleichzeitig genutzt, sind wieder alle Programme möglich. In diesem Fall ist es sogar möglich zusätzliche Frequenzen zu hinterlegen. Zum Beispiel für das englischsprachige Programm.

In einem Haushalt mit maximal vier Personen und maximaler Verwendung von vier Clients mit Kodi ist somit eine Lösung mit mindestens vier Eingängen notwendig.

Bei Szenarien mit mehr als acht Clients gleichzeitig würde ich daher eine Lösung mit acht Eingängen verwenden und pro Eingang lediglich eine Frequenz zur Nutzung zuordnen. Bei einer Verwendung von lediglich zwei Eingängen und maximal zwei Clients würde ich alle Frequenzen pro Eingang zuordnen (auch mehr als der acht Frequenzen). Solange die Anzahl kleiner acht ist, würde ich immer mindestens die entsprechende Anzahl an Eingängen verwenden. Hierdurch ist der maximal mögliche Ausbau ohne Einschränkung der Frequenzen möglich. Bei einer Anzahl Clients größer der Anzahl an Eingängen würde ich maxmial eine Frequenz pro Eingang zuordnen. Somit wird der Fall vermieden, dass eine Meldung erscheint, dass der Adapter bereits in Verwendung ist.

In meinem Fall sind es mehr als acht Clients und ein nicht privater Einsatzbereich. Daher werden pro Eingang immer nur eine Frequenz zugeordnet.

Installation Debian 8.4 im Minimalzustand:

Debian 8.4.0 über netinst – CD mit:

  • SSH Server
  • Standard Systemwerkzeugen

installiert. Anschließend über die Kommandozeile das Netzwerk auf static geändert:

nano /etc/network/interfaces

debian_network_static_sample

Hinweis: ^ steht für die STRG-Taste. Somit mit STRG+o wird gespeichert und anschließend mit STRG + x wird nano beendet.

und ssh-Zugriff für root aktiviert.

nano /etc/ssh/sshd_config

wo wir PermitRootLogin without-password mittels # auskommentieren und PermitRootLogin yes einfügen.

debian_activate_ssh_root_user_sample

Behebung Zeitprobleme für EPG [Update zum 27. Mai 2016 und 2. Juni 2016]

Nach Abschluss der hier beschriebenen Installation musste ich feststellen, dass die Zeiten für den EPG im Kodi nicht korrekt waren. Auffällig für mich waren neben den Abweichungen EPG und laufendem Programm im Kodi, dass im Log des Servers die Zeit in der Zukunft lag und der Progress-Balken im Electronic Program Guide für kurze Sendungen nie zu sehen war. Zum Vergleich ein Beispiel mit Auswahl arte als Sender, wie es korrekt ist.

tvheadend_time_problem_epg

Nach mehreren Versuchen konnte ich eine entsprechende Lösung finden.

 

Behebung Zeitprobleme für EPG

Wir prüfen zur Installation des Servers die Zeitzone auf dem Server mit:

cat /etc/timezone

Zum Setzen der Zeitzone geben wir den folgenden Befehl ein:

dpkg-reconfigure tzdata

und legen mit Europa und Berlin die Zeitzone fest.

Ausgabe-Beispiel:

Current default time zone: 'Europe/Berlin'
Local time is now:      Fri May 27 13:15:15 CEST 2016.
Universal Time is now:  Fri May 27 11:15:15 UTC 2016.

 

Anschließend prüfen wir die Zeit im Debian und die der Hardware:

root@TVHeadend:~# date
Fr 27. Mai 13:25:16 CEST 2016
root@TVHeadend:~# hwclock --show
Fr 27 Mai 2016 13:26:14 CEST  -1.004662 seconds

In meinem Fall lag eine Zeitverschiebung der Local Time von einer Stunde zur „realen“ Zeit vor, die ich manuell korrigiert habe:

date 05271236
Fr 27. Mai 12:36:00 CEST 2016

Zur Info zu date: 05 ist der Monat, 27 der Tag, 12 die Stunde und 36 die Minute.

Alternativ kann auch ntp unter Debian aktiviert werden:

apt-get install ntp

Dann prüfen wir auf die verfügbaren Server:

ntpq -p

Ausgabe-Beispiel:

     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 cloud.a-schieb. .INIT.          16 u    -   64    0    0.000    0.000   0.000
 gingey.oranged. .INIT.          16 u    -   64    0    0.000    0.000   0.000
 s1.kelker.info  .INIT.          16 u    -   64    0    0.000    0.000   0.000
 lite.computer   .INIT.          16 u    -   64    0    0.000    0.000   0.000

Zusätzlich kann ein bestehender Server im eigenen Netzwerk (mit aktivem NTP-Dienst) durch anpassen der Datei /etc/ntp.conf genutzt werden, wo wir unterhalb

#server ntp.your-provider.example

eine Zeile mit:

server <zu hinterlegende Server-IP>

einfügen.

Danach starten wir den Dienst neu:

/etc/init.d/ntp restart

Wir prüfen erneut auf verfügbare Server:

ntpq -p

Hierbei sollte ein zusätzlicher Server zu Beginn zu sehen sein. Zum Forcieren der Übernahme der Zeit geben wir ein:

ntpd -s <hinterlegte Server-IP> -x

Mit

date

prüfen wir erneut, ob die Zeit nun korrekt ist.

 

Anschließend empfiehlt es sich die Hardware-Zeit an die vom PC zu synchronisieren. Dies erfolgt über:

hwclock --systohc

 

Installation der Treiber für TVTuner-Karte Cine S2 V6.5 DuoFlex S2v4

Sofern ein Proxy zur Installation genutzt werden muss, bitte folgenden Proxy-Einstellungen für hg, apt, wget und System setzen. Siehe hierzu: https://lichtschattenblog.wordpress.com/2016/04/21/proxy-unter-linux/

Ansonsten Ausgabe von:

uname –r

In meinem Fall: 3.16.0-4-amd64

direkt hinter:

apt-get install mercurial build-essential libproc-processtable-perl linux-headers-

setzen:

apt-get install mercurial build-essential libproc-processtable-perl linux-headers-3.16.0-4-amd64

und ausführen.

tvheadend_01_install_media_build_experimental

Ausgabe am Ende:

tvheadend_02_abschluss_install_media_build_experimental

Danach ins Verzeichnis /usr/src wechseln.

cd /usr/src

und Paketdateien herunterladen.

hg clone http://linuxtv.org/hg/~endriss/media_build_experimental/

Anschließend Treiber bauen und installieren:

cd media_build_experimental
make download
make untar
make
make install

Die Ausgaben am Ende sollten in etwa wie folgt aussehen:

tvheadend_05_abschluss_make_untar

tvheadend_06_abschluss_make

tvheadend_07_abschluss_make_install

Die Ausführung von make dauert recht lange. Einfach warten. 10 Minuten sind realisitisch. Ggf. sogar länger. Danach einen Neustart mit init 6 durchführen (war bisher immer notwendig – modprobe ngene und modprobe ddbridge führten nicht zum gewünschten Ergebnis ).

Installation TVHeadend:

Bei Verwendung eines Proxy und dem zuvor durchgeführten Neustart muss ggf. erneut der Befehl für den Proxy zum System gesetzt werden!

Schlüssel hinterlegen:

apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 379CE192D401AB61

Notwendige Paketquellen für apt hinterlegen:

echo "deb https://dl.bintray.com/tvheadend/deb jessie stable" | tee -a /etc/apt/sources.list

tvheadend_08_apt_sources

Bei Verwendung einer anderen/späteren Debian-Version ggf. jessie mit der korrekten Variante aktualisieren. Zum Vergleich einfach in die /etc/apt/sources.list den typischen Eintrag:

deb http://ftp.de.debian.org/debian/ <name> main

suchen und den Eintrag in <name> verwenden. Anschließend Paketquellen aktualisieren:

apt-get update

In meinem Fall musste zusätzlich

apt-get install apt-transport-https
apt-get update

ausgeführt werden. Anschließend tvheadend installieren:

apt-get install tvheadend

tvheadend_09_apt_install_tvheadend.jpg

Während der Installation werden Benutzer und Passwort abgefragt. Nach der Information bzgl. späterem Aufruf über http://<serverip&gt;:9981 zunächst die Installation abschließen. Zur Ausgabe creating user ist es eine längere Wartezeit typisch.

tvheadend_10_username

tvheadend_11_accessinfo

Einrichtung TVHeadend:

Nach Abschluss der Installation prüfen wir über einen Webbrowser (in meinem Fall Mozilla Firefox) die Installation durch Aufruf via http://servername:9981 und wechseln nach Eingabe von Benutzername und Passwort, welche wir zur Installation hinterlegt haben, in den Aktenreiter Configuration, dann DVB Inputs und anschließend zu TV adapters. Im Ergebnis sollte ein ähnliches Bild wie hier zu sehen sein.

tvheadend_12_config_dvbinputs_tvadapters

Spätestens jetzt müssen an den Eingängen die notwendigen Kabel korrekt angeschlossen werden.

Wichtige Einstellungen zu Beginn:

  • Debug-Logging aktivieren
  • Meldungen in der unteren Leiste ausgeben
  • Adapter aktivieren !!!

Zum Aktivieren des Debug-Logging wechseln wir in den Aktenreiter Configuration und anschließend zu Debugging. Hier aktivieren wir Debug to syslog und speichern die Auswahl über Apply configuration (run-time only). Anschließend aktivieren die Ausgabe der Meldungen in der unteren Leiste durch das doppelte Dach-Symbol rechts unten.

tvheadend_13_enable_debugging

Anschließend kann über die Console / putty-Sitzung über den folgenden Befehl das Logging ausgegeben werden.

tail -f /var/log/syslog | grep 'tvheadend'

Jetzt wechseln wir erneut in den Aktenreiter Configuration, dann DVB Inputs und anschließend zu TV adapters. Hier wählen wir auf der linken Seite die jeweilige Karte aus und aktivieren auf der rechten Seite unterhalb Basic Settings Enabled und speichern anschließend mit Save (ganz unten).

tvheadend_14_enable_adapter

Am Ende prüfen wir, ob wirklich alle aktiv sind. Alle weiteren Funktionen greifen auf dieser Einstellung und es werden keine Fehler etc. ausgegeben.

Über den Aktenreiter Configuration, dann DVB Inputs und und Networks wählen wir über Add und dem anschließenden Auswahldialog: DVB-S Network.

tvheadend_15_Add_Network

In Network Name vergeben wir einen sinnvollen Namen zum Einsatzzweck passend. Da ich hart die Netzwerke nach Frequenz trenne, wähle ich als Namen eine Kombination von Netzwerktyp und einer fortlaufenden Nummer. Da ich gezielt die Frequenzen zuordne, muss das Häckchen bei Network Discovery entfernt werden. Wer jedoch alle verfügbaren Sender sehen möchte, sollte dies weiterhin aktiv haben. Das System versucht dann alle verfügbaren Frequenzen zu ermitteln. Kleiner Hinweis: Erst an einer späteren Stelle werden die verfügbaren Kanäle zur entgültigen Bereitstellung gemappt. Anschließend Create auswählen.

tvheadend_16_Add_Network_Settings_dvbs01

Wichtig ist jetzt, da wir die korrekte Zeitzone auf unserem Server aktiviert haben, dass EIT Local Time bei allen Netzwerken NICHT aktiv ist.

Hinweis: EIT Local Time darf nur aktiv sein, wenn am Server als Zeit UTC aktiviert wurde und die Serverzeit der aktuellen Uhrzeit entspricht.

troubleshooting_tvheadend_kodi_epg_01

 

In meinem Fall habe ich für viere Eingänge ein jeweils eigenes Netzwerk erstellt:

tvheadend_17_Add_Network_dvb-s01-04

Wir wechseln erneut in den Aktenreiter Configuration, dann DVB Inputs und anschließend zu TV adapters. Hier wählen wir jeweils die Karte links aus und ordnen auf der rechten Seite der Reihe nach jeweils ein Netzwerk zu.

tvheadend_17b_Set_Network.jpg

Anschließend wechseln wir in den Aktenreiter Configuration, dann DVB Inputs und anschließend zu Muxes. Hier öffnen wir über Add den Dialog zur Hinterlegung der gewünschten Frequenzen. Zunächst wählen wir ein Netzwerk aus.

tvheadend_18_Add_Muxes_dvbs01

Dann hinterlegen wir für eine Sendergruppe die Frequenz und weitere Parameter. In meinem Fall waren dies:

  • 10744 MHz – Arte, Eins Plus, … (SR 22000, Polarisation: H, FEC 5/6)

die ich aus der Astra-Senderliste für SD-Standard übernommen habe. Für alle mit großen Endgeräten empfiehlt sich jedoch hier HD.

tvheadend_19_Add_Muxes_Arte

Im Ergebnis für die erste Frequenz:

tvheadend_20_Result_Add_Muxes_Arte

Anschließend erfolgt ein automatioscher Scan durch das System, ob zu den hinterlegten Informationen entsprechende Sender vorliegen. Wenn alles in Ordnung ist, werden die Sender unterm den Aktenreiter Configuration, dann DVB Inputs und anschließend Services aufgeführt. Werden keine Sender gefunden, dann zunächst prüfen, ob Eingaben fehlerhaft waren. Zusätzlich sollte bei Korrektur der Scan-Status auf Active gesetzt werden, da sonst ggf. kein erneuter Scan erfolgt.

 

tvheadend_21_Result_Services

Folgende weitere Frequenzen habe ich hinterlegt:

  • 11836 MHz – Das Erste, HR, WDR, … (SR 27500, Polarisation: H, FEC 3/4)
  • 11954 – ZDF, Kika, … (SR 27500, Polarisation: H, FEC 3/4)
  • 12110 – MDR, NDR, RBB, … (SR 27500, Polarisation: H, FEC 3/4)

tvheadend_22_Result_Muxes

Wodurch ich folgende Senderliste erhalten habe, bei der ich nicht gewünschte abwählte und anschließend über Save speicherte:

tvheadend_23_Result_Services.jpg

Anschließend müssen wir die verfügbaren mappen, damit diese später uns auf den Clients zur Verfügung stehen können. Dies machen wir über Map All …

tvheadend_24_Services_Map_All.jpg

… und Map.

tvheadend_25_Services_Map_All_Menu

Das Ergebnis sehen wir anschließend unterm Aktenreiter Configuration, anschließend Channel / EPG und dann Channels:

tvheadend_26_Channel

Damit anschließend die Programme über Clients genutzt werden können, muss ein entsprechender Benutzer mit entsprechenden Rechten hinterlegt werden. Hierzu wechseln in den Aktenreiter Configuration und anschließend Access Entries. Über Add öffnen wir den entsprechenden Dialog und hinterlegen Username, Password und aktivieren Streaming, Advanced Streaming und HTSP Streaming. Für die Nutzung in Kodi über das TVHeadend Addon muss HTSP Streaming aktiviert sein!

tvheadend_27_Add_User_Kodi

Im Ergbnis sieht es so aus.

tvheadend_28_Add_User_Kodi_Result.jpg

Tipps und Tricks:

  • Wenn nichts passiert, dann als erstes prüfen ob unter Configuration, DVB Inputs, TV Adapters diese wirklich aktiv sind. Dies war bisher immer mein Fehler, da die Option gut versteckt ist.
  • Bei Korrektur von Frequenzen immer Scan Status auf Active setzen:
    tvheadend_tipps_01_Scan_Status
  •  Aktualisierung über das Aktualisierungssymbol erzwingen:tvheadend_tipps_02_Refresh
  • Deaktivierung nicht benötigter Channel Tags, wie SDTV, im Aktenreiter Configuration, dann Channel / EPG und anschließend Channel Tags:tvheadend_tipps_03_ChannelTag_disable
    Dadurch wird später im Kodi verhindert, dass bei Wahl der Senderliste über links und rechts nicht zwischen den Gruppen gewechselt werden kann.
  • Bei Verwendung unterschiedlichster Übertragungswege und Clients kann es ggf. von Vorteil sein, bewusst Channel Tags zu hinterlegen. Zum Beispiel, in einem privaten Haushalt mit vier Eingängen am System und vier Clients bei gleichzeitiger Nutzung. Hier können alle Sender für HD und SD eingerichtet werden. Anschließend werden zwei Channel Tags definiert und ja nach Standard die Sender nur einer Gruppe zugeordnet. Zusätzlich deaktivieren wir den Standard-Channel Tag TV channels. Im Kodi kann dann über rechts und links zwischen den Sendergruppen, in der Senderliste, gewechselt werden. So kann zum Beipsiel im Garten, bei schlechter WLAN-Verbindung, trotzdem der Client genutzt werden.

Installation und Einrichtung von Kodi 16.1 (Stand 25.04.2016):

Zunächst laden wir die notwendigen Installationsdateien herunter oder führen ja nach System die Installation durch.

https://kodi.tv/download/

kodi_16_1_tvheadend01

Unter Windows wird der Installer heruntergeladen und anschließend gestartet. Nach dem ersten Next und I Agree wählen wir zunächst die PVR Add-ons ab und nur das gewünschte Tvheadend HTSP Client an. Wer zusätzlich wie ich mobil Kodi bei Freunden etc. nutzt kann zusätzlich den PVR IPTV Simple Client mitinstallieren. Durch die Abwahl der nicht gewünschten PVR Add-ons entfallen später automatische Aktualisierungen zum Start von Kodi.

kodi_16_1_tvheadend02

kodi_16_1_tvheadend03

Unter Linux müssen ggf. zu Kodi die PVR Add-ons zusätzlich installiert werden. Unter Android sind diese durch die Installation bereits verfügbar.

Nach dem ersten Start von Kodi wechseln wir zu System, dann Settings und anschließend zu Add-ons. Dann wechseln wir in das Verzeichnis My add-ons und anschließend zu PVR Clients.

Jetzt wählen wir Tvheadend HTSP Client mittels ENTER-Taste …

kodi_16_1_tvheadend04

dann Configure

kodi_16_1_tvheadend05

und tragen Namen oder IP-Adresse, sowie Benutzername und Passwort in den Dialog ein und schließen das Fenster über OK (Hinweis: Zur Sicherheit die Eingaben anschließend prüfen. Hier hatte ich 1x das Problem, dass meine Eingaben nicht übernommen wurden).

kodi_16_1_tvheadend06

Jetzt wählen wir in der Add-on Information Enable aus …

kodi_16_1_tvheadend07

und schließen die Ansicht 1x mit ESC-Taste. Jetzt empfiehlt es sich erneut mit ENTER in die Add-on Information zu wechseln, da ggf. Enable noch nicht aktiv ist (Bug über mehrere Kodi-Versionen). Sollte dies so sein, dann bitte erneut Enable auswählen. Anschließend mit 2x ESC-Taste wechseln wir wieder in das Settings Menü und wählen dann TV aus. Hier wählen wir auch Enabled aus …

kodi_16_1_tvheadend08

unmittelbar danach werden die Daten von TVHeadend importiert (siehe rechts oben).

kodi_16_1_tvheadend09

Bei Problemen wird in der Statusleiste eine entsprechende Information ausgegeben. Wenn dies entsprechend vorliegt, sollten zunächst Benutzername, Passwort, IP / Servername im Add-on geprüft werden. Zusätzlich prüfen, ob beim Add-on und TV beides auf enabled gesetzt sind. Im Log vom TVHeadend sind entsprechende Informationen zu sehen (sollte vorab im Webbrowser geöffnet sein).

tvheadend_29_kodi_connected

oder in einer Shell auf dem Server:

tail -f /var/log/syslog | grep 'tvheadend'

tvheadend_30_kodi_connected

Weitere Möglichkeit bei Problemen: Dem Benutzer im TVHeadend wurde nicht das Recht für HTSP Streaming zugeteilt.

Wenn alles in Ordnung ist, sehen wir spätestens jetzt (nicht bei allen Skins von Kodi verfügbar) im Hauptmenü TV und Radio.

kodi_16_1_tvheadend10

Bei Auswahl von TV sehen wir zum Beispiel:

kodi_16_1_tvheadend11

Mit der Taste e können wir auch in die EPG-Ansicht mit einer Tastatur wechseln. Es gibt jedoch weitere Möglichkeiten.

kodi_16_1_tvheadend12

Bei Auswahl eines Programms zum Beispiel im Vollbild:

kodi_16_1_tvheadend13

Mit der Taste c (im Vollbildmodus) wird die Kanalliste eingeblendet. Hier kann, wie bereits beschrieben durch rechts und links, die Ansicht durch die Channel Tags geändert werden (bitte im ersten Bild rechts oben All channels und im zweiten Bild TV channels beachten – in meinem Fall gibt es keine Abweichungen).

 

kodi_16_1_tvheadend14

kodi_16_1_tvheadend15

Wenn am Ende alles funktioniert, dann empfiehlt es sich das Debug-Logging in TVHeadend zu deaktivieren, unter Configuration und dann Debugging.

Troubleshooting – EPG, Serverzeit und Zeitzone:

Wer zur Installation ggf. eine falsche Zeitzone hinterlegt hat, hat anschließend das Problem, dass die Zeiten im EPG vom Kodi verschoben sind.

Wir prüfen hierbei zunächst ob die Zeiten und die Zeitzone am Server korrekt sind:

cat /etc/timezone
date
hwclock --show

Wenn nicht, dann bitte erneut im oberen Teil Behebung Zeitprobleme für EPG beachten.

Zusätzlich überprüfen wir am jeweiligen Client ob die Zeit und die Zeitzone korrekt ist.

Dann prüfen wir die Einstellung EIT Local Time für jedes Netzwerk im TVHeadend, dass diese Option nicht aktiv ist:

troubleshooting_tvheadend_kodi_epg_01

Zusätzlich empfiehlt es sich auf dem Server die EPG-Datenbank zu löschen. Dies erfolgt über:

cd /home/hts/.hts/tvheadend
service tvheadend stop
rm epgdb.v2
service tvheadend start

troubleshooting_tvheadend_kodi_epg_02

Nach einigen Sekunden wird eine neue epgdb.v2 erstellt.

Jetzt löschen wir zusätzlich im Kodi-Client die Datenbank für den PVR-Dienst über Einstellungen -> PCR-Dienst -> Allgemein -> Daten löschen.

troubleshooting_tvheadend_kodi_epg_03

 

Epilog:

Zusammenfassend empfinde ich persönlich die Installation und Einrichtung der TVTuner-Karten unter Debian 8.4 mittlerweile als recht einfach. Ebenso auch die Installation von TVHeadend. Vor ein paar Jahren war dies noch anders und recht kompliziert. Durch die Verwendung von Kodi auf diversen Clients ist es recht einfach auf sehr vielen Endgeräten Radio und TV zu empfangen

Für Radio direkt gibt es jedoch auch auch innerhalb Kodi ein sehr gutes Add-on.

Wer zum Beispiel in seinem Gartenhaus via Satellit oder DVB-T lediglich für ein Endgerät eine Möglichkeit benötigt, der kann auch einen Raspberry Pi mit geeignetem USB-Stick als Streaming-Server verwenden. Hier muss jedoch beachtet werden, dass nur wenige Sticks funktionieren. Ich kann derzeit auch keine entsprechende Variante empfehlen, da ich über keinen geeigneten USB-Stick verfüge.

Quellen und weitere Links:

 

Erstelle eine kostenlose Website oder Blog – auf WordPress.com.

Nach oben ↑