11

Что я хочу сделать, это извлечь каждый кадр видеофайла и вывести изображения.

Я пытался использовать команды VLC через терминал, однако, кажется, что он пропускает кадры, хотя я отключил «пропускать кадры». Я думаю, что мой MacBook Pro i7 работает слишком медленно. Кажется странным, что я не могу воспроизвести видеофайл без пропуска кадров. В любом случае, есть ли альтернативы, которые позволили бы мне получить каждый кадр? Кажется, vlc пытается сделать это в режиме реального времени, что может быть проблемой при работе на медленной машине.

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

/Applications/VLC.app/Contents/MacOS/VLC /Users/name/Downloads/complete/video.mkv --video-filter=scene --scene-prefix=movie --scene-ratio=1 --scene-path=/folder --start-time=1035 --stop-time=1100 --no-skip-frames

1 ответ1

15

Я бы сделал это с помощью FFmpeg, которую вы можете получить через Homebrew или, альтернативно, через ffmpegX.

В первом случае установите Homebrew, а затем запустите brew install ffmpeg . Это потребует XCode и сборки из исходного кода, что может быть немного накладными расходами для вашего простого требования.

Во втором случае установите .app и используйте версию ffmpeg входящую в комплект поставки, однако имейте в виду , что эта версия с 2006 года и, следовательно, может работать не со всеми входными файлами.

/Applications/ffmpegX.app/Contents/Resources/ffmpeg

Это сработало для клипа h.264/MP4 для меня.


В любом случае, используйте FFmpeg для вывода каждого кадра отдельно:

ffmpeg -i /path/to/video.mkv /path/to/output-%04d.jpg

Вы также можете использовать png вместо jpg для получения результатов без потерь и изменить число в %04d если вам нужно больше цифр, когда файл длиннее.

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