douyicao2199 2015-07-06 10:23
浏览 459

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

I have written a code to get an image from an uploaded mp4 video using ffmpeg in YII.

In localhost, when i have written absolute path like d:/wamp/www/projectname/ffmpeg like this, it is working perfectly and i am getting image but when I tried like below using baseurl

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

I am unable to get the image from video.

Here is my code

$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条回答

  • dougao7801 2015-07-09 19:16
    关注

    it is not possible to execute "http://foo.bar/ffmpeg/ffmpeg.exe", exec requires a absolute path to the binary:

    /**
     * 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!");
    
    评论

报告相同问题?

悬赏问题

  • ¥15 如何实验stm32主通道和互补通道独立输出
  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题