пытаюсь в обработку 4k-видео для mapillary. Пока что все алгоритмы вытаскивания кадров работают со скоростью 1/30 от скорости видео.
это очень странно. если комп способен это видео играть без лагов, то и вытаскивать кадры тоже. если, конечно, кодирование jpeg вынесено в отдельный поток
Удалось ускорить вытаскивание тайлов используя утилиту parallel и ключ -accurate_seek в ffmpeg. То есть вытаскиваются не кадр за кадром, а сразу все параллельно, сколько есть ядер в системе
переписал mapillary_tools video_extract на bash. Генерит кадры из видео, а время для них берётся из имени видеофайла. (можно на python, но на bash быстрее прототипировать)
в общем если есть бабло, то надо брать экшон-камеру с gps, или там видеорегисратор для автомобиля. Половина забот - ручная подгонка кадров к треку, потому что time drift на камере - 2 секунды в день