Чи відсутній FFmpeg в офіційних сховищах 14.04?


293

Я спробував встановити ffmpeg в довірений / Ubuntu 14.04 і отримав таке повідомлення:

$sudo apt-get install ffmpeg

Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package ffmpeg is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'ffmpeg' has no installation candidate

Чому пакет не доступний?


1
Який вихід: apt-cache search ffmpeg | grep "ffmpeg" Якщо ви не бачите ffmpegв списку повернених результатів, значить, щось пішло не так з вашим менеджером репо. Наразі я б запропонував встановити, будуючи з джерела. Завантажте звідси.
wyas

2
Зауважте, що станом на 2018 рік avconv не знаходиться у ffmpeg, а libav-tools не знаходиться у сховищі Ubuntu!
Сова

Відповіді:


258

Останні новини


FFmpeg і libav

libav із сховищ Ubuntu

У останніх випусках Ubuntu розпочав доставку вилки libav замість FFmpeg . Якщо ви встановили пакет ffmpeg , то ви фактично встановили пакет libav-tools та програму, яка наказала вам використовувати замість цього в майбутньому, створюючи враження, що ffmpeg застарілий, чого це не так.avconvffmpeg

Перехідний ffmpegпакет, здається, був видалений з довіреного / Ubuntu 14.04 (порівняйте список пакунків, що стосуються чіткості та надійності вихідного пакету ).

Отже, одним із варіантів є встановлення пакету libav-tools та використання avconvнатомість (зауважте, що це не "mainline" FFmpeg, а видатна вилка натомість).

FFmpeg від PPA на Launchpad

Інший варіант - використовувати PPA, який забезпечує FFmpeg. Перегляньте сторінку завантаження FFmpeg, щоб отримати детальну інформацію про доступні PPA та пакети. Ви повинні раз у раз перевіряти окремі PPA, чи вони все ще актуальні.

Пов’язані запитання:

Встановити з джерела

Інший варіант - встановити пакети залежності FFmpeg, потім вручну компілювати + встановити його з джерела.

Використовуйте статичні побудови

Хоча це може виглядати трохи незручно з точки зору упаковки, ви також можете використовувати будь-яку статичну збірку з надійних джерел. У моєму випадку я зберігаю 32-бітні та 64-бітні бінарні файли FFmpeg разом із x264-10-бітовими бінарними файлами у папці, щоб запускати їх у Wine або Windows, коли мені потрібно.


Далі, що я міг би знайти, досліджуючи цю тему. Я уважно не стежу за розвитком обох проектів, і я не маю намір звинувачувати когось. Ви як читач не повинні робити жодного з них.

Як вила сталася?

У Вікіпедії зазначається, що роздвоєний проект, а також початковий реліз були оголошені 13 березня 2011 року, однак є дещо більше, що відбувається.

Копати через Git здійснює

  • 18 січня 2011 р. - зробити f4f5cab94e0881cd30965b28f3d78d9c63d6918e

    Лідер проекту FFmpeg Майкл Нідермайер видалений з MAINTAINERSфайлу.

  • 27 липня 2011 р. - зробити 6291d7e41605c0b1e9debfae8a2b1d4cf7b0e0b3

    avconv вводиться:

    Зробіть копію ffmpeg під новою назвою - avconv.

    Він буде надалі розвиватися з кількома несумісними змінами.

    ffmpeg.c залишатиметься таким, як є деякий час, тому будь-які сценарії, які використовують його, не будуть порушені.

  • 27 липня 2011 р. - зробити 791a86c37a03b94207bc2d0ad4cbe7f39d7e495a

    До роздвоєної версії ffmpeg.cвихідного коду додається попередження , яке може вводити в оману користувачів, які не помітили про вилку, і що вони вже не використовують FFmpeg.

  • 12 січня 2012 року - виконувати 0fec2cb15cc6ff1fcc724c774ec36abadcb7b6ad

    ffmpeg.c видаляється з вихідного коду.

