在YII中使用ffmpeg从mp4视频中获取图像

时间:2015-07-06 10:23:08

标签: php yii ffmpeg

我已经编写了一个代码,用于在YII中使用ffmpeg从上传的mp4视频中获取图像。

在localhost中,当我写完像这样的d:/wamp/www/projectname/ffmpeg这样的绝对路径时,它工作正常并且我正在获取图像但是当我尝试使用baseurl

时如下所示
$var="http://".$_SERVER['HTTP_HOST'].Yii::app()->request->baseUrl;
$ffmpeg = $var."/ffmpeg/bin/ffmpeg.exe";

我无法从视频中获取图片。

这是我的代码

$var="http://".$_SERVER['HTTP_HOST'].Yii::app()->request->baseUrl;
$ffmpeg = $var."/ffmpeg/bin/ffmpeg.exe";
// $uploaddir is my file upload path
$video = $uploaddir.$image_name;  
//where to save the image
$iname = basename($image_name, ".mp4");
$image = $uploaddir.'/'.$iname.'_img.jpg';  
//time to take screenshot at  
$interval = 5;  
//screenshot size  pn 
$size = '640x480';  
//ffmpeg command  
$cmd="$ffmpeg -i ".$video." -ss 00:00:01.100 -f image2 -vframes 1 ".$image;
exec($cmd);

1 个答案:

答案 0 :(得分:0)

无法执行“http://foo.bar/ffmpeg/ffmpeg.exe”, exec需要二进制的绝对路径:

/**
 * return d:/wamp/www/projectname
 */
$var = dirname(Yii::app()->getBasePath());
$ffmpeg = $var."/ffmpeg/bin/ffmpeg.exe";
if(!file_exists($ffmpeg))
   exit("sorry dude, i cant find ffmpeg.exe!");