$movie = new ffmpeg_movie('Bear.wmv');
我可以使用getDuration(),getFilename()....没有任何问题,所以它似乎都在工作$output = exec('ls -lart');
我得到了一个不错的结果。但是当我这样做时:
exec('ffmpeg -i Bear.wmv outputfile.flv')
没有任何反应
如果我添加:$command_output, $result
我猜的唯一结果是:array { }
我已经尝试了我能想到的一切:
exec('ffmpeg -i Bear.wmv outputfile.flv')
exec('ffmpeg.so -i Bear.wmv outputfile.flv')
exec('/usr/lib/php5/20090626/ffmpeg -i Bear.wmv outputfile.flv')
我已经尝试了所有尺寸和文件夹以及编解码器,但仍然没有得到任何回报
我想做的就是将那个视频,Bear.wmv转换成一个flv文件。
我非常接近像婴儿一样哭泣和/或跳出窗外(我只在一楼,但仍然大声笑) 所以请帮忙!! ??!
答案 0 :(得分:1)
FFMPEG是一个不输出到STDIO而是STDERR的应用程序,所以你可以将它重定向到标准输出:
$cmd = $FFMPEGDIR . " -i somefile.avi 2>&1"; // SEE 2>&1 !!
提取尺寸:
exec( $cmd , $info );
echo "<pre>".print_r($info,true)."</pre>";
$resolution = preg_match( '@[ ,\t]([0-9]{3,4}x[0-9]{3,4})[ ,\t]@si' , implode( " " , $info ) , $durmatches );
$rtab = explode( "x" , $durmatches[1] );
$videowidth = $rtab[0];
$videoheight = $rtab[1];
答案 1 :(得分:0)
最近为音频设置了ffmpeg ...它有点像黑色艺术,ffmpeg因为不能玩得好(或一贯地)而臭名昭着 - 对我来说有效(工作)可能不适合你!
尝试使用:shell_exec()
或:
$command="{$FFMPEG_BINARY} ... rest of your options";
$process=proc_open($command, $descriptors, $pipes);
if (!$process)
{
// failed to exec...
}
else
{
// command ran...
}
我的ffmpeg在......“/ usr / bin / ffmpeg”只是检查你是否也有正确的道路。