Zeichnen Sie einen Zeitraffer-Bildschirm-Capture direkt in ffmpeg auf

Zeichnen Sie einen Zeitraffer-Bildschirm-Capture direkt in ffmpeg auf

Kann ich ffmpeg verwenden, um meinen Xorg-Desktop (ohne Audio) mit einem Bild pro Sekunde in eine Videodatei aufzuzeichnen, die die Bilder mit 30 Bildern pro Sekunde wiedergibt, ohne dass ein Konvertierungsprozess erforderlich ist?

Der folgende Befehl zeichnet mein linkes Display mit 1 Bild pro Sekunde auf, das resultierende Video schaltet das Videobild jedoch einmal pro Sekunde weiter.

ffmpeg -r 1 -f x11grab -s 1920,1080 -i :0.0+0,0 -vcodec libx264 -crf 0 -preset ultrafast -threads 0 out.mkv

Bekannte Alternativen:

  1. Machen Sie in regelmäßigen Abständen Screenshots, dann kombinieren Sie Videosmit Mencoder
  2. Wie Nr. 1, jedoch mitffmpeg
  3. Nehmen Sie mit ffmpeg ein Video des Desktops aufmit 1 fps oder weniger, wenn der Encoder solche Zahlen unterstützt undBeschleunigen Sie das Video anschließend über ffmpeg.

Wenn dies ffmpegallein nicht möglich ist, würde eine Kombination aus importund ffmpegoder einigen anderen Tools ermöglichen, dass das Zeitsprungvideo möglichst schnell nach Beendigung der Aufnahme fertig ist?

Antwort1

Das sollte funktionieren:

ffmpeg -framerate 1 -f x11grab -s 1920,1080 -i :0.0+0,0 -vf settb=\(1/30\),setpts=N/TB/30 -r 30 -vcodec libx264 -crf 0 -preset ultrafast -threads 0 out.mkv

EDIT: Klammern aus der Shell entfernt

verwandte Informationen