Офіційні повідомлення на libav.org

Наступні публікації - із розділу новин (із найстарішим останнім):

09 серпня 2011 року

Оновлено 12.09.2011.

Для узгодження з нашою новою назвою ми перейменовані на ffplay в avplay , ffserver в avserver і ffprobe в avprobe . Їх поведінка однакова, просто назви були змінені.

За допомогою ffmpeg (інструмента командного рядка) ми вирішили використати цю можливість для вирішення деяких давніх проблем юзабіліті, що передбачає порушення сумісності. Тому ми додали новий інструмент на ім'я avconv, який базується на ffmpeg , але має інший (сподіваємось, більш потужний і простий у використанні) синтаксис для деяких варіантів. ffmpeg буде зберігатися в його поточному стані протягом деякого часу, тому жоден сценарій або фронталі, які використовують його, не порушаться. Однак це не буде розвиватися далі.

Різниці між avconv і ffmpeg є:

[...]

Зауважте, що інтерфейс avconv ще не вважається стабільним. Більше несумісних змін може настати в наступні тижні. Ми оголосимо тут, коли avconv стабільний.

А раніше в 2011 році:

18 березня 2011 року

Ми щойно висунули ще один випуск точки з нашої гілки 0.6 версії: Libav 0.6.2 . Це ще один випуск, що стосується лише технічного обслуговування, який стосується двох проблем безпеки.

Відтепер ми будемо використовувати нашу нову назву проекту libav . Але не хвилюйтесь, порівняно з попереднім випуском 0.6.1, єдиними функціональними змінами є два виправлення безпеки для декодерів VC1 та APE. Це означає, що libav забезпечує безболісну заміну існуючих установок FFmpeg.

Більше того, ми пишаємось тим, що супроводжуємо цей випуск джерела файлами та бібліотеками для платформи win32 . Ці бінарні файли включають кодування H.264 за допомогою вбудованої бібліотеки x264. Насолоджуйтесь!

Дистриб'юторів та системних інтеграторів рекомендується оновлювати та ділитися своїми виправленнями проти наших відділень релізу.

17 березня 2011 року

Ми щойно висунули ще один випуск точки з нашої гілки 0,5 випуску: FFmpeg 0.5.4 . Це ще один випуск, призначений лише для обслуговування, який стосується ряду проблем безпеки.

Дистриб'юторів та системних інтеграторів рекомендується оновлювати та ділитися своїми виправленнями проти наших відділень релізу.

13 березня 2011 року

Ми, як група розробників FFmpeg, вирішили продовжувати розробку FFmpeg під назвою Libav. Вся існуюча інфраструктура буде передана до домену libav.org.

Ви можете оновити сховище git за допомогою наступної команди:

git remote set-url origin 'git://git.libav.org/libav'

На даний момент ми все ще доступні через списки розсилки FFmpeg та канали IRC, але ми перейдемо до колег libav.org. Протягом перехідного періоду веб-сайт та джерело все ще можуть містити посилання на FFmpeg. Вони з часом зникнуть, за винятком випадків, коли це є історично актуальним.

24 лютого 2011 року

Розробка FFmpeg переміщена до Git, і сховище SVN більше не оновлюється. SVN-сховище може бути видалено найближчим часом, тому рекомендується замість цього використовувати репозиторій Git .

Остання редакція, допущена до SVN, була r26402 2011-01-19 і замінила svn: external libswscale окремою копією.

Зауважте, що розробка FFmpeg насправді перейшла до сховища Git і вже є два сховища Git. Дивіться відповідну сторінку завантаження проектів.


Коли відбулася ця зміна?
Сет

@Seth Ви маєте на увазі доставку libav замість FFmpeg або відмову від перехідного пакету? Я знайшов електронний лист, який вказує на звіт про команду від Технічної ради, а також додав посилання на вихідний пакет на панелі запуску, де можна порівняти чіткі та надійні списки пакунків, але я не знаю деталей.
LiveWireBT

