2011-01-10 4 views
1

Как сфотографировать видео через mplayer или ffmpeg на php?Как сфотографировать видео через mplayer или ffmpeg на php?

+1

Не могли бы вы быть более конкретными? EDIT: гораздо более конкретный. – mepcotterell

+0

Например, есть видеоролик размером 5 минут. И мне нужно сделать снимок экрана на примере ровно 2-й минуты. –

ответ

1

попробовать,

Exec ("FFmpeg -i $ video_file_path -an -y -f MJPEG -ss 00:02:00 -vframes 1 $ image_path")

+0

И через mplayer знаете как? –

+1

@ Жасулан: Ну, я еще не использовал mplayer, но быстрый googling дал мне эту ссылку, http://bytes.com/topic/php/answers/479575-how-capture-images-video. Надеюсь это поможет. – Nik

1

Предполагая, что FFmpeg установлена ​​на вашем сервере, вы можете использовать следующий код для вывода кадра ровно 2 минуты в файл JPEG:

function vidtojpeg($video_filename, $dimensions) { 
    exec("ffmpeg -i $video_filename -an -ss 00:01:59 -t 00:00:01 -r 1 -y -s $dimensions video%d.jpg"); 
} 

В этой функции параметр $ video_filename сам за себя , Параметр $ dimensions принимает ширину и высоту выводимых изображений в этом формате: WIDTHxHEIGHT. Например: 320x480 будет приемлемым параметром.

+0

И через mplayer знаете как? –

+0

Нет, извините. Вам абсолютно нужны решения для FFmpeg и Mplayer? – soren121

1

Преобразование видео в кадры и получение необходимых кадров на основе таймингов. Попробуйте следующее: ffmpeg -i video.flv -r 25 -vcodec png -pix_fmt rgb32 %d.png

Вы можете управлять форматами и битрейтом (-r) для получения нужного кадра в надлежащем формате.