2009-03-02
Как сделать скриншот из flv файла
1. Ставим на сервер ffmpeg
> svn checkout svn://svn.ffmpeg.org/ffmpeg/trunk ./ffmpeg
> cd ./ffmpeg
> ./configure
> make
> make install
2. Для создания GD картинки можно использовать, например вот такую функцию:
function Video2GD($filename){
$descriptors = array(
0 => array("pipe","r"),
1 => array("pipe","w"),
2 => array("pipe","w")
);
$cmd = 'ffmpeg -i '.$filename.' -vframes 1 -f image2 /dev/stdout';
$cwd = '/tmp';
$env = array();
$process = proc_open($cmd, $descriptors, $pipes );
if (is_resource($process)) {
fclose($pipes[0]);
$data = stream_get_contents($pipes[1]);
fclose($pipes[1]);
$error = stream_get_contents($pipes[2]);
fclose($pipes[2]);
return imagecreatefromstring($data);
}
return false;
}
пример использования функции Video2Gd:
$im = Video2GD('/yourvideofile.flv');
header('Content-Type: image/png');
imagepng($im);
разрешены только теги br, font, span, p, strong, u, p, blockquote, a, div, img - остальные будут безжалостно удаляться
комментарии:
СПС
Не работает. Откуда-то скопирован кусок кода, в котором не используется часть переменных...
Например - $cwd, $env
Давай, досвидания!