Ubuntu 安装 php5-ffmpeg

Ubuntu 安装 php5-ffmpeg

当我尝试安装 php5-ffmpeg 时:

apt-get install php5-ffmpeg

我收到一个错误:

The following packages have unmet dependencies:
 php5-ffmpeg : Depends: phpapi-20090626+lfs

据我了解,当我将 php 从 5.3 升级到 5.4 时,我的 php5-ffmpeg 就坏了。

我该如何修复它?我尝试了一些选项,如 -f、-ingnore-dependencies,但并没有解决问题。

我正在使用 Ubuntu 12.04.2 LTS。

答案1

首先尝试使用下面解决依赖关系PPA,但此版本End Of Life建议升级php-5.6

sudo add-apt-repository ppa:ondrej/php5-oldstable
sudo apt-get update

然后

sudo add-apt-repository ppa:mc3man/trusty-media   
sudo apt-get update
sudo apt-get install ffmpeg ffmpeg-devel

下载php-ffmpeghttp://ffmpeg-php.sourceforge.net/并提取。

cd ffmpeg-php-<version>
./configure
make 
sudo make

编辑 php.ini 文件并在文件末尾添加以下内容:

extension=ffmpeg.so

上周我在 centos 6 上成功安装了这个扩展

答案2

如果你看一下ffmpeg-php 官方网页,您会看到最后更新日期是 2007 年。这就是为什么建议您不要在任何生产服务器上使用它,因为您必须将旧版本的 ffmpeg 与 ffmpeg-php 一起使用,考虑到自 2007 年以来创建的错误修复数量,这显然不是一个好主意。

也许更好的解决方案是直接从网页调用 ffmpeg/ffprobe 来对音频/视频进行任何您需要的操作。这样,您就不必为跟上 ffmpeg 的新更新而头疼,因为命令行选项通常不会像 API/ABI 那样发生很大变化。有关从网页使用 ffmpeg 的更多帮助,您可以阅读ffmpeg wiki 上的本教程

答案3

简单的 ffmpeg 安装足以在 php 文件中使用它,但如果仍然需要安装它,请尝试下载文件并手动编译它们。请查看此内容以供参考http://ffmpeg-php.sourceforge.net/

答案4

phpapi-20090626+lfs是另一个包可能“提供”的“虚拟包”。就您而言,这是一个较旧的虚拟包,它php5-ffmpeg需要较新的 PHP 包,但较新的 PHP 包不提供它。如果 PHP 升级破坏了一切,最快的解决方案就是降级 PHP。

对于使用新 PHP 的解决方案,您将需要 的更新版本php5-ffmpeg(如果可用)。我相信这是一个来自外部存储库(如 PPA)的软件包,因为我在正常的发行版存储库中看不到它。如果它不可用,您必须尝试自己构建它。ffmpeg不过,使用 和 PHP 的更新版本可能无法做到这一点……

考虑到具体年龄php5-ffmpeg详细信息),我会尝试更改您的应用程序以避免首先使用这个库,因为它会将您锁定在(至少)旧版本的ffmpeg

同时,我认为最简单的解决方案是将 PHP(以及ffmpeg,如果需要)降级到受支持的版本。

相关内容