Ffmpeg, wie die Eingangs-FPS begrenzt werden

1594
cool

Ich speichere RTSP-Stream in Datei mit ffmpeg.

Ich sehe, dass auch der Stream 30 fps ist, ffmpeg es auf 40-50-33 fps herunterladen.

Wie kann ich den Eingaberahmen pro Sekunde begrenzen?

Ich habe es versucht ffmpeg -r 30 -i rtsp://ipVideo out.h264 aber es hilft nicht

Ich möchte nicht, dass nur die Ausgabedatei 30 fps beträgt. Ich möchte, dass ffmpeg nicht mehr als X fps lädt

0

1 Antwort auf die Frage

1
slhck

Verwenden Sie die -reEingabeoption:

-re (input)

Lesen Sie die Eingabe mit der nativen Framerate. Wird hauptsächlich zum Simulieren eines Greifers oder eines Live-Eingabestreams (z. B. beim Lesen aus einer Datei) verwendet. Sollte nicht mit tatsächlichen Greifgeräten oder Live-Eingabeströmen verwendet werden (wo es zu Paketverlusten kommen kann). Standardmäßig versucht ffmpeg, die Eingänge so schnell wie möglich zu lesen. Diese Option verlangsamt das Lesen der Eingänge auf die native Bildrate der Eingänge. Dies ist nützlich für die Echtzeitausgabe (z. B. Live-Streaming).

Deshalb:

ffmpeg -re -i rtsp://ipVideo … 
Vielen Dank für Ihre Antwort, aber ich möchte -re nicht verwenden, weil ich -preset ultraschnell verwenden muss, und wenn ich dies benutze, funktioniert dies nicht gut mit ultraschnell (ich weiß nicht, warum) cool vor 6 Jahren 0
Wenn Sie die Downloadgeschwindigkeit begrenzen möchten, ist es sinnvoll, eine schnelle Voreinstellung nur dann zu verwenden, wenn die natürliche Verarbeitungsgeschwindigkeit mit dieser Voreinstellung weniger als X fps beträgt. Versuchen Sie das Verfahren jedoch unter https://stackoverflow.com/a/46602882/5726027 Gyan vor 6 Jahren 0
@ Mulvya Ich verwende voreingestellte ultraschnelle weil, wenn nicht ich Pakete verloren und dann Fehlerdecodierung. Ich denke, dass ffmpeg / meine CPU nicht schnell genug ist, um den Stream neu zu kodieren, also muss ich das Preset ultraschnell verwenden (ich finde keine andere Lösung, um das Problem zu beheben, da ich den Stream decodieren muss, wenn ich überlagern möchte). Beschneiden Sie es) cool vor 6 Jahren 0