Я хочу захватывать видео с веб-камеры (сохранение в файл), время от времени получая самый последний кадр (из кода Python). Есть ли способ сделать это в Linux?
Что я пробовал:
# Capture Video:
ffmpeg -f v4l2 -framerate 30 -video_size 1024x576 -i /dev/video0 myvideo.mp4
...
# In another terminal, try to capture the latest still frame:
ffmpeg -sseof -3 -i myvideo.mp4 -update 1 -q:v 1 current_frame.jpg
Но я получаю различные ответы от этой последней команды, такие как
Cannot use -sseof, duration of myvideo.mp4 not known
и
[matroska,webm @ 0x55e1aae26900] Duplicate element
Last message repeated 2 times
Дополнительные примечания / ограничения:
ffmpeg
через subprocess.Popen
), чтобы (a) начать запись, (b) получить кадры в произвольных точках, (c) остановить запись. ffmpeg
Всего 1 ответ
Вы можете иметь несколько выходов для FFmpeg. Объедините ваши команды:
ffmpeg -f v4l2 -framerate 30 -video_size 1024x576 -i /dev/video0 myvideo.mp4 -r 1 -update 1 current_frame.jpg