Tvheadend – a TV streaming server and recorder for Linux

0

Tvheadend „all in one“ Anleitung basierend für Ubuntu 18.04 LTS

  • 1.)Installation Tvheadend mit Vaapi Hardware Transcoding (Intel ab Gen3)
  • 2.)Installation DVB Treiber Paket
  • 3.)Installation Channel Picons
  • 4.)Tvheadend Starten
  • 5.)Netzwerkzugriff der Aufnahmen über Samba

1.1

System aktuallisieren

sudo -s

apt-get update 

apt-get upgrade

apt-get dist-upgrade

reboot

1.2

Tvheadend installieren

sudo -s

cd /usr/src/

apt-get install build-essential git pkg-config libssl-dev bzip2 wget libavahi-client-dev zlib1g-dev libavcodec-dev libavutil-dev libavformat-dev libswscale-dev libavresample-dev vainfo libva-dev gettext cmake    libdvbcsa-dev libdvbcsa1


git clone https://github.com/tvheadend/tvheadend.git

cd tvheadend

./configure --enable-bundle --enable-ffmpeg_static --enable-libffmpeg_static --enable-libx264 --enable-libx265 --enable-vaapi --extra-libs=-lpthread

make -j4

make install

1.3

Tvheadend Startoptionen

Editor der Wahl benutzen, ich liebe „joe“

apt-get install joe

joe /lib/systemd/system/tvheadend.service

Folgendes einfügen und abspeichern :

[Unit]
Description=Tvheadend - a TV streaming server and DVR
After=syslog.target network.target auditd.service

[Service]
EnvironmentFile=/etc/default/tvheadend
ExecStart=/usr/local/bin/tvheadend -f -p /var/run/tvheadend.pid $OPTIONS
PIDFile=/var/run/tvheadend.pid
Type=forking
Restart=on-failure
RestartSec=54s

[Install]
WantedBy=multi-user.target

 

Environment anlegen :

joe /etc/default/tvheadend

Folgendes einfügen und abspeichern :

# Configuration file for the tvheadend service. 

OPTIONS="-c /var/spool/hts/config -u hts -g users -6 --http_port 9981 --htsp_port 9982 --http_root /tvheadend"

1.4

Verzeichnisse und User anlegen/ Rechte und Gruppen anpassen.

mkdir /var/spool/hts

adduser hts --system --no-create-home --disabled-password --disabled-login --ingroup users --home /var/spool/hts/

user hts, und alle benutzer in der gruppe „users“ berechtigen in /var/spool/hts schreiben zu dürfen.

chown -R hts:users /var/spool/hts/

chmod 770 /var/spool/hts/

Erklärung :

erste Ziffer steht für Benutzer, zweite für Gruppe, Dritte für alle anderen.

7 setzt rechte auf lesen+schreiben+ausführen.

Benutzer hts zur gruppe video hinzufügen (berechtigt für GPU nutzung/ transcoding)

usermod -aG video hts

Den eigenen benutzer zur gruppe users hinzufügen. (berechtigt deinen Benutzer auf erstellte Aufnahmen von hts)

usermod -aG users MeinUserName

2.1

DVB Treiber installieren

cd /usr/src/

git clone https://bitbucket.org/CrazyCat/media_build.git


cd media_build

apt-get install patchutils libproc-processtable-perl

./build

make install
depmod -a

2.2

Ubuntu daran hindern von alleine Updates einzuspielen

joe /etc/apt/apt.conf.d/20auto-upgrades

Folgenden inhalt anpassen :

APT::Periodic::Update-Package-Lists "0";
APT::Periodic::Unattended-Upgrade "1";

Anmerkung :

Der Grund dafür ist folgender :

Wir haben eben für unseren Kernel PASSEND die DVB Treiber kompiliert u. installiert.

Bei einem automatischen Kernelupdate würden diese nicht mehr funktionieren, müssten für den neuen Kernel neu übersetzt/kompiliert werden.


2.3

System neustarten um die neu kompilierten Kernelmodule zu laden.

reboot

3.1

Picons Installieren

sudo -s

cd /var/spool/hts

apt-get install curl

curl -L https://drive.google.com/uc?id={1nnA517CR7vHuxzim1z8W0ddRTrn_ea_M} >picons.tar.gz
tar -xvf picons.tar.gz
rm picons.tar.gz

