在cakephp中执行exec,以便ffmpeg不转换视频

时间:2016-01-21 10:55:02

标签: php cakephp

我想在cakephp中运行它

function test()
{       
   $mainDirectoryPath = WWW_ROOT . "media";                        
   $filePath = "userId_10/vid_1444387525.mp4";                  

   $newPath = "userId_10/Output.mp4";                  
   $value = exec("ffmpeg -i  $filePath -s 320x320 -vcodec mpeg4 -acodec aac -strict -2 -ac 2 -ar 44100 -ab 128k $newPath");        
   $this->jsonOutput($value);

}

我得到的任何东西,$ value都是空的, 但是在shell中如果我在php文件中运行它作为shell_exec()它可以工作。 上面有什么问题

更新:

好了,我现在创建了一个包含以下代码的文件

<?php

 $mainFile = $_REQUEST['mainFile'];
 $newPath = $_REQUEST['newFile'];

 echo shell_exec("ffmpeg -i  $mainFile -s 320x320 -vcodec mpeg4 -acodec aac -strict -2 -ac 2 -ar 44100 -ab 128k $newPath");   
 @unlink($mainFile);

?>

如果我使用mainFile和newFile运行它,它可以工作。

然而,当我在函数中运行它

   $val = "php video.php?mainFile=$filePath&newFile=$newPath > /dev/null 2>&1 &";
       exec($val);

什么都没发生。

1 个答案:

答案 0 :(得分:0)

检查php.ini文件并且disable_functions没有exec comamnd 出于安全原因,网站管理员在exec中禁用了php.ini命令 从exec文件中的disable_functions中删除php.ini