在 Amazon Linux 中安装 ffmpeg

在 Amazon Linux 中安装 ffmpeg

正如标题所说,我正在尝试在 amazon linux 上安装 ffmpeg 包。

我尝试了以下命令:

wget http://download1.rpmfusion.org/free/el/updates/6/i386/rpmfusion-free-release-6-1.noarch.rpm 
sudo rpm -Uhv rpmfusion-free-release-6-1.noarch.rpm
wget http://download1.rpmfusion.org/nonfree/el/updates/6/i386/rpmfusion-nonfree-release-6-1.noarch.rpm
sudo rpm -Uhv rpmfusion-nonfree-release-6-1.noarch.rpm
sudo yum install ffmpeg

但我收到以下错误:

Error: Package: ffmpeg-libs-0.10.15-1.el6.x86_64 (rpmfusion-free-updates)
Error: Package: ffmpeg-libs-0.10.15-1.el6.x86_64 (rpmfusion-free-updates)
           Requires: libpulse-simple.so.0()(64bit)
Error: Package: ffmpeg-libs-0.10.15-1.el6.x86_64 (rpmfusion-free-updates)
           Requires: libschroedinger-1.0.so.0()(64bit)
Error: Package: ffmpeg-libs-0.10.15-1.el6.x86_64 (rpmfusion-free-updates)
           Requires: libva.so.1()(64bit)
Error: Package: ffmpeg-libs-0.10.15-1.el6.x86_64 (rpmfusion-free-updates)
           Requires: libtheoradec.so.1(libtheoradec_1.0)(64bit)
Error: Package: ffmpeg-libs-0.10.15-1.el6.x86_64 (rpmfusion-free-updates)
           Requires: libcdio_paranoia.so.0()(64bit)
Error: Package: ffmpeg-libs-0.10.15-1.el6.x86_64 (rpmfusion-free-updates)
           Requires: libSDL-1.2.so.0()(64bit)
Error: Package: ffmpeg-libs-0.10.15-1.el6.x86_64 (rpmfusion-free-updates)
           Requires: libcdio_cdda.so.0(CDIO_CDDA_0)(64bit)
Error: Package: ffmpeg-libs-0.10.15-1.el6.x86_64 (rpmfusion-free-updates)
           Requires: libopenal.so.1()(64bit)
Error: Package: ffmpeg-libs-0.10.15-1.el6.x86_64 (rpmfusion-free-updates)
           Requires: libtheoraenc.so.1(libtheoraenc_1.0)(64bit)
Error: Package: ffmpeg-libs-0.10.15-1.el6.x86_64 (rpmfusion-free-updates)
           Requires: libcdio_cdda.so.0()(64bit)
Error: Package: ffmpeg-libs-0.10.15-1.el6.x86_64 (rpmfusion-free-updates)
           Requires: libpulse.so.0()(64bit)
Error: Package: ffmpeg-libs-0.10.15-1.el6.x86_64 (rpmfusion-free-updates)
           Requires: libtheoradec.so.1()(64bit)
Error: Package: ffmpeg-libs-0.10.15-1.el6.x86_64 (rpmfusion-free-updates)
           Requires: libass.so.4()(64bit)
Error: Package: ffmpeg-libs-0.10.15-1.el6.x86_64 (rpmfusion-free-updates)
           Requires: libpulse.so.0(PULSE_0)(64bit)
Error: Package: ffmpeg-libs-0.10.15-1.el6.x86_64 (rpmfusion-free-updates)
           Requires: libgsm.so.1()(64bit)
Error: Package: ffmpeg-libs-0.10.15-1.el6.x86_64 (rpmfusion-free-updates)
           Requires: libtheoraenc.so.1()(64bit)
Error: Package: ffmpeg-libs-0.10.15-1.el6.x86_64 (rpmfusion-free-updates)
           Requires: libcelt0.so.1()(64bit)
Error: Package: ffmpeg-libs-0.10.15-1.el6.x86_64 (rpmfusion-free-updates)
           Requires: libpulse-simple.so.0(PULSE_0)(64bit)
Error: Package: ffmpeg-0.10.15-1.el6.x86_64 (rpmfusion-free-updates)
           Requires: libSDL-1.2.so.0()(64bit)
Error: Package: ffmpeg-libs-0.10.15-1.el6.x86_64 (rpmfusion-free-updates)
           Requires: libcdio_paranoia.so.0(CDIO_PARANOIA_0)(64bit)
Error: Package: ffmpeg-libs-0.10.15-1.el6.x86_64 (rpmfusion-free-updates)
           Requires: libv4l2.so.0()(64bit)
Error: Package: ffmpeg-libs-0.10.15-1.el6.x86_64 (rpmfusion-free-updates)
           Requires: libdc1394.so.22()(64bit)
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

有什么建议么?

答案1

我猜你使用了来自本指南,但此方法无效。发生此错误是因为 Amazon Linux 不包含大多数多媒体库,包括 ffmpeg、Pulse 等。您需要添加包含这些缺失软件包的 CentOS 存储库。

我遇到了同样的错误,这就是我的处理方法。

  1. 创建应包含 CentOS repos 的 repo 文件正确版本.这很重要!
    如果您的 AMI EPEL 存储库有第 6 版,则使用 CentOS 6。如果是第 7 版,则使用 CentOS 7。

    [base]
    name=CentOS-6 - Base
    mirrorlist=http://mirrorlist.centos.org/?release=6&arch=x86_64&repo=os
    #baseurl=http://mirror.centos.org/centos/6/extras/x86_64/
    gpgcheck=1
    gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6
    priority=1
    [updates]
    name=CentOS-6 - Updates
    mirrorlist=http://mirrorlist.centos.org/?release=6&arch=x86_64&repo=updates
    #baseurl=http://mirror.centos.org/centos/6/updates/x86_64/
    gpgcheck=1
    gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6
    priority=1
    [extras]
    name=CentOS-6 - Extras
    mirrorlist=http://mirrorlist.centos.org/?release=6&arch=x86_64&repo=extras
    #baseurl=http://mirror.centos.org/centos/6/extras/x86_64/
    gpgcheck=1
    gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6
    priority=1
    #additional packages that extend functionality of existing packages
    
  2. 为 repo 导入 GPG 密钥

    sudo rpm --import http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6
    
  3. 更新存储库

    yum -y update --skip-broken
    
  4. 照常安装 ffmpeg

    yum install ffmpeg
    

采取了以下方法来自此主题并进行了一些修改以使其更加符合时代潮流。

更新:FFmpeg 已从 CentOS Extras 仓库中删除,从 CentOS 7 开始你应该从中选择它马钱子或者好的回购

相关内容