Anmerkung : Die Picons sind von mir selbst erstellt! Astra+Hotbird

User hts erlauben auf picons zuzugreifen :

chown -R hts:users /var/spool/hts/picons-neu/*

chmod 770 /var/spool/hts/picons-neu/*

4.1

Tvheadend Starten

Tvheadend einmal aus der Konsole heraus starten.

/usr/local/bin/tvheadend -p /var/run/tvheadend.pid -C -c /var/spool/hts/config -u hts -g users -6 --http_port 9981 --htsp_port 9982 --http_root /tvheadend

Tvheadend läft nun unter http://deine-server-ip:9981/tvheadend

Mit z.b Firefox öffnen und admin user/passwort vergeben, wizzard durchlaufen, abspeichern.

Wenn fertig, Tvheadend aus der Konsole mit Strg+C beenden.

4.2

Tvheadend Autostart aktivieren.

systemctl daemon-reload
systemctl enable tvheadend.service

System Neustarten

reboot

4.3

Tvheadend sollte jetzt von alleine gestartet sein,

mit Firefox http://deine-server-ip:9981/tvheadend aufrufen, als admin anmelden.

konfiguration/allgemein“

-Defaut View auf Expert stellenchannel icon/picon Settings“

Prefer picons over channel icons: „haken“

Kanallogo Pfad: „leer lassen“

Kanallogo Namensschema : „Servicename Picon“

Picon-Pfad: „file:///var/spool/hts/picons-neu“

Picon Namensschema: „Setze den Typ des Dienstes auf 1“

SPEICHERN

4.4

Aufnahme Verzeichnis anlegen, Rechte anpassen

sudo -s

mkdir /mein/aufnahme/pfad

chown -R users:MeinUserName /mein/aufnahme/pfad

chmod 770 /mein/aufnahme/pfad

4.4.1

DVR Konfiguration anpassen

mit Firefox http://deine-server-ip:9981/tvheadend aufrufen, als Admin anmelden.

konfiguration/Aufnahme“ auswählen,

Standard Profil auswählen,

unter filesystem settings :

Speicherpfad : /mein/aufnahme/pfad

Verzeichniss Rechte Oktal : 0770

Datei Rechte Oktal : 0770

Anmerkung :

So ist sichergestellt das Tvheadend, sobald es neue Verzeichnisse/ Dateien erstellt diese mit der 770 berechtigung erstellt werden. Benutzer hts lesen+schreiben+x alle Mitglieder der Gruppe „users“ lesen+schreiben+x und alle anderen benutzer/nicht Gruppen-mitglieder GARNIX.

5.1

Samba installieren

apt-get install samba

 

Samba Benutzer anlegen

smbpasswd -a DeinBenutzerName

 

Samba Konfiguration erstellen

mv /etc/samba/smb.conf /etc/samba/smb.conf-orginal

joe /etc/samba/smb.conf

 

Folgendes einfügen, anpassen

[global]
client max protocol = NT1
netbios name = DeinServerNameImNetzwerk
workgroup = WORKGROUP
browse list = yes
name resolve order = bcast host wins
case sensitive = no
security = user
map to guest = bad user
invalid users = root
domain master = no
preferred master = yes
local master = yes
wins support = yes
wins proxy = yes
os level = 3
dns proxy = no
auto services = global
log file = /var/log/samba/log.%m
max log size = 1000
panic action = /usr/share/samba/panic-action %d
server role = standalone server
passdb backend = tdbsam
obey pam restrictions = no
guest ok = yes
public = yes
browseable = yes
lm announce = yes
auto services = yes


[Aufnahmen]
comment = HTS Recordings
force group = users
force user = hts
inherit acls = Yes
path = /mein/aufnahme/pfad
read only = No
valid users = DeinErstellterSambaBenutzer
create mode = 0770
force create mode = 0770
create mask = 0770
directory mask = 0770

+ abspeichen

 

Samba Autostart aktivieren + starten

systemctl enable smbd.service

systemctl enable nmbd.service

systemctl restart smb.service

systemctl restart nmb.service 

Fertig !

Forumsdiskussionen zum Beitrag https://takealug.de/wordpress/community/tvheadend/anleitung-zu-tvheadend/#post-3

 

 

Weiter geht es hier mit Teil 2.1 OSCam

Weiter geht es hier mit Teil 2.2 WebGrab+

 

 

 



Related Posts

Schreibe einen Kommentar

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