Как избавиться от сообщения ffmpeg `WARNING: несоответствие конфигурации библиотеки`?
Я использую avconv
без проблем, однако, так как обновление до 15.10 и переход на ffmpeg
, У меня есть library configuration mismatch
предупреждение в моем выводе скрипта.
Это моя команда копировать CD для моего iPod и Fiio X5 Mk2.
#!/bin/bash
cdparanoia -Bv
for f in ./*.wav; do avconv -i "$f" -acodec alac "${f%.*}.m4a"; done
eject
ls
Когда я заменил avconv
с ffmpeg
Теперь я вижу WARNING: library configuration mismatch
в середине вывода:
ffmpeg version 2.7.3-0ubuntu0.15.10.1 Copyright (c) 2000-2015 the FFmpeg developers
built with gcc 5.2.1 (Ubuntu 5.2.1-22ubuntu2) 20151010
configuration: --prefix=/usr --extra-version=0ubuntu0.15.10.1 --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
WARNING: library configuration mismatch
avcodec configuration: --prefix=/usr --extra-version=0ubuntu0.15.10.1 --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 --enable-version3 --disable-doc --disable-programs --disable-avdevice --disable-avfilter --disable-avformat --disable-avresample --disable-postproc --disable-swscale --enable-libopencore_amrnb --enable-libopencore_amrwb --enable-libvo_aacenc --enable-libvo_amrwbenc
libavutil 54. 27.100 / 54. 27.100
libavcodec 56. 41.100 / 56. 41.100
libavformat 56. 36.100 / 56. 36.100
libavdevice 56. 4.100 / 56. 4.100
libavfilter 5. 16.101 / 5. 16.101
libavresample 2. 1. 0 / 2. 1. 0
libswscale 3. 1.101 / 3. 1.101
libswresample 1. 2.100 / 1. 2.100
libpostproc 53. 3.100 / 53. 3.100
Guessed Channel Layout for Input Stream #0.0 : stereo
Input #0, wav, from './track01.cdda.wav':
Duration: 00:02:36.20, bitrate: 1411 kb/s
Stream #0:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 44100 Hz, 2 channels, s16, 1411 kb/s
Output #0, ipod, to './track01.cdda.m4a':
Metadata:
encoder : Lavf56.36.100
Stream #0:0: Audio: alac (alac / 0x63616C61), 44100 Hz, stereo, s16p, 128 kb/s
Metadata:
encoder : Lavc56.41.100 alac
Stream mapping:
Stream #0:0 -> #0:0 (pcm_s16le (native) -> alac (native))
Press [q] to stop, [?] for help
size= 16226kB time=00:02:36.22 bitrate= 850.9kbits/s
video:0kB audio:16219kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.046357%
Проверка других сайтов показывает, что я установил ffmpeg
в ранней версии Ubuntu, где avconv
был по умолчанию, но здесь это было не так.
Кто-нибудь может предложить решение для меня?
5 ответов
Чтобы исправить это, удалите следующий пакет:
sudo apt remove libavcodec-ffmpeg-extra56
Apt удалит пакет и заменит его libavcodec-ffmpeg56
в результате чего ffmpeg
больше не выводить предупреждение.
Подробнее о libavcodec-ffmpeg-extra56
пакет и почему он, скорее всего, не нужен, смотрите: /questions/54936/v-chem-raznitsa-mezhdu-libavcodec-ffmpeg-extra56-i-libavcodec-ffmpeg56-chto-ya-d/54947#54947
Добавление того, что сработало лично для меня (Ubuntu 20.10), потому что это один из первых результатов при поиске этой ошибки, и это выводило меня из себя последние пару дней:
sudo apt install --reinstall libavcodec58 libavdevice58 libavfilter7 libavformat58 libavresample4 libavutil56 libpostproc55 libswresample3 libswscale5
Мне даже не нужно было переустанавливать FFmpeg.
В Ubuntu 22.04 мне просто нужно было установитьlibavcodec58
. Он предупредил, что удалитlibavcodec-extra
иlibavcodec-extra58
.
Это связано с тем, что ваши библиотеки, созданные из исходного кода ffmpeg, и библиотеки в вашей системе (/usr/lib/ или /usr/local/lib/) конфликтуют. Так
find . -name "avcodec"
Если libavcodec.so.* находится в /usr/local/lib, /usr/lib/, /usr/lib/x86_64-linux-gnu или /usr/lib/i386-linux-gnu, замените их библиотеками, собранными из источник ffmpeg и создание программных ссылок.
cp -r /the/path/to/ffmpeg/build/lib/* /usr/local/lib/
sudo ln -s /usr/local/lib/libavcodec.so.59.18.100 /usr/local/lib/libavcodec.so.59