Я попытался установить ffmpeg в trusty / 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
Почему пакет недоступен?
Ubuntu начала поставлять вилку libav вместо FFmpeg в последних выпусках . Если вы установили пакет ffmpeg , то вы фактически установили пакет libav-tools и программу, в которой вам предлагается использовать avconv
вместо ffmpeg
в будущем, создавая впечатление, что ffmpeg устарел, но это не так.
Переходный пакет ffmpeg
, похоже, был удален из trusty / Ubuntu 14.04 (сравните файлы пакета список дерзких и надежных исходного пакета ).
Таким образом, один из вариантов - установить пакет libav-tools и использовать вместо него avconv
(обратите внимание, что это не "mainline" FFmpeg, но вместо этого видный форк).
Другой вариант - использовать PPA, который предоставляет FFmpeg. Пожалуйста, посетите страницу FFmpeg загрузки для получения подробной информации о доступных PPA и пакетах. Вам следует время от времени проверять отдельные PPA, если они все еще актуальны.
Связанные вопросы:
Другой вариант - установить пакеты зависимостей FFmpeg, а затем вручную скомпилировать + установить их из исходного кода.
Хотя это может показаться немного неудобным с точки зрения упаковки, вы также можете использовать любая статическая сборка из доверенных источников. В моем случае я храню 32-битные и 64-битные двоичные файлы FFmpeg Windows вместе с x264-10-битными двоичными файлами в папке, чтобы запускать их в Wine или Windows всякий раз, когда мне нужно.
Вот что я мог найти, когда исследую эту тему. Я не слежу внимательно за развитием обоих проектов и не собираюсь никого винить. Вам, как читателю, тоже нельзя.
В Википедии говорится, что о разветвленном проекте, а также о первоначальном выпуске было объявлено 13 марта 2011 г., однако происходит кое-что еще.
18 января 2011 г. - commit f4f5cab94e0881cd30965b28f3d78d9c63d6918e
Лидер проекта FFmpeg Майкл Нидермайер удален из файла MAINTAINERS
.
27 июля 2011 года [116194441] - commit [116194441c] [116194441c] avbdddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd введено:
Сделайте копию ffmpeg под новым именем - avconv.
Он будет развиваться дальше с некоторыми несовместимыми изменениями.
ffmpeg.c останется как есть какое-то время, поэтому любые скрипты, использующие это не будет
27 июля 2011 г. - commit 791a86c37a03b94207bc2d0ad4cbe7f39d7e495a
К разветвленной версии исходного кода ffmpeg.c
добавлено предупреждение, которое может вводить в заблуждение пользователей Я заметил насчет вилки и того, что они больше не используют FFmpeg.
12 января 2012 г. - commit 0fec2cb15cc6ff1fcc724c774ec36abadcb7b6ad
ffmpeg.c
удален из исходного кода.
Следующие сообщения взяты из раздела новостей (самые старые в последнем):
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.
- Веб-сайт: http://www.libav.org/
- Git: git: //git.libav.org/libav.git (см. ] http://libav.org/download.html )
- СУДЬБА: http://fate.libav.org/
- Сводка новостей: https: //roundup.libav. org /
- Пэчворк: http://patches.libav.org/
- Списки рассылки: http://lists.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 19.01.2011 и заменил svn: external libswscale автономной копией.
Обратите внимание, что разработка FFmpeg фактически переместилась в репозиторий Git и что существует два репозитория Git. См. Страницу загрузки соответствующих проектов.
ffmpeg
был заменен в предыдущих выпусках программой avconv
из проекта libav.
Для установки avconv
необходимо установить пакет libav-tools
:
sudo apt-get install libav-tools
avconv
очень похож на ffmpeg
, но у них также есть некоторые различия в синтаксисе.
Изменить: Кажется, Ubuntu 16.04 LTS снова имеет ffmpeg
в своих репозиториях, поэтому libav-tools является фиктивным пакетом и создает только псевдоним avconv -> ffmpeg
(и другие)
ffmpeg удалил репозиторий Ubuntu вместо libav. вам следует добавить ppa:
sudo add-apt-repository ppa:mc3man/trusty-media
sudo apt-get update
sudo apt-get install ffmpeg gstreamer0.10-ffmpeg
следите за выводом
Вы также можете использовать этот PPA: ppa: jon-severinsson / ffmpeg
Edit: Этот ppa был удален с Launchpad, я не знаю почему. Вместо него вы можете использовать samrog131 PPA (для 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
Пакет 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
Если вы хотите установить 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 .
У меня была та же ошибка при попытке запустить
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
теперь должно работать из любой папки.
Первая установка avconv
:
$ sudo apt-get install libav-tools
Затем создайте мягкую ссылку на avconv
с именем ffmpeg
:
$ sudo ln -s /usr/bin/avconv /usr/bin/ffmpeg
Теперь вы можете использовать ffmpeg
в обычном режиме.
Если вы хотите, чтобы последняя версия вышла на github, которая удовлетворяет требованиям ошибки, сгенерированные из youtube-dl
ERROR: ffprobe or avprobe not found. Please install one.
, затем введите следующие команды:
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
наслаждайтесь,
Я потратил 2 недели на установку новейшей версии ffmpeg 2.8.11. Эта версия используется для Ubuntu 16.04. Советую вам установить эту версию. Я тестировал на Ubuntu 12.04 и Ubuntu 14.04 и она работала хорошо. Вы можете установить libav-tools, как указано выше, но у вас возникнут проблемы с совместимостью. Потому что 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 в терминале. Удачи