Ich habe ein Problem. Ich würde ein Live-Streaming mit ffmpeg von meiner Webcam machen.Wie minimiert man die Verzögerung in einem Live-Streaming mit ffmpeg
- Ich starte den ffserver und es funktioniert.
von einem anderen Terminal I ffmpeg starten mit diesem Befehl und es funktioniert zu streamen:
sudo ffmpeg -re -f video4linux2 -i /dev/video0 -fflags nobuffer -an http://localhost:8090/feed1.ffm
In meiner Konfigurationsdatei habe ich diesen Strom:
<Stream test.webm> Feed feed1.ffm Format webm NoAudio VideoCodec libvpx VideoSize 720x576 VideoFrameRate 25 # Video settings VideoCodec libvpx VideoSize 720x576 # Video resolution VideoFrameRate 25 # Video FPS AVOptionVideo flags +global_header # Parameters passed to encoder # (same as ffmpeg command-line parameters) AVOptionVideo cpu-used 0 AVOptionVideo qmin 10 AVOptionVideo qmax 42 #AVOptionVideo quality good PreRoll 5 StartSendOnKey VideoBitRate 400 # Video bitrate </Stream>
Ich starte den Strom mit
ffplay http: // 192.168.1.2: 8090/test.webm Es funktioniert, aber ich habe eine Verzögerung von 4 Sekunden und ich würde diese Verzögerung minimieren, weil es für meine Anwendung unerlässlich ist. Dank
Sie können versuchen, den Wert probe zu reduzieren: 'ffplay 500000 http -probesize: //192.168.1.2: 8090/test.webm' (bis 500 Kb, experimentiere mit diesem Wert, der Standardwert ist 5 Mb, wenn ich mich nicht irre.) – pogorskiy
ok danke. Jetzt muss ich den Stream in einem mobilen Browser anschauen und kann daher ffplay nicht verwenden. Ich brauche etwas vorschlagen, um die Konfigurationsdatei zu optimieren. –
Lesen http://ffmpeg.org/sample.html Ich kann mir vorstellen, dass Sie mit VideoBufferSize versuchen oder die GOP reduzieren können (es erhöht die Bandbreitennutzung). –