Может ли ImageMagick создавать миниатюры из видео?

Я пытаюсь извлечь миниатюры из видео через ImageMagick. Я нашел некоторые образцы с их официального сайта, но это делает GIF, а не PNG. Я хочу твердую миниатюру, хотя.

Может ли он создать тот же вывод, что и с этой командой ffmpeg?

ffmpeg -ss 600 -i myVideo.mp4 -vframes 1 -s 420x270 Out.bmp

2 ответа

Решение

Вы можете извлекать миниатюры из видео с помощью ImageMagick следующим образом ( отсюда - другой ответ утверждает, что ImageMagick использует ffmpeg "под капотом", поэтому я не знаю, будет ли это на самом деле быстрее, чем просто использование ffmpeg):

convert input.mp4[100] thumbnail.png

[100] говорит ImageMagick взять 100-й кадр из input.mp4, Я проверил это на видеопотоке H.264 в контейнере MP4. Очевидно, что вы можете использовать любые параметры ImageMagick, которые вы хотите, в том числе деинтерлейсинг, как описано в вашей ссылке.


ImageMagick действительно для работы с отдельными изображениями; для видео, вы должны просто использовать ffmpeg. Очевидно, что здесь есть некоторое совпадение, поскольку вы имеете дело с отдельным кадром, но я бы сказал, что деинтерлейсинг - это скорее задача обработки видео.

Вы должны использовать фильтр yadif для деинтерлейсинга. Вы можете добавить его в свою существующую строку следующим образом:

ffmpeg -ss 600 -i input.mp4 -vframes 1 -s 420x270 -filter:v 'yadif' output.png

при работе с фильтрами я предпочитаю использовать фильтр масштаба, а не -s:

ffmpeg -ss 600 -i input.mp4 -vframes 1 -filter:v 'yadif,scale=420:270' output.png

ImageMagick выдает ffmpeg с помощью этой команды:

ffmpeg -v -1 -vframes %S -i "%i" -vcodec pam -an -f rawvideo -y "%u.pam" 2> "%Z"

Таким образом, краткий ответ "нет" (поскольку он не делает это сам).

Другие вопросы по тегам