BREAKUP делает BODYBUILDERS | Неудержимая мотивация спортзала | Abhijeet Bankar AB

У меня есть несколько обучающих видеороликов для интрасети, снятых на протяжении многих лет в различных форматах (AVI, WMV, MOV, RealPlayer), и я хотел бы предоставить что-то вроде функции предварительного просмотра - возможно, анимированный GIF-изображение с несколькими типичными экранами или, может быть, эскиз лист я могу показывать пользователю изображение каждые несколько секунд видео. Есть ли простой инструмент для создания изображений, который может создавать такие вещи?

Независимость от платформы была бы отличной, но она единственная (пока, ха-ха), поэтому Windows, Mac или Linux подойдут. Спасибо.

Я просто подумал, что это должно быть легко сделать на python, и поиск в Google "эскиз видео на python" на этом сайте даст:

http://notbrainsurgery.livejournal.com/29773.html

Вы можете попробовать предоставленный там исходный код ...

  • +2 если бы мог. Это не только работает, но и позволяет легко извлечь один кадр, а затем еще один с 5-6 кадрами, так что превью анимируются только при наведении курсора мыши. Какая полезная ссылка :)

Нельзя пропустить святой Грааль видеосистем, FFMPEG. Он делает практически все, что вам может понадобиться в онлайн-видео - берет в нескольких форматах и ​​конвертирует в другой, эскизы и т. Д. Сильно модифицированный промышленный вариант FFMPEG - это то, что позволяет YouTube работать так, как он делает.

Вот краткое руководство по командной строке для миниатюр: http://blog.prashanthellina.com/2008/03/29/creating-video-thumbnails-using-ffmpeg/

Есть много других возможностей для всех остальных функций.

Я уже отвечал, как это сделать, в Stack Overflow здесь, используя ffmpeg и PHP.

Извините за ответ, ориентированный на код, но сделать это в пакетном процессе проще всего, написав реальный код.

/** * ExtractThumb, extracts a thumbnail from a video * * This function loads a video and extracts an image from a frame 4 * seconds into the clip * @param $in string the input path to the video being processed * @param $out string the path where the output image is saved */ function ExtractThumb($in, $out) { $thumb_stdout; $errors; $retval = 0; // Delete the file if it already exists if (file_exists($out)) { unlink($out); } // Use ffmpeg to generate a thumbnail from the movie $cmd = 'ffmpeg -itsoffset -4 -i $in -vcodec mjpeg -vframes 1 -an -f rawvideo -s 320x240 $out 2>&1'; exec($cmd, $thumb_stdout, $retval); // Queue up the error for processing if ($retval != 0) { $errors[] = 'FFMPEG thumbnail generation failed'; } if (!empty($thumb_stdout)) { foreach ($thumb_stdout as $line) { echo $line . '\n'; } } if (!empty($errors)) { foreach ($errors as $error) { echo $error . '\n'; } } } 

Нет ничего более кроссплатформенного, чем это.

Вот разбивка флагов:

  • -itsoffset флаг - это время в видео, когда снимок сделан
  • -vcodec - это тип вывода (изменить на png для png и т. д.)
  • -vframes установлен в единицу, потому что вы извлекаете только один кадр (IE изображение)
  • вам также может потребоваться добавить -deinterlace

Вот об этом. Нет ничего проще. Если вы делаете несколько снимков экрана для фильма, просто измените флаг -itsoffset. Помимо этого, это полный пакет, если вы не решили добавить более точную информацию об ошибках или подавить выходные данные.

Я думаю, что Flowplayer (он очень хорошо документирован и содержит множество примеров) или что-то подобное - лучшее решение в качестве фрагмента, который вам, возможно, придется отредактировать или поддерживать.

Как только FlowPlayer настроен правильно, он может показывать превью, не загружая видео целиком. Это немного сложно настроить, но как только он заработает, у вас будет надежное, многоплатформенное решение. (И при нажатии на большой палец воспроизводится видео ;-))

Если вы выберете flowplayer, вам также следует взглянуть на video4all (использует html5 с flowplayer в качестве запасного варианта) и плагины flowplayer.

Для вас трудились: Charles Robertson | Хотите связаться с нами?