2

Мы преобразуем последовательность изображений DPX в видео MP4:

ffmpeg -start_number 101 -i dpx/example.%04d.dpx ./example.mp4 # minimal conversion

ffmpeg -y -start_number 101 -i dpx/example.%04d.dpx -b12100k
-minrate 12100k -maxrate 12100k -bufsize 12100k -vf colormatrix=bt601:bt709
-pix_fmt yuv420 ./example.mp4 # conversion with colour correction

Однако при открытии этого MP4 в Adobe Premiere Pro, по-видимому, отсутствуют первые два кадра (первые два кадра недоступны, третий кадр доступен, общее количество кадров равно 2). Этот же файл не имеет пропущенных кадров при открытии в других приложениях (Quicktime Player и VLC). Другие видеофайлы не имеют пропущенных кадров при открытии в Premiere.

Следующие преобразования не решают проблему (ссылка 1) (ссылка 2) (ссылка 3 "-timecode"):

ffmpeg -start_number 101 -i dpx/example.%04d.dpx -filter_complex "[0] fps=fps=25"
./example.mp4 # force fps with filter_complex

ffmpeg -start_number 101 -i dpx/example.%%04d.dpx -timecode 00:00:00:01 ./example.mp4
# force timecode (tried drop and non-drop format)

Следующее преобразование (унаследованное оптом) работает. Зачем? Какой аргумент решает проблему?

ffmpeg -start_number 101 -i dpx/example.%%04d.dpx -crf 15.0 -y -vcodec libx264
-b:a 128k -b:v 4000 -intra -s 1280x720 -r 25 -ar 48000 -ab 192000 -coder 1 -flags +loop
-me_method hex -subq 6 -me_range 16 -g 1 -keyint_min 25 -sc_threshold 40 -i_qfactor 0.71
-b_strategy 1 -threads 0 ./example.mp4 # mystery meat

(Очевидно, мы настраиваем рабочий, чтобы соответствовать другим нашим требованиям.)

1 ответ1

3

Протестировав несколько сценариев, ответственно за присутствие нескольких B-кадров. Именно их последовательность хранения вне презентации и новая ошибка в анализаторе битового потока Adobe H264 вызывают эту проблему.

Таким образом, добавление -x264opts bframes=1 (или 0) решает проблему. Это не проблема с FFmpeg, AFAICT, поскольку другие приложения, включая NLE, такие как Vegas, могут правильно читать MP4 без этой опции. Даже более старые версии Adobe CC делают, согласно вашим ссылкам.

Изменить: -x264opts b_pyramid=0 выглядит как прямое решение.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .