Есть несколько инструментов, которые должны быть в состоянии извлечь все кадры из файла фильма:
avconv
avconv -i file.avi -f image2 Out%00d.jpg
FFmpeg
ffmpeg -i input.file thumb%04d.png -hide_banner
Это также может экспортировать BMP, который занимает гораздо меньше времени обработки, чем PNG или JPG.
Существует также bash-скрипт с именем mov2frame.sh, который пытается автоматизировать процесс извлечения FFMPEG.
Mplayer
mplayer -ao null -vo png input.file
или другой вариант:
mplayer -nosound -vo png:z=9 my_file.mp4
VLC Этот медиаплеер, очевидно, может экспортировать наборы изображений, используя его фильтры, но кажется проблематичным, если только вы не используете его только или у вас есть портативная версия.
Создайте папку для хранения ваших кадров и скопируйте путь к ней. Для пользователей Mac OSX/Linux это должен быть полный путь (без ~).
Нажмите Инструменты / Настройки в VLC.
Под «показать настройки», нажмите «все».
Под «Видео» выберите «Фильтры». Отметьте «Сцена видеофильтра».
Разверните «Фильтры» и выберите «Фильтр сцены»,
Вставьте путь из ранее в «префикс пути каталога».
Выберите часть кадров для кодирования в поле «коэффициент записи». 1/12 с выходом каждые 12, 1/1 экспортирует их все
Нажмите «Сохранить».
Нажмите Медиа / Открыть видео и найдите свое видео. Терпеливо позвольте всему этому играть.
Нажмите Инструменты / Настройки. Под «показать настройки», нажмите «все». Под «видео» выберите «фильтры». Снимите флажок «Сцена видеофильтра». Нажмите «Сохранить». Это сделано для того, чтобы VLC не генерировал миниатюры при следующем воспроизведении видео. ссылка на сайт
Также может возникнуть некоторая потенциальная проблема с правами администратора при первом запуске программы:
sudo vlc
[sudo] password for mint16:
VLC is not supposed to be run as root. Sorry.
If you need to use real-time priorities and/or privileged TCP ports
you can use vlc-wrapper (make sure it is Set-UID root and
cannot be run by non-trusted users first).
VLC также работает намного лучше при извлечении в BMP вместо PNG