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

标签 php yii ffmpeg

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

在本地主机中,当我写了像 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);

最佳答案

无法执行“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!");

关于php - 在 YII 中使用 ffmpeg 从 mp4 视频中获取图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31243383/

相关文章:

yii - Yii2 Controller 与 Yii1 Controller 的结合

java - 如何在android中的视频上添加应用程序 Logo

ffmpeg - 使用 ffmpeg 覆盖多个视频

php - EWS nusoap php请求FindItem操作

php - 3 个表的一列中所有数字的总和?

php - 一次运行多个 mysql 命令而不是在代码点火器中顺序运行?

php - woocommerce 基于重量的不同价格

php - 在发送响应之前立即发送到后台操作

php - Yii 格式文本字段日期时间模型

ffmpeg - 如何将视频拆分为多个 n 秒 GIF?