Streaming (TvHeadend): Unterschied zwischen den Versionen

Aus Tutorials
Zur Navigation springen Zur Suche springen
 
(5 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 44: Zeile 44:


Siehe auch [[ffmpeg (Linux)|ffmpeg]]
Siehe auch [[ffmpeg (Linux)|ffmpeg]]
=== Installation ===


<pre>
<pre>
Zeile 49: Zeile 51:
</pre>
</pre>


<pre>
=== Fixe Höhe/Breite mit passender Breite/Höhe unter beibehaltung der Aspect Ratio===
scale=trunc(oh*a/2)*2:480
 
</pre>
Vorgegebene Höhe:
 
<code>scale=trunc(oh*a/2)*2:480</code> bzw. <code>scale=-1:480</code>
 
Vorgegebene Breite:
 
<code>scale=640:trunc(ow/a/2)*2</code> bzw. <code>scale=640:-1</code>
 
=== Stream mit 2056 kbit/s und einer Auflösung von 852 x 480 Pixel (16:9) ===


<pre>
Da z.B. D-Max HD eine Auflösung von <code>1440 x 1080</code> Pixeln hat (ist nicht direkt 16:9) und nach dem Transcodieren das Bildverhältnis falsch war, mußte die Auflösung mit <code>scale=852:480</code> fix im Verhältnis 16:9 gesetzt werden (setzen von Sample Aspect Ratio mit <code>setsar=original</code> hat leider nicht funktioniert):
scale=640:trunc(ow/a/2)*2
</pre>


<pre>
<pre>

Aktuelle Version vom 31. Dezember 2025, 23:36 Uhr

m3u

Mittels folgender URL kann man eine m3u-Liste mit allen Kanälen herunterladen:

http://<ip des servers>:9981/playlist
curl -L --digest "http://web-streaming:<password>@10.3.0.101:9981/playlist/auth/channels" > web-streaming.m3u

Ohne Passwort

Benutzer mit Name * und ohne Passwort anlegen.

TVheadendBenutzerOhnePasswort.png

Links

https://tvheadend.org/d/9071-how-to-disable-username-and-password-prompt-for-streaming-links-in-tvheadend

Transcoding

Unter

Configuration -> Stream -> Stream Profiles -> Add

den Typ MPEG-TS Spawn/built-in ein neues Streaming-Profile anlegen:

TranscodeFfmpegTvHeadend.png

Folgende Konfiguration erzeugt einen Stream mit 2056 kbit/s und einer Auflösung von 852 x 480 Pixel:

/usr/bin/ffmpeg -loglevel quiet -i pipe:0 -vf scale=852:480 -vcodec h264_v4l2m2m -vb 2056k -bufsize 4112k -g 100 -af "aresample=async=1:first_pts=0" -acodec mp3 -ab 128k -f mpegts pipe:1

TranscodeUserTvHeadend.png

ffmpeg

Siehe auch ffmpeg

Installation

sudo apt-get install ffmpeg

Fixe Höhe/Breite mit passender Breite/Höhe unter beibehaltung der Aspect Ratio

Vorgegebene Höhe:

scale=trunc(oh*a/2)*2:480 bzw. scale=-1:480

Vorgegebene Breite:

scale=640:trunc(ow/a/2)*2 bzw. scale=640:-1

Stream mit 2056 kbit/s und einer Auflösung von 852 x 480 Pixel (16:9)

Da z.B. D-Max HD eine Auflösung von 1440 x 1080 Pixeln hat (ist nicht direkt 16:9) und nach dem Transcodieren das Bildverhältnis falsch war, mußte die Auflösung mit scale=852:480 fix im Verhältnis 16:9 gesetzt werden (setzen von Sample Aspect Ratio mit setsar=original hat leider nicht funktioniert):

/usr/bin/ffmpeg -loglevel quiet -i pipe:0 -vf scale=852:480 -vcodec h264_v4l2m2m -vb 2056k -bufsize 4112k -g 100 -af "aresample=async=1:first_pts=0" -acodec mp3 -ab 128k -f mpegts pipe:1

Links

https://www.kodinerds.net/thread/75265-transcoding-auf-handy-tablet-mit-tvheadend-raspberry-4-l%C3%A4uft-endlich/

https://stackoverflow.com/questions/8218363/maintaining-aspect-ratio-with-ffmpeg

Codecs

Ob ein bestimmter Codec freigeschaltet ist, kann man sich über folgenden Befehl anzeigen lassen:

vcgencmd codec_enabled {CODEC}

Für codec_enabled gibt es die folgenden Parameter: H264, MPG2, WVC1, MPG4, MJPG und WMV9.

Links

https://www.elektronik-kompendium.de/sites/raspberry-pi/2006071.htm


Zurück zu Tvheadend