Я пытаюсь использовать ffmpeg для вывода всех ключевых кадров из видеофайла и масштабирования их до ширины 320 пикселей при сохранении соотношения сторон. Я знаю, что могу сделать это с помощью двух отдельных команд, но я пытаюсь найти способ сделать это аккуратно в одной.
Я уже преуспел в каждом из шагов в отдельности, используя следующие команды.
Выведите ключевые кадры:
.\ffmpeg -i input.mp4 -q:v 2 -vf select="eq(pict_type\,PICT_TYPE_I)" -vsync 0 thumb%07d.png
Масштаб изображения:
.\ffmpeg -i input.mp4 -vf scale=320:-1 thumb%07d.png
Я не поделюсь всем, что я пробовал , но вот три ошибки при их объединении.
// сбой, не только ключевые кадры, масштабируется .\ffmpeg -i input.mp4 -q:v 2 -vf select="eq(pict_type\,PICT_TYPE_I)" -vsync 0 -vf scale=320:-1 thumb%07d.png -hide_banner
// сбой, не удается найти подходящий выходной формат для команды масштабирования, недопустимый аргумент .\ffmpeg -i input.mp4 -q:v 2 -vf select="eq(pict_type\,PICT_TYPE_I)" -vsync 0, scale=320:-1 thumb%07d.png -hide_banner
// сбой .\ffmpeg -i input.mp4 -q:v 2 -vf scale=320:-1, -vf select="eq(pict_type\,PICT_TYPE_I)" -vsync 0 thumb%07d.png -hide_banner
Я пробовал много разных вещей, перемещая команды, комбинируя с помощью запятых и т. Д. c ... Но я не добился успеха в объединение команд get key-frame и scale. Так как же мне go объединить команды получения ключевых кадров и масштабирования, чтобы они работали?
спасибо.