Stream über FFmpeg vom Raspberry 400 beste Settings

  • Hallo zusammen,


    ich wollte mich mal wieder mit einer Frage melden, welche vielleicht hier jemand beantworten könnte :)

    Und zwar möchte ich gerne mal Testweise einen Raspberry 400 als 24/7 Server umfunktionieren. Da die Leistung ja begrenzt ist und OBS als Gui Variante nicht funktioniert habe ich mich für ffmpeg entschieden.

    Da ich da aber absoluter Anfänger bin, habe ich maximal das hier hinbekommen:


    Code
    ffmpeg -f concat -safe 0 -i /home/saturn/Schreibtisch/playlist.txt -c:v libx264 -video_size 1280x720 -preset veryfast -b:v 2000k -maxrate 2000k -bufsize 4000k -pix_fmt yuv420p -g 60 -c:a aac -b:a 128k -ac 2 -ar 44100 -f flv rtmp://live.twitch.tv/app/undhiermeineid

    Ich habe meine Vods alle in mp4 liegen und dachte eigentlich das der Pi es zumindest schaffen sollte, wenn er diese nicht neu encoden muss zu streamen. Leider bekomme ich im Schnitt zwar 29-30 fps hin aber es Buffert alle 2-3 Sekunden.


    Könnt ihr mir sagen, wie ich die vielleicht einen besseren Stream hinbekomme?


    Vielen Dank :)

  • Ich habe meine Vods alle in mp4 liegen und dachte eigentlich das der Pi es zumindest schaffen sollte, wenn er diese nicht neu encoden muss zu streamen

    Dann hast du da einen Parameter falsch eingestellt. ;)


    -c:v libx264 sorgt dafür, dass ffmpeg das Video in h264 neu encodet.

    Wenn du den Videostream so wie er ist durchleiten willst, musst du stattdessen -c:v copy verwenden. Das gilt analog auch für das Audio, dort dann -c:a copy und er nimmt einfach den originalen Audiostream.


    Welche von den anderen Video- und Audioparametern mit copy zusammen erlaubt sind / angegeben werden können, weiß ich allerdings nicht auswendig. ffmpeg wird dir das dann wohl schon sagen, wenn da welche nicht mit copy zusammen genutzt werden dürfen.

  • Heyho! Vielen vielen dank, dass hat mir sehr weitergeholfen. Die Fps sehen jetzt sehr gut aus.

    Ich sehe jetzt nur manchmal das, dass Bild sehr starke Artefakte bildet. Gibt es dafür auch eine Lösung? Und ich glaube der Ton ist auch weg, aber das kann an der Datei liegen :/

    Hier gibt es übrigens den Teststream


    Danke nochmals! :saint:


    edit: Glaube ich habe den Grund für die Artefakte gefunden. Streamteil 1 wurde mit Laptop gestreamt und 2k Bitrate und Teil 2 ab 1h 25 wurde mit Streamlabs auf dem Handy und 4k Bitrate gestreamt. Ich schätze mal beide Streams müssen identisch sein?

  • Ich sehe jetzt nur manchmal das, dass Bild sehr starke Artefakte bildet. Gibt es dafür auch eine Lösung? Und ich glaube der Ton ist auch weg, aber das kann an der Datei liegen :/

    Also angesichts der Tatsache, dass du die Originaldatei streamst und Twitch die auch ohne Encoding im Player anbietet, würde ich mal vermuten, dass die Artefakte schon in der Originaldatei enthalten sein müssten. Schau da am besten mal nach, denn eigentlich passiert auf dem Weg von deinem Pi zum Player des Zuschauers nirgends Encoding.


    Das mit dem Audio weiß ich nicht. Schau mal, ob es an der Datei liegt.

    Ich muss aber zugeben, dass ich sehr beeindruckt wäre, wenn es mit unterschiedlichen Dateien von unterschiedlichen Geräten problemlos läuft.


    Hätte damit gerechnet, dass entweder ffmpeg oder Twitch den Wechsel gar nicht hinbekommt. 8|

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!