clever999
Stamm User
- Registriert
- 5. Oktober 2011
- Beiträge
- 1.088
- Reaktionspunkte
- 2.025
- Punkte
- 373
Hallo Zusammen,
heute möchte ich euch einmal mein how2 für den PI2 vorstellen. Es ist alles ein bischen tricky da GSstreamer sehr wählerisch ist was den Ton anbelangt. Hier muss man immer die einzelne Audio PID des Streams angeben, was doch sehr nervig ist. Ich habe das Problem gelöst, in dem ich zu erst den Ton mit TVH in AAC transcodiere, somit ist die Audio PID immer gleich.
Ich schleife den Stream zweimal duch TVH. Beim erstenmal wird nur der Ton transcodiert. Den Transcodierten stream leite ich per pipe an den Http-launcher weiter und führe ihn mittels FFMPEG zurück in TVH, das alles passiert mit einem script direkt in TVH. Leider bekomme ich GSstreamer direkt in tvh nicht zum laufen, vielleicht hat da ja jemand eine Idee. Deshalb nochmal zusätzlich FFMPEG
Hört sich kompliziert an und ist es leider auch ;-)
Der Dauerlauf ist auch so eine Sache, mal laufen die Streams mehrere Tage und manchmal nur ein paar Std. Kommt iwie auf den Sender an, bin noch nicht dahinter gekommen. Man kann auch mehrere Streams anlegen und umschalten, also perfekt für unterwegs. Sport sieht auch nicht gerade blenden aus, aber Film und Doku absolut brauchbar.
Hiermit ist auch nur das transcodieren von einem HD stream möglich. Für SD braucht man zusätzlich die MPEG-Lizens, falls SD gewünscht muss die Lizens gekauft und ein zusätzliches Script angelegt werden. Wer es braucht kann sich gerne melden.
So dann gehts mal los:
Für Verbesserungen oder Vorschläge bin ich sehr dankbar, auch über Rückmeldungen ob es bei jemanden klappt würde ich mich freuen, da doch schon ein paar daran gescheitert sind. Ich habe es bisher immer zum laufen bekommen
Fröhliches Basteln allerseits
LG
Clever
heute möchte ich euch einmal mein how2 für den PI2 vorstellen. Es ist alles ein bischen tricky da GSstreamer sehr wählerisch ist was den Ton anbelangt. Hier muss man immer die einzelne Audio PID des Streams angeben, was doch sehr nervig ist. Ich habe das Problem gelöst, in dem ich zu erst den Ton mit TVH in AAC transcodiere, somit ist die Audio PID immer gleich.
Ich schleife den Stream zweimal duch TVH. Beim erstenmal wird nur der Ton transcodiert. Den Transcodierten stream leite ich per pipe an den Http-launcher weiter und führe ihn mittels FFMPEG zurück in TVH, das alles passiert mit einem script direkt in TVH. Leider bekomme ich GSstreamer direkt in tvh nicht zum laufen, vielleicht hat da ja jemand eine Idee. Deshalb nochmal zusätzlich FFMPEG
Hört sich kompliziert an und ist es leider auch ;-)
Der Dauerlauf ist auch so eine Sache, mal laufen die Streams mehrere Tage und manchmal nur ein paar Std. Kommt iwie auf den Sender an, bin noch nicht dahinter gekommen. Man kann auch mehrere Streams anlegen und umschalten, also perfekt für unterwegs. Sport sieht auch nicht gerade blenden aus, aber Film und Doku absolut brauchbar.
Hiermit ist auch nur das transcodieren von einem HD stream möglich. Für SD braucht man zusätzlich die MPEG-Lizens, falls SD gewünscht muss die Lizens gekauft und ein zusätzliches Script angelegt werden. Wer es braucht kann sich gerne melden.
So dann gehts mal los:
#### installation
Raspbian jessie vom 18.3.2016 hier downloaden und auf sd kopieren
ssh pi@ip
# Root PW vergeben
sudo passwd root
# root über SSH aktivieren
su
sudo nano /etc/ssh/sshd_config
PermitRootLogin without-password
ändern zu
PermitRootLogin yes
sudo service ssh restart
#Übertakten
sudo nano /boot/config.txt
gpu_freq=500
arm_freq=1000
core_freq=500
sdram_freq=500
over_voltage=2
gpu_mem_1024=320
# Zeiteinstellung
sudo dpkg-reconfigure tzdata
#ganze SD verwenden
sudo raspi-config
reboot
ssh root@ip
# System aktuallisieren
sudo apt-get update && apt-get upgrade -y
# Benötigte Dateien im DEB downloaden und per ssh nach /home kopieren
Link ist nicht mehr aktiv.
# Dateien installieren
cd /home
sudo tar -xzf pi2_tvh_transcoder.tar.gz
cd transcoder
sudo ./install
# Rechte vergeben
chmod +x /usr/local/bin/ffpipe.sh
chmod 755 /usr/local/bin/ffmpeg
# TVH installieren
sudo apt-get install apt-transport-https
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 379CE192D401AB61
echo "deb
apt-get update
apt-get install tvheadend
benutzer und pw für TVH Webif vergeben # zb admin/tvh brauchen wir später
###Einstellungen TVH###
Im Browser einlogen
anmelden mit admin/tvh
# Network anlegen
configuration -> DVB inputs -> Networks -> Add -> Type -> IPTV Netowrk
beliebigen namen vergeben zb transcode
# Stream einfügen zb von E2,TVH usw.
configuration -> DVB inputs -> Muxes -> Add -> Network
transcode auswählen und bei URL den link einfügen von E2,TVH usw.
keine weiter Einstellungen notwendig
es startet automatisch ein suchlauf, wenn alles gut steht bei scan result = OK
# Channel mappen
configuration -> DVB inputs -> Services
Stream auswählen und Map Services drücken. Achtung bei E2 streams werden mehrere Streams gefunde, der richtige stream hat ein grünes häkchen
# Prüfen ob Input OK
Nun sollte der Stream unter
Configuration → Channel/EPG erscheinen.
# User anlegen mit AAC Ton transcoding
Configuration -> Access Entries -> Add
Enabled = häkchen
Name = zb aac
Streaming = häkchen
Advanced streaming = häkchen
Streaming profiles = webtv-h264-aac-mpegts
# PW für User aac vergeben
Configuration -> Passwords -> Add
Enabled = häkchen
Username = aac #bei meinem Beispiel
Password = zb aac
#Stream profil anpassen
configuration -> stream
WEBTV profile H264/AAC/MPEG-TS auswählen
videocodec = Copy codec type
Audiobitrate = 128
den rest lassen wie er ist
### in VLC prüfen ob der Inputstream funktioniert und der Ton wirklich AAC ist!!!
Im Browser
Im VLC den stream öffen. Unbedingt den angelegten UserW@ vor die IP setzen, damit der Ton auch transcodiert wird, sieht zb so aus
wenn alles in VLC information OK, kann es weiter gehen .
# Transcodingstream einfügen
configuration -> DVB inputs -> Muxes -> Add -> Network
transcode auswählen und bei URL folgendes eingeben, ich nehme wieder das Beispiel vom VLC:
pipe:///usr/local/bin/ffpipe.sh
keine weiter Einstellungen notwendig
es startet automatisch ein suchlauf, wenn alles gut steht bei scan result = OK
# Channel mappen
configuration -> DVB inputs -> Services
Stream auswählen und Map Services drücken. Der Sendername ist Output
### in VLC prüfen ob der Transcodingstream funktioniert
Im Browser
Im VLC den stream öffen. Unbedingt diesmal admin:tvh@ vor die IP setzen, damit der Ton nicht nochmal transcodiert wird. Man kann auch noch einen zusätzlichen Benutzer anlegen, ist aber nicht notwendig. Mein stream sieht dann so aus
wenn alles OK
fertig
wer die Viedobitrate noch ändern möchte, muss unter
nano /usr/local/bin/ffpipe.sh
diesen Wert ändern
omxh264enc target-bitrate=2097152
Raspbian jessie vom 18.3.2016 hier downloaden und auf sd kopieren
Sie müssen registriert sein, um Links zu sehen.
ssh pi@ip
# Root PW vergeben
sudo passwd root
# root über SSH aktivieren
su
sudo nano /etc/ssh/sshd_config
PermitRootLogin without-password
ändern zu
PermitRootLogin yes
sudo service ssh restart
#Übertakten
sudo nano /boot/config.txt
gpu_freq=500
arm_freq=1000
core_freq=500
sdram_freq=500
over_voltage=2
gpu_mem_1024=320
# Zeiteinstellung
sudo dpkg-reconfigure tzdata
#ganze SD verwenden
sudo raspi-config
reboot
ssh root@ip
# System aktuallisieren
sudo apt-get update && apt-get upgrade -y
# Benötigte Dateien im DEB downloaden und per ssh nach /home kopieren
Link ist nicht mehr aktiv.
# Dateien installieren
cd /home
sudo tar -xzf pi2_tvh_transcoder.tar.gz
cd transcoder
sudo ./install
# Rechte vergeben
chmod +x /usr/local/bin/ffpipe.sh
chmod 755 /usr/local/bin/ffmpeg
# TVH installieren
sudo apt-get install apt-transport-https
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 379CE192D401AB61
echo "deb
Sie müssen registriert sein, um Links zu sehen.
jessie unstable" | sudo tee -a /etc/apt/sources.list apt-get update
apt-get install tvheadend
benutzer und pw für TVH Webif vergeben # zb admin/tvh brauchen wir später
###Einstellungen TVH###
Im Browser einlogen
Sie müssen registriert sein, um Links zu sehen.
anmelden mit admin/tvh
# Network anlegen
configuration -> DVB inputs -> Networks -> Add -> Type -> IPTV Netowrk
beliebigen namen vergeben zb transcode
# Stream einfügen zb von E2,TVH usw.
configuration -> DVB inputs -> Muxes -> Add -> Network
transcode auswählen und bei URL den link einfügen von E2,TVH usw.
keine weiter Einstellungen notwendig
es startet automatisch ein suchlauf, wenn alles gut steht bei scan result = OK
# Channel mappen
configuration -> DVB inputs -> Services
Stream auswählen und Map Services drücken. Achtung bei E2 streams werden mehrere Streams gefunde, der richtige stream hat ein grünes häkchen
# Prüfen ob Input OK
Nun sollte der Stream unter
Configuration → Channel/EPG erscheinen.
# User anlegen mit AAC Ton transcoding
Configuration -> Access Entries -> Add
Enabled = häkchen
Name = zb aac
Streaming = häkchen
Advanced streaming = häkchen
Streaming profiles = webtv-h264-aac-mpegts
# PW für User aac vergeben
Configuration -> Passwords -> Add
Enabled = häkchen
Username = aac #bei meinem Beispiel
Password = zb aac
#Stream profil anpassen
configuration -> stream
WEBTV profile H264/AAC/MPEG-TS auswählen
videocodec = Copy codec type
Audiobitrate = 128
den rest lassen wie er ist
### in VLC prüfen ob der Inputstream funktioniert und der Ton wirklich AAC ist!!!
Im Browser
Sie müssen registriert sein, um Links zu sehen.
eingeben und die m3u von TVH anzeigen lassen, die channel http entnehmen, sieht zB so aus
Sie müssen registriert sein, um Links zu sehen.
Im VLC den stream öffen. Unbedingt den angelegten UserW@ vor die IP setzen, damit der Ton auch transcodiert wird, sieht zb so aus
Sie müssen registriert sein, um Links zu sehen.
wenn alles in VLC information OK, kann es weiter gehen .
# Transcodingstream einfügen
configuration -> DVB inputs -> Muxes -> Add -> Network
transcode auswählen und bei URL folgendes eingeben, ich nehme wieder das Beispiel vom VLC:
pipe:///usr/local/bin/ffpipe.sh
Sie müssen registriert sein, um Links zu sehen.
keine weiter Einstellungen notwendig
es startet automatisch ein suchlauf, wenn alles gut steht bei scan result = OK
# Channel mappen
configuration -> DVB inputs -> Services
Stream auswählen und Map Services drücken. Der Sendername ist Output
### in VLC prüfen ob der Transcodingstream funktioniert
Im Browser
Sie müssen registriert sein, um Links zu sehen.
eingeben und die m3u von TVH anzeigen lassen, die channel http von Output entnehmen, sieht zB so aus
Sie müssen registriert sein, um Links zu sehen.
Sie müssen registriert sein, um Links zu sehen.
Sie müssen registriert sein, um Links zu sehen.
Im VLC den stream öffen. Unbedingt diesmal admin:tvh@ vor die IP setzen, damit der Ton nicht nochmal transcodiert wird. Man kann auch noch einen zusätzlichen Benutzer anlegen, ist aber nicht notwendig. Mein stream sieht dann so aus
Sie müssen registriert sein, um Links zu sehen.
wenn alles OK
fertig
wer die Viedobitrate noch ändern möchte, muss unter
nano /usr/local/bin/ffpipe.sh
diesen Wert ändern
omxh264enc target-bitrate=2097152
Für Verbesserungen oder Vorschläge bin ich sehr dankbar, auch über Rückmeldungen ob es bei jemanden klappt würde ich mich freuen, da doch schon ein paar daran gescheitert sind. Ich habe es bisher immer zum laufen bekommen
Fröhliches Basteln allerseits
LG
Clever
Zuletzt bearbeitet: