У меня возникла проблема с тем, что я не могу конвертировать MP4 видео в MP3 с помощью FFMPEG. Каждый раз, когда я пытаюсь это сделать, я получаю эту ошибку: Unknown encoder 'libmp3lame'
Но я установил FFMPEG и LAME с флагами: --enable-libmp3lame
Итак, когда я запускаю: - enable-libmp3lame в консоли, я вижу, что флаги установлены, но в списке все еще нет libmp3lame, как это должно быть:
ffmpeg version 3.3.4 Copyright (c) 2000-2017 the FFmpeg developers
built with gcc 4.9.2 (Debian 4.9.2-10)
configuration: --enable-libmp3lame --extra-ldflags=-L/var/www/html/Plugins/apps/lib/ --extra-cflags=-I/var/www/html/Plugins/apps/include/
WARNING: library configuration mismatch
avutil configuration: --prefix=/var/www/html/Plugins/apps/ --enable-shared
avcodec configuration: --prefix=/var/www/html/Plugins/apps/ --enable-shared
avformat configuration: --prefix=/var/www/html/Plugins/apps/ --enable-shared
avdevice configuration: --prefix=/var/www/html/Plugins/apps/ --enable-shared
avfilter configuration: --prefix=/var/www/html/Plugins/apps/ --enable-shared
swscale configuration: --prefix=/var/www/html/Plugins/apps/ --enable-shared
swresample configuration: --prefix=/var/www/html/Plugins/apps/ --enable-shared
libavutil 55. 58.100 / 55. 58.100
libavcodec 57. 89.100 / 57. 89.100
libavformat 57. 71.100 / 57. 71.100
libavdevice 57. 6.100 / 57. 6.100
libavfilter 6. 82.100 / 6. 82.100
libswscale 4. 6.100 / 4. 6.100
libswresample 2. 7.100 / 2. 7.100
//HERE SHOULD BE LIBMP3LAME
D.A.L. mp3 MP3 (MPEG audio layer 3) (decoders: mp3 mp3float )
D.A.L. mp3adu ADU (Application Data Unit) MP3 (MPEG audio layer 3) (decoders: mp3adu mp3adufloat )
D.A.L. mp3on4
Как кто-то заметил этот пакет Ubuntu Thread
lame не добавит mp3-кодировку в FFmpegИтак, как я могу установить libmp3lame на Debian, чтобы FFMPEG мог его использовать?
Также я уже попытался установить libmp3lame0 из этой темы Ubuntu , но это также ничего не изменило.
Возможно, ваша сборка нарушена. Попробуйте удалить, а затем установить его, используя следующий метод
Сначала установите dpendencies
sudo apt-get update
sudo apt-get -y install autoconf automake build-essential libass-dev libfreetype6-dev \
libsdl2-dev libtheora-dev libtool libva-dev libvdpau-dev libvorbis-dev libxcb1-dev libxcb-shm0-dev \
libxcb-xfixes0-dev pkg-config texinfo wget zlib1g-dev
Теперь создайте каталог для исходных файлов, которые будут загружены позже
mkdir ~/ffmpeg_sources
Теперь установите этот ассемблер для оптимизаций x86, используемых x264 и FFmpeg
cd ~/ffmpeg_sources
wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz
tar xzvf yasm-1.3.0.tar.gz
cd yasm-1.3.0
./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin"
make
make install
Затем установите libmp3lame
cd ~/ffmpeg_sources
wget http://downloads.sourceforge.net/project/lame/lame/3.99/lame-3.99.5.tar.gz
tar xzvf lame-3.99.5.tar.gz
cd lame-3.99.5
./configure --prefix="$HOME/ffmpeg_build" --enable-nasm --disable-shared
make
make install
Затем установите ffmpeg
cd ~/ffmpeg_sources
wget http://ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2
tar xjvf ffmpeg-snapshot.tar.bz2
cd ffmpeg
PATH="$HOME/bin:$PATH" PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure \
--prefix="$HOME/ffmpeg_build" \
--pkg-config-flags="--static" \
--extra-cflags="-I$HOME/ffmpeg_build/include" \
--extra-ldflags="-L$HOME/ffmpeg_build/lib" \
--bindir="$HOME/bin" \
--enable-gpl \
--enable-libass \
--enable-libfreetype \
--enable-libmp3lame \
--enable-libtheora \
--enable-libvorbis \
--enable-nonfree
PATH="$HOME/bin:$PATH" make
make install
hash -r
[d6 ] Возможно, вам придется перезагрузить устройство, поскольку оно иногда не работает. После установки перейдите в каталог ~ / bin cd ~/bin
, затем в этом каталоге попытайтесь выполнить команду, например.
./ffmpeg -i ~/input.mp4 ~/videos/output.mkv
PS: В вашем вопросе, где вы упоминали
//HERE SHOULD BE LIBMP3LAME
libmp3lame не будет, скорее это будет указано в конфигурации как
[ f9]Дайте мне знать, работает ли это или нет. :
)Возможно, ваша сборка нарушена. Попробуйте удалить, а затем установить его, используя следующий метод
Сначала установите dpendencies
sudo apt-get update
sudo apt-get -y install autoconf automake build-essential libass-dev libfreetype6-dev \
libsdl2-dev libtheora-dev libtool libva-dev libvdpau-dev libvorbis-dev libxcb1-dev libxcb-shm0-dev \
libxcb-xfixes0-dev pkg-config texinfo wget zlib1g-dev
Теперь создайте каталог для исходных файлов, которые будут загружены позже
mkdir ~/ffmpeg_sources
Теперь установите этот ассемблер для оптимизаций x86, используемых x264 и FFmpeg
cd ~/ffmpeg_sources
wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz
tar xzvf yasm-1.3.0.tar.gz
cd yasm-1.3.0
./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin"
make
make install
Затем установите libmp3lame
cd ~/ffmpeg_sources
wget http://downloads.sourceforge.net/project/lame/lame/3.99/lame-3.99.5.tar.gz
tar xzvf lame-3.99.5.tar.gz
cd lame-3.99.5
./configure --prefix="$HOME/ffmpeg_build" --enable-nasm --disable-shared
make
make install
Затем установите ffmpeg
cd ~/ffmpeg_sources
wget http://ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2
tar xjvf ffmpeg-snapshot.tar.bz2
cd ffmpeg
PATH="$HOME/bin:$PATH" PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure \
--prefix="$HOME/ffmpeg_build" \
--pkg-config-flags="--static" \
--extra-cflags="-I$HOME/ffmpeg_build/include" \
--extra-ldflags="-L$HOME/ffmpeg_build/lib" \
--bindir="$HOME/bin" \
--enable-gpl \
--enable-libass \
--enable-libfreetype \
--enable-libmp3lame \
--enable-libtheora \
--enable-libvorbis \
--enable-nonfree
PATH="$HOME/bin:$PATH" make
make install
hash -r
Возможно, вам придется перезагрузить устройство, поскольку оно иногда не работает. После установки перейдите в каталог ~ / bin
cd ~/bin
, затем в этом каталоге попытайтесь выполнить команду, например.
./ffmpeg -i ~/input.mp4 ~/videos/output.mkv
PS: В вашем вопросе, где вы упоминали
//HERE SHOULD BE LIBMP3LAME
libmp3lame не будет, скорее это будет указано в конфигурации как
configuration: --enable-libmp3lame
Дайте мне знать, работает ли это или нет. :
)Возможно, ваша сборка нарушена. Попробуйте удалить, а затем установить его, используя следующий метод
Сначала установите dpendencies
sudo apt-get update
sudo apt-get -y install autoconf automake build-essential libass-dev libfreetype6-dev \
libsdl2-dev libtheora-dev libtool libva-dev libvdpau-dev libvorbis-dev libxcb1-dev libxcb-shm0-dev \
libxcb-xfixes0-dev pkg-config texinfo wget zlib1g-dev
Теперь создайте каталог для исходных файлов, которые будут загружены позже
mkdir ~/ffmpeg_sources
Теперь установите этот ассемблер для оптимизаций x86, используемых x264 и FFmpeg
cd ~/ffmpeg_sources
wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz
tar xzvf yasm-1.3.0.tar.gz
cd yasm-1.3.0
./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin"
make
make install
Затем установите libmp3lame
cd ~/ffmpeg_sources
wget http://downloads.sourceforge.net/project/lame/lame/3.99/lame-3.99.5.tar.gz
tar xzvf lame-3.99.5.tar.gz
cd lame-3.99.5
./configure --prefix="$HOME/ffmpeg_build" --enable-nasm --disable-shared
make
make install
Затем установите ffmpeg
cd ~/ffmpeg_sources
wget http://ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2
tar xjvf ffmpeg-snapshot.tar.bz2
cd ffmpeg
PATH="$HOME/bin:$PATH" PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure \
--prefix="$HOME/ffmpeg_build" \
--pkg-config-flags="--static" \
--extra-cflags="-I$HOME/ffmpeg_build/include" \
--extra-ldflags="-L$HOME/ffmpeg_build/lib" \
--bindir="$HOME/bin" \
--enable-gpl \
--enable-libass \
--enable-libfreetype \
--enable-libmp3lame \
--enable-libtheora \
--enable-libvorbis \
--enable-nonfree
PATH="$HOME/bin:$PATH" make
make install
hash -r
Возможно, вам придется перезагрузить устройство, поскольку оно иногда не работает. После установки перейдите в каталог ~ / bin
cd ~/bin
, затем в этом каталоге попытайтесь выполнить команду, например.
./ffmpeg -i ~/input.mp4 ~/videos/output.mkv
PS: В вашем вопросе, где вы упоминали
//HERE SHOULD BE LIBMP3LAME
libmp3lame не будет, скорее это будет указано в конфигурации как
configuration: --enable-libmp3lame
Дайте мне знать, работает ли это или нет. :
)