Я мав на увазі скасування пакету, хоча мене цікавлять часові рамки для обох, якщо це можливо.
Сет

3
Я можу перенести, як встановити ffmpeg з ppa до кінця. Як "Якщо ти справді хочеш плавати проти припливу, і ти вже читаєш усі ці речі ... тоді ти можеш це зробити". Замість того, щоб ставити його повністю на фронті. Мовляв, рекомендуйте використовувати речі, які знаходяться в main / uni / multi, якщо ви не можете уникнути PPA.
RobotHumans

1
@hbdgaf Я додав askubuntu.com/q/35629 як голову вгору. PPA FFmpeg вже був останнім, не враховуючи нещодавно доданий розділ історії. Замість чистої політики (і, мабуть, ненависті) я хотів би обговорити іншу функціональність, як, наприклад, новий фільтр w3fdifдетермінації у FFmpeg (але це поза темою для цього питання). Я не розумію, чому я, очевидно, зволікаю (я не звинувачую вас зокрема) у спробі об'єктивно пояснити, що сталося. Я не маю жодної приналежності до одного з цих проектів і маю намір бути максимально об'єктивним.
LiveWireBT

120

ffmpegбула замінена в попередніх випусках avconvпрограмою з проекту libav.

Для встановлення avconvвам потрібно встановити libav-toolsпакет:

sudo apt-get install libav-tools

avconvдуже схожий на ffmpeg, але вони також мають деякі відмінності в синтаксисі.

Редагувати: Здається, Ubuntu 16.04LTS знову є ffmpegу своїх сховищах, тому libav-tools - це фіктивний пакет і створює лише псевдонім avconv -> ffmpeg(та інші)


Проста відповідь, але всі вказівки в Інтернеті говорять про те, як використовувати ffmpeg для створення матеріалів, а не avconv, і ось що привело мене до цієї сторінки. З вибаченнями Рутруса: мінус один. - Можливо, якби ви пояснили відмінності, ми змогли б з цим працювати.
Аарон Холл

2
@ aaron-hall Я думаю, що твій -1 несправедливий. Ви очікуєте, що щось не так. Питання, поставлене в 2014 році, дуже чітке: чи не вистачає він 14.04? І відповідь - так, в деяких попередніх версіях ffmpeg стільки ж був лише псевдонімом avconv. Не має значення, що ви шукали. Можливо, ви не прочитали заголовок сторінки, перш ніж натиснути цю сторінку. Але не хвилюйтесь, я редагую з відмовою від відповідальності людей, які мають репутацію 184, які не знають, як працює stacksxchange.
Рутрус

У мене ще є 14.04, і я хочу використовувати ffmpeg - це avconv заміна, що випадає, або що? Які відмінності?
Аарон Холл

Переважна більшість ваших представників на цьому веб-сайті пояснюється цією відповіддю, яку я міг би написати лише виходячи з матеріалу у верхній відповіді. Ви повинні заробити репутацію, написавши гідну відповідь, яка говорить, принаймні коротко і взагалі, в чому полягають відмінності. Махати руками - це марна трата часу. Якщо це справді не є лише псевдонімом, в цьому випадку не повинно бути різниць у синтаксисі. І якщо ви це зробите, ви перевернете мою думку щодо відповіді, але, як це зараз є, вона суперечить самій собі! Повідомте мене, коли я можу видалити ці коментарі.
Аарон Холл

2
libav-tools - це виделка від ffmpeg. ffmpegбув замінений avconvз 2012 по 2014 рік у Ubuntu repos. Ви можете задати це нове запитання для своєї відповіді або знайти його самостійно . Ви можете використовувати ffmpeg знову з Ubuntu 15.04. Анотація: libav сумісний із синтаксисом ffmpeg, але не є зворотним.
Рутрус

47

ffmpeg видалив repo Ubuntu замість libav. вам слід додати ppa:

