Хорошо, кажется, что всякий раз, когда я говорю ffmpeg, чтобы снять крышку экрана наполовину, хотя клип (клип может быть до 10 часов), он использует 100% ядра 1 процессор и занимает возраст ... тогда как если бы я позволил ему сделать кадр в начале он идет очень быстро, как будто он сканирует, хотя видео доходит до середины, а не просто прыгает на него!Как захватить скриншоты из видеоролика за 50 минут в клипе и сделать это быстро?
Вот код им в настоящее время с помощью:
ffmpeg -y -itsoffset -“500" -i “clipname.mov" -vcodec png -vframes 1 -an -f rawvideo “clipScreenshot001.png”
Это может занять несколько минут.
Это видео высокой четкости, 720p/1080p и выделение времени, когда они являются необработанными неотредактированными клипами (например, очень длинными).
Так что я надеялся на некоторое лучшее программное обеспечение, которое сделает снимки экрана из видео намного быстрее (должно быть linux и scriptable).
Я нашел это => http://www.fengcool.com/2008/12/ffmpeg- capture-screenshot-from-a-video-file/Это может помочь вам в решении вашей проблемы. – brozo
Возможно, ваше видео не содержит достаточного количества опорных кадров или не индексируется. Захват кадра далеко вперед в потоке всегда потребует полного сканирования и декодирования: интенсивность ИО и вычисление дорогостоящие. Это всегда занимает очень много времени. Если вы не подготовили его заранее, вам нужно обработать видео хотя бы один раз. По сути, вы можете (1) перекодировать видео с другим форматом с индексированными ссылочными кадрами (например, .avi mpeg), вы можете более поздно захватывать экран в желаемых местах намного быстрее. Или, (2) вы можете записывать, скажем один раз в секунду, и сохранять все захваченные экраны. –