Я читаю видео, используя skvideo.io.vread
import skvideo.io
video_frames = skvideo.io.vread(video_filepath)
Мое видео имеет частоту кадров 50 кадров в секунду. Но я хочу читать видео со скоростью 4 кадра в секунду, я имею в виду, что мне нужно читать только 4 кадра в секунду видео. Есть ли возможность читать с указанной частотой кадров или мне нужно вручную отбрасывать лишние прочитанные кадры?
skvideo.io.vread
принимает входные параметры в виде словаря. Итак, вы можете передать частоту кадров следующим образом:
import skvideo.io
video_frames = skvideo.io.vread(video_filepath, inputdict = {'-r' : 4}) # Specify frame rate
Вот официальная документация: http://www.scikit-video.org/stable/examples/io.html
Скорее всего вам придется отбрасывать лишние кадры вручную.
Хотя кое-что можно попробовать: В документации к vread сказано, что в качестве аргумента можно передать inputdict, который передается читателю FFMpeg. Этот пример показывает, как скорость может быть установлена считывателем. Однако я думаю, что это, скорее всего, приведет к ускорению или замедлению видео.
import skvideo.io
rate = 4
video_frames = skvideo.io.vread(video_filepath, \
inputdict = {'-r': rate})