当前有个项目,系统是 Centos6.5  安装的 XAMPP 的集成环境   Php版本为 php5.4 
目前要做一个功能,就是对用户上传的Mp4视频 自动截取第一秒作为封面
相关代码如下:$cmd = "/usr/bin/ffmpeg -i /home/wwwroot/201601.mp4 -y -f  image2  -ss 00:00:03 -vframes 1 /home/wwwroot/test.jpg";
$res = shell_exec($cmd);
php执行不成功 也获取不到返回值但是 ffmpeg 相关插件我都已经安装了
直接通过SHH连接服务器运行 :/usr/bin/ffmpeg -i /home/wwwroot/201601.mp4 -y -f  image2  -ss 00:00:03 -vframes 1 /home/wwwroot/test.jpg是成功的,可以截图。请问这是哪方面出了问题啊。
已经折腾两周了,还是搞不定!  急等高手帮忙。

解决方案 »

  1.   

    是不是对$res = shell_exec($cmd);返回结果处理不对
      

  2.   

    不是啊 直接就没返回任何结果啊var_dump 出来是 Null
    print_r 出来什么都没
      

  3.   

    ffmpeg -i /home/wwwroot/201601.mp4 -y -f  image2  -ss 00:00:03 -vframes 1 /home/wwwroot/test.jpg
    把前面的目录去掉呢
      

  4.   

    一般来说你linux上面可以执行就说明你插件是没有问题,问题出在我们执行php一般是apache用户,和我们实际登录linux的账户权限是不一样的,估计是权限问题
    你可以吧错误信息答应出来,下面供参考
    $cmd = "/usr/bin/ffmpeg -i /home/wwwroot/201601.mp4 -y -f  image2  -ss 00:00:03 -vframes 1 /home/wwwroot/test.jpg  2>&1";
    $res = exec($cmd,$arr,$status);
    var_dump($arr);var_dump($status);