1

我从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不工作

4

2 回答 2

1

解决方案对我有用。我按照这里的教程安装ffmpeg: http: //www.wikihow.com/Install-FFmpeg-on-Windows

设置 PATH 然后我从命令提示符检查 ffmpeg –version 它是否正常工作。

然后我尝试使用 youtube-dl(youtube 链接)-f bestvideo+bestaudio 下载 1080p 视频,但我收到了相同的消息:“警告:您已请求多种格式,但未安装 ffmpeg 或 avconv。格式不会合并。” 当然是安装了。

然后我以管理员身份运行打开命令提示符,尝试了同样的方法,终于成功了。

于 2017-06-06T22:10:42.113 回答
-2
  • 步骤1 : cd ..

  • 第2步 : cd /usr/bin

  • 第 3 步: wget http://ffmpeg.gusari.org/static/32bit/ffmpeg.static.32bit.latest.tar.gz

  • 第4步 : tar -xvzf ffmpeg.static.32bit.latest.tar.gz

于 2017-06-10T14:13:24.913 回答