在本教程中,我们将向您展示如何在 CentOS 上安装 FFmpeg 和 FFmpeg-PHP 扩展。 对于那些不知道的人,FFmpeg 是一个跨平台的流式音频和视频以及录制和转换解决方案。 还有一个很棒的 PHP 包,称为 FFmpeg-PHP,它允许从 PHP 脚本中轻松使用 FFmpeg。 在本教程中,我将向您展示安装 FFmpeg 和 FFmpeg-PHP(PHP 扩展)的简单方法。
本文假设您至少具备 Linux 的基本知识,知道如何使用 shell,最重要的是,您将网站托管在自己的 VPS 上。 安装非常简单,假设您在 root 帐户下运行,如果不是,您可能需要添加 ‘sudo
‘ 到命令以获取 root 权限。
先决条件
- 运行以下操作系统之一的服务器:CentOS 或任何其他基于 RHEL 的发行版。
- 建议您使用全新的操作系统安装来防止任何潜在问题。
- 对服务器的 SSH 访问(或者如果您在桌面上,则只需打开终端)。
- 一种
non-root sudo user
或访问root user
. 我们建议充当non-root sudo user
,但是,如果您在充当 root 时不小心,可能会损害您的系统。
在 CentOS 上安装 FFmpeg
第 1 步。首先,让我们首先确保您的系统是最新的。
sudo yum clean all sudo yum update sudo yum install php-gd php-devel
Step 2. 要安装,首先您必须将与您的 CentOS/RHEL 版本对应的 DAG yum 存储库信息添加到 yum:
nano /etc/yum.repos.d/dag.repo
将以下文本添加到文件并保存:
[dag] name=DAG RPM Repository baseurl=https://apt.sw.be/redhat/el$releasever/en/$basearch/dag gpgcheck=1 enabled=1
添加 Dag 存储库后,使用 yum
使用以下命令安装 FFmpeg。
rpm --import https://apt.sw.be/RPM-GPG-KEY.dag.txt yum install ffmpeg ffmpeg-devel ffmpeg-libpostproc
FFmpeg 基本命令
#ffmpeg -version: show version #ffmpeg -formats: show available formats #ffmpeg -codecs: show available codecs #ffmpeg -decoders: show available decoders #ffmpeg -encoders: show available encoders #ffmpeg -bsfs: show available bit stream filters #ffmpeg -protocols: show available protocols #ffmpeg -pix_fmts: show available pixel formats #ffmpeg -layouts: show standard channel layouts #ffmpeg -sample_fmts: show available audio sample formats #ffmpeg -filters: show available filters
在 CentOS 上安装 FFmpeg-PHP 扩展
步骤 1. 下载 最新的 ffmpeg-php 版本
wget https://nchc.dl.sourceforge.net/project/ffmpeg-php/ffmpeg-php/0.6.0/ffmpeg-php-0.6.0.tbz2 tar -xjf ffmpeg-php-0.6.0.tbz2 cd ffmpeg-php-0.6.0 phpize ./configure make make install
如果你得到 [ffmpeg_movie.lo] 编译FFmpeg-PHP时出现错误1,那么你需要做:
#nano ffmpeg_movie.c Changes in ffmpeg_movie.c: #row 311: list_entry *le; to zend_rsrc_list_entry *le; #row 346: list_entry new_le; to zend_rsrc_list_entry new_le; #row 360: hashkey_length+1, (void *)&new_le, sizeof(list_entry), to hashkey_length+1, (void *)&new_le,sizeof(zend_rsrc_list_entry),
将 FFmpeg.so 模块复制到 PHP 默认模块位置。 现在你必须编辑 php.ini
使用 FFmpeg.so 模块启用 FFmpeg-PHP 支持的文件。
#nano /etc/php.ini
将以下两行放在 php.ini 文件的末尾
[ffmpeg] extension=ffmpeg.so
现在应该安装 FFmpeg-PHP 扩展。 您可以通过创建一个名为 info.php 的文件来检查 /var/www/html/
内容如下:
<?php phpinfo(); ?>