Поскольку ffmpeg не поддерживает аргумент командной строки для записи метки времени текущего кадра в качестве имени выходного файла, я отчаянно ищу инструмент командной строки, который поддерживает извлечение изображения из видео / видео-потока и вывод метки времени текущего кадра в качестве имени файла.

Есть ли какой-либо инструмент для такого требования?

1 ответ1

1

Вы можете сделать это в многошаговом процессе, используя ffmpeg и инструмент пакетного переименования, такой как Advanced Renamer.

Предположим, вы хотите извлечь каждый 40-й кадр

# 1 Извлечение кадров и список временных меток презентации.

ffmpeg -i in.mp4 -vsync 0 -vf select=not(mod(n\,40)) frames-%d.jpg
       -vf select=not(mod(n\,40)) -f mkvtimestamp_v2 pts.txt

Помимо изображений, вы также получите pts.txt, который выглядит следующим образом:

# timecode format v2
0
1600
3200
4800
6400
8000
9600
11200
12800
14400
16000

Это временные метки для извлеченных кадров, выраженные в миллисекундах

# 2 Затем используйте приложение пакетного переименования, которое поддерживает переименование с использованием списка, чтобы изменить имена файлов фреймов. Или сценарий оболочки.

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