Как убрать артефакты ffmpeg в выводимой видео с интервальной съемкой? - PullRequest
0 голосов
/ 13 апреля 2020

Я использовал несколько файлов JPEG для создания видео с интервальной съемкой с ffmpeg. По отдельности они визуально нормальны.

Эти исходные изображения сняты беззеркальной DSL-камерой в формате JPEG.

Если я загружу timelapsevideo на youtube, видео будет четким и без каких-либо артефактов: https://www.youtube.com/watch?v=Qs-1ahCrb0Y

Однако, если я воспроизводю видеофайл локально на MacOS в приложениях Photo или Quicktime или в iOS, в видео появляются артефакты. Вот некоторые примеры:

1.

enter image description here

2.

enter image description here

Это команда ffmpeg, которую я использовал для создания видео:

ffmpeg -framerate 30 -pattern_type glob  -i  "DSCF*.JPG" -pix_fmt yuv420p -profile baseline  output.mp4

Какой дополнительный параметр я могу использовать для удаления этих артефактов?

Редактировать:

  1. Информация о файле

enter image description here

Видео воспроизводится без проблем в VL C.

1 Ответ

1 голос
/ 14 апреля 2020

Стандарт H.264 c стандарт определяет уровни . Уровень представляет ресурсы, необходимые декодеру для плавной обработки потока. Обычно уровни подходят только для аппаратных игроков. Тем не менее, некоторые программные плееры могут быть разработаны с потолком уровня. По-видимому, так обстоит дело с плеерами Apple.

Размер кадра вашего видео - 6000x4000, для которого проигрыватель должен поддерживать уровень 6.0, что является недавним дополнением к стандарту (~ 2 года). Я предлагаю вам уменьшить разрешение вдвое,

ffmpeg -framerate 30 -pattern_type glob -i "DSCF*.JPG" -vf scale=iw/2:ih/2,format=yuv420p -profile baseline out.mp4
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...