Я использую moviepy для написания кода, который позволяет мне применять различные изменения vfx к загруженному видеофайлу (обрезка до определенных соотношений сторон, наложение статических изображений и осветление или затемнение видео). Код делает то, что я хочу, но после первых нескольких секунд возвращаемое видео зависает (хотя звук продолжается).
Я искал в Интернете похожие проблемы и не нашел много. https://groups.google.com/forum/#!topic/imageio/kx0R0JQ6RVA предположил, что imageio иногда приходится оценивать количество кадров и https://github.com/Zulko/moviepy/issues/86 предположил, что ffmpeg не может читать некоторые кадры (и что он более подвержен видео с веб-камеры, что и мои файлы).
Моя текущая ошибка: (я получаю ее несколько раз, поэтому я использовал xxx, yyy и zzz для обозначения разных чисел) WARNING:py.warnings: .../moviepy-1.0.0-py3.7.egg/moviepy/video/io/ffmpeg_reader.py:130: UserWarning: Warning: in file /codebase/my_video_file.mp4, xxx bytes wanted but 0 bytes read, at frame yyy/total, at time zzz/total sec. Using the last valid frame instead.
Я успешно обрезаю/осветляю/затемняю/накладываю свои видео, но через несколько секунд видео останавливается (предположительно, каждый кадр после первых нескольких секунд является просто копией предыдущего), а звук продолжается, поэтому я знаю видеофайл продолжает играть.
РЕДАКТИРОВАТЬ (8/14): я обработал видео без каких-либо изменений (поэтому без gamma_corr и без CompositeVideoClip) и все равно получил тот же результат, так что это не ошибка размера кадра.