我从http://ffmpeg.org/releases/ffmpeg-2.5.3.tar.bz2安装了版本 ,还尝试了 yum 版本,但对于 youtube-dl 来说还不够新。
我试过了export PATH=$PATH:/usr/local/bin/ffmpeg
,PHP/Apache 仍然找不到 FFmpeg。
Apache 用户在 CentOS 6.5 上运行 PHP 脚本。
从 php 命令行调用我的 youtube-dl.php 作为 root 工作(使用 FFmpeg)
从 php apache 用户调用我的 youtube-dl.php 工作(不使用 FFmpeg)
我正在尝试做的事情:shell exec youtube-dl(youtube dl 在其二进制代码中调用 FFmpeg,现在可以对其进行修改以添加完整路径)。这可行,但 FFmpeg 部分是我的 youtube-dl.php 文件
$output = shell_exec('youtube-dl -o "/home/test/%(title)s.%(ext)s" '.$url.' -f bestvideo+bestaudio 2>&1');
echo "<pre>$output</pre>";
# which ffmpeg
/usr/local/bin/ffmpeg
该站点其他页面上的某个人说 local/bin 用于自定义版本,但我直接从 FFmpeg 下载了它并进行了标准的 ./configure make install。
完毕:
chmod 755 to /usr/local/bin/ffmpeg
直接将 FFmpeg 作为测试命令运行(有时有效,但在我升级/重新启动/updatedb/etc 时不起作用)
$output = shell_exec('ffmpeg 2>&1');
echo "<pre>$output</pre>";
结果:
<pre>sh: ffmpeg: command not found</pre>
我阅读了所有这些类似的问题,但它们没有帮助:
FFMPEG PHP 似乎不工作
FFmpeg 不工作
使用 FFMPEG 录制音频在终端中工作,但不能通过 PHP 的 exec()
ffmpeg-php 权限在本地主机上被拒绝 PHP 的
C++ 程序不能正常工作
FFMPEG 从命令行工作但不是 PHP
调用 shellscript来自 php - 无法正常工作
使用 ffmpeg 转换文件时出现 PHP 内部服务器错误 500
PHP 代码在 exec ffmpeg
ffmpeg 无法从 php 脚本工作但可以从命令行
工作 PHP exec() 无法使用 ffmpeg
ffmpeg 无法使用PHP exec()
ffmpeg php exec不工作