我安装了ffmpeg,ffmpeg -codecs
返回了一个庞大的编解码器列表。但输出以下代码:
$ffmpeg = $toolkit->getFFmpegInfo(FALSE);
print_r($ffmpeg);
就是这样:
...
[codecs] => Array
(
[video] => Array
(
)
[audio] => Array
(
)
[subtitle] => Array
(
)
)
找不到任何编解码器。有什么建议吗? (我从源代码安装了ffmpeg)
答案 0 :(得分:1)
也许您尚未配置<或>错误配置 PHPVIDEOTOOLKIT_FFMPEG_BINARY 常量;它应该设置为ffmpeg
命令的完整路径。例如:
define('PHPVIDEOTOOLKIT_FFMPEG_BINARY', '/usr/bin/ffmpeg');
要确定正确的路径,请执行命令which ffmpeg
如果您使用的是PHP5,则可以在examples/php5/example09.php脚本中找到getFFmpegInfo()
函数的用法示例。
在运行示例脚本之前,您必须编辑配置文件examples/example-config.php并使用正确的系统路径调整各种define
。
请查看DEMOS文件,了解每个示例的用途。
答案 1 :(得分:0)
我发现我使用的FFMPEG版本是以不同的格式输出编解码器,在getFFmpegInfo方法中我必须修改下面的正则表达式:
原件:
/ ((?:[DEVAST ]{6})|(?:[DEVASTFB ]{8})|(?:[DEVASIL\.]{6})) ([A-Za-z0-9\_]+) (.+)/
对于我的服务器:
/([DEVASI\.]{4}) ([A-Za-z0-9\_]+) (.+)/