sudo add-apt-repository ppa:mc3man/trusty-media
sudo apt-get update
sudo apt-get install ffmpeg gstreamer0.10-ffmpeg

дивіться свій результат


1
Це повинно бути: `sudo add-apt-repository ppa: mc3man / trusty-media :) не може це редагувати, недостатньо змінено символів.
IndexOutOfBoundsException

1
Це не PPA, зазначене на FFmpeg.org як поточне офіційне PPA. (Також учасник проекту, що підтримує PPA, може змінитися. Ось чому я вирішив не включати інструкції, як додати певний PPA.) Також якщо ви подивитесь на цей PPA, він оновлює набагато більше пакетів, ніж просто ffmpeg.
LiveWireBT

Це більше не працює.
MadeOfAir

Це справді працює. Я щойно додав цей PPA і зараз встановлюю FFMPEG.
Мухаммед бен Юсрат

3
@LiveWireBT (та інші), що PPA тепер надається як посилання Ubuntu на сторінці завантажень FFmpeg ...
Wilf

44

Ви також можете використовувати цей PPA: ppa: jon-severinsson / ffmpeg

Редагувати: Цю програму видалено з Launchpad, я не знаю чому. Замість нього можна використовувати PPA samrog131 (для Trusty, Utopic & Vivid)

sudo add-apt-repository ppa:samrog131/ppa
sudo apt-get update
sudo apt-get install ffmpeg-set-alternatives

PPA також містить інші пакети, які ви можете не захотіти. Видаліть ppa після встановлення.

sudo add-apt-repository --remove ppa:samrog131/ppa
sudo apt-get update

1
Виправлений apt-add-repository -> add-apt-repository. Якщо APT-додати-сховище не працює для вас більше, спробуйте це: stackoverflow.com/questions/13018626 / ...
RedPixel

2
Це в основному та сама інформація, яку я розмістив у своїй відповіді, але без попередження, яке завжди слід надати перед тим, як порадити користувачам встановлювати пакети від PPA. Також є ймовірність, що в майбутньому хтось інший візьме на себе підтримку PPA ffmpeg або що PPA буде просто перенесено чи перейменовано. Тому посилання на офіційні вказівки - це правильний спосіб, оскільки це зменшує надмірність та зусилля з обслуговування.
LiveWireBT

2
Цей не забезпечує інтеграцію GStreamer-ffmpeg. @ Дуонг відповідь ( mc3manз PPA) робить.
Віктор Сергієнко

Цей ppa не підтримує утопію.
Амір Алі Акбарі

12
І тепер цей PPA був видалений.
MFern

8

Пакет FFMPEG з деякого часу був видалений із сховищ Debian. Досі триває суперечка щодо включення пакета знову у сховища. Ubuntu як похідна Debian, залежить від прийнятих рішень. З давніх часів пакет був просто порожнім із залежністю від libav. Це було змінено 12 травня 2012 року, коли пакет було видалено та вилучено з архівів:

libav (6:0.8.99-1537-gacb2c79-1) experimental; urgency=low

  * New upstream snapshot
    - Drop patches applied upstream
    - Longer build libpostproc, dropped upstream
    - follow soname bump of libavcodec and libavformat 53->54
    - New library: libswresample
  * no longer build and use dirac, removed upstream in favor of libschroedinger
  * remove deprecated ffmpeg package
  * bump shlibs version

 -- Reinhard Tartler <siretart@tauware.de>  Sat, 12 May 2012 22:02:03 +0200

1
Не кажіть, що це було порожньо, упаковки в соусі містять бінарне dpkg --contents ffmpeg_0.8.7-1ubuntu2_amd64.deb [...] -rwxr-xr-x root/root 106624 2013-10-11 10:41 ./usr/bin/ffmpeg.
LiveWireBT

1
@LiveWireBT Ви могли б використовувати пакет самостійно? Цей єдиний файл був просто двійковим, щоб зв’язати файл bcon avconv. Перехідні пакети завжди вважаються порожніми.
Брайам

1
Ми можемо просто думати одне і те ж і нерозуміти один одного. :)
LiveWireBT

3

У мене була така ж помилка при спробі запуску

sudo apt-get install ffmpeg

Тому я поєднав кілька інших відповідей, а також вміст цього веб-сайту , щоб отримати наступний рецепт, який працював на мене:

sudo apt-get install ppa-purge
sudo ppa-purge ppa:mc3man/trusty-media  # ignore warning if not found
sudo add-apt-repository ppa:mc3man/trusty-media
sudo apt-get update
sudo apt-get dist-upgrade

sudo apt-get install ffmpeg

Тепер я бачу, що ffmpeg встановлений:

sudo find / -type f -name "ffmpeg"

повертає /opt/ffmpeg/bin/ffmpeg

З рядка bash команда ffmpegтепер повинна працювати з будь-якої папки.


1
dist-upgradeне потрібен для встановленняffmpeg
Raptor

1

Якщо ви хочете встановити ffmpeg 2.2.1 (з джерела) в Ubuntu 14.04, ви можете спробувати, скориставшись наступними параметрами:

Для 64-розрядної ОС:

Список залежностей:

yasm frei0r-plugins-dev gnutls-bin libgnutls-dev libass-dev libgsm1-dev libmp3lame-dev libopencv-dev libopenjpeg-dev libopus-dev libpulse-dev libschroedinger-dev libsoxr-dev libspeex-dev libtheora-dev libv4l-dev libvorbis-dev libvpx-dev libx264-dev libxvidcore-dev libopenal-dev libcdio-paranoia-dev

Варіанти компіляції:

./configure --prefix=/usr --bindir=/usr/bin --datadir=/usr/share/ffmpeg --incdir=/usr/include/ffmpeg --libdir=/usr/lib/x86_64-linux-gnu/  --mandir=/usr/share/man --arch=x86_64 --optflags='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic' --enable-bzlib --disable-crystalhd --enable-frei0r --enable-gnutls --enable-libass --enable-libcdio --enable-libdc1394 --disable-indev=jack --enable-libfreetype --enable-libgsm --enable-libmp3lame --enable-openal --enable-libopencv --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libvorbis --enable-libv4l2 --enable-libvpx --enable-libx264 --enable-libxvid --enable-x11grab --enable-avfilter --enable-avresample --enable-postproc --enable-pthreads --disable-static --enable-shared --enable-gpl --disable-debug --disable-stripping --shlibdir=/usr/lib/x86_64-linux-gnu/ --enable-runtime-cpudetect

Для 32-бітної ОС:

Список залежностей:

yasm frei0r-plugins-dev gnutls-bin libgnutls-dev libass-dev libgsm1-dev libmp3lame-dev libopencv-dev libopenjpeg-dev libopus-dev libpulse-dev libschroedinger-dev libsoxr-dev libspeex-dev libtheora-dev libv4l-dev libvorbis-dev libvpx-dev libx264-dev libxvidcore-dev libopenal-dev libcdio-paranoia-dev libopencore-amrwb-dev libopencore-amrnb-dev

Варіанти компіляції:

./configure --prefix=/usr --libdir=/usr/lib --shlibdir=/usr/lib --mandir=/usr/share/man --enable-runtime-cpudetect --enable-gpl --enable-version3 --enable-postproc --enable-avfilter --enable-pthreads --enable-x11grab --enable-vdpau --disable-avisynth --enable-frei0r --enable-libdc1394 --enable-libgsm --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librtmp --enable-libspeex --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libxvid --extra-cflags='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions --param=ssp-buffer-size=4 -grecord-gcc-switches -m32 -march=i686 -mtune=atom -fasynchronous-unwind-tables' --disable-stripping  

Для отримання додаткової інформації дивіться моє відео на YouTube .


Чому пропонують побудувати як спільний для amd64 ??, мало що можна отримати і може зламати інші програми, які залежать від цих спільних ліб.
дог

0

Якщо ви хочете, щоб останній випуск був свіжий від github, який задовольняє лайки помилок, створених у youtube-dl

ERROR: ffprobe or avprobe not found. Please install one.

тоді видайте ці cmds:

sudo apt-get build-dep ffmpeg

git clone https://github.com/FFmpeg/FFmpeg.git

cd FFmpeg

./configure   --build-suffix=-ffmpeg --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --enable-gpl --enable-shared --disable-stripping --enable-avresample --enable-avisynth --enable-frei0r --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libopenjpeg --enable-openal --enable-libopus --enable-libpulse --enable-librtmp --enable-libschroedinger --enable-libshine --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libxvid --enable-libzvbi --enable-opengl --enable-x11grab --enable-libdc1394 --enable-libiec61883 --enable-libzmq --enable-libssh --enable-libsoxr --enable-libx264 --enable-libopencv --enable-libx265

make -j8
sudo make install

насолоджуватися,


-1

Перша установка avconv:

$ sudo apt-get install libav-tools

Потім створіть м'яке посилання на avconvім’я ffmpeg:

$ sudo ln -s /usr/bin/avconv /usr/bin/ffmpeg

Тепер ви можете ffmpegнормально користуватися.


Запитування за /usr/binдопомогою посилань, як правило, не є хорошою ідеєю. Що станеться, якщо ви оновите до модерної версії Ubuntu і спробуєте встановити ffmpegз репо? Крім того, avconvце погана заміна ffmpeg: йому бракує багатьох функцій, фільтрів тощо
llogan

-1

Мені було витрачено 2 тижні, щоб встановити новітню версію ffmpeg 2.8.11. Ця версія використовується для Ubuntu 16.04. Раджу вам встановити цю версію. Я протестував на Ubuntu 12.04 і Ubuntu 14.04, і це добре працювало. Ви можете встановити libav-інструменти, як вказівки вище, але у вас виникнуть проблеми щодо сумісності. Тому що libav-tools та ffmpeg зараз були розроблені двома різними групами. Дотримуючись моїх вказівок. Якщо у вас є якісь проблеми, ви можете надіслати мені електронний лист: hohaidang.khtn@gmail.com

$ sudo apt-get update
$ sudo apt-get -y install build-essential checkinstall git libfaac-dev libgpac-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev librtmp-dev libtheora-dev libvorbis-dev pkg-config texi2html yasm zlib1g-dev  libavcodec-extra-53
$ sudo apt-get -y install autoconf automake build-essential libass-dev libfreetype6-dev libtool libva-dev libvdpau-dev libvorbis-dev libxcb1-dev libxcb-shm0-dev libxcb-xfixes0-dev pkg-config texinfo zlib1g-dev
$ sudo apt-get install libdc1394-22 libdc1394-22-dev libgsm1 libgsm1-dev libopenjpeg-dev libschroedinger-1.0-0 libschroedinger-dev libschroedinger-doc libspeex-dev libfaac-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libsdl1.2-dev libtheora-dev libvorbis-dev libx11-dev libxfixes-dev libxvidcore-dev libx264-dev
$ wget https://www.ffmpeg.org/releases/ffmpeg-2.8.11.tar.xz
$ tar xf ffmpeg-2.8.11.tar.xz
$ cd ffmpeg-2.8.11/
./configure --enable-gpl --enable-version3 --enable-nonfree --enable-postproc --enable-x11grab --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libdc1394 --enable-libfaac --enable-libgsm --enable-libmp3lame --enable-libopenjpeg --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libxvid --disable-yasm // disable yasm if you are using Ubuntu 12.04, if not --enable-yasm
$ make
$ sudo make install

Перевірте ffmpeg, ffserver, ffplay, ffprobe у терміналі. Удачі

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.