Проблема с установкой ffmpeg 4 на Ubuntu 18.04

У меня есть образ Docker с Ubuntu 18.04. В нем есть, из обычного репо-пакета, ffmpeg 3.4.6, но я хотел бы обновить его до 4.x. Я попробовал "стандартный" способ jonathonf's PPA, но я получаю несоответствие версии библиотеки.

Вот детали:

FROM nvidia/cudagl:10.0-runtime-ubuntu18.04

RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections

RUN apt-get update -y && \
    apt-get install -y apt-utils && \
    apt-get install -y curl x11-apps xserver-xorg libglu1-mesa-dev freeglut3-dev mesa-common-dev \
    libgtk2.0-0 libxmu-dev libxi-dev mesa-utils htop libgtk-3-dev libglfw3 vim \
    python zip unzip software-properties-common ffmpeg imagemagick python3.6-dev && \
    rm -rf /var/lib/apt/lists/*

+ some unrelated stuff (CUDA, python packages, etc.)

после чего (когда я вхожу в контейнер, но это то же самое, если я делаю это в Dockerfile) я делаю bog standard:

add-apt-repository ppa:jonathonf/ffmpeg-4
apt-get update
apt-get install ffmpeg

т.е. то, что я уже делал довольно много раз при настройке различных машин.

Однако, вместо обычного ffmpeg version 4.2 Copyright (c) 2000-2019 the FFmpeg developers или подобного, то, что я получаю при запуске ffmpeg - это вот это:

ffmpeg: relocation error: /usr/lib/x86_64-linux-gnu/libavfilter.so.7: symbol av_gcd_q version LIBAVUTIL_56 not defined in file libavutil.so.56 with link time reference

Я погуглил и похоже, что это несоответствие версии библиотеки. Я пробовал удалять и переустанавливать связанные пакеты libav, помещать ppa в начало Dockerfile (до установки чего-либо существенного), apt upgrade, apt autoremove, всевозможные комбинации, но ничего, кажется, не дает мне работоспособного бинарника.

Думаю, я могу получить статическую сборку ffmpeg и включить ее в мой образ docker, но я бы предпочел не делать этого и просто установить 4.x из ppa/repo пакета. Как я могу это сделать?

0
задан 28 October 2020 в 21:14

1 ответ

Просто установите ffmpeg через Snap:

sudo snap install ffmpeg

https://snapcraft.io/ffmpeg

snap search ffmpeg                                                             
Name                      Version             Publisher      Notes  Summary
ffmpeg                    4.3.1               snapcrafters   -      A complete solution to record, convert and stream audio and video.

https://github.com/snapcore/snapcraft/blob/ master/docker/stable.Dockerfile

-1
ответ дан 5 February 2021 в 15:23

Другие вопросы по тегам:

Похожие вопросы: