Как установить libmp3lame для ffmpeg

12

У меня уже работает ffMpeg на моем тестовом сервере. Я хотел бы конвертировать все возможные аудио файлы в mp3.

Я получаю ошибку «кодек не найден».

вот что я напечатал:

/var/www/i/uploads$ sudo /usr/local/bin/ffmpeg -i a.mp3 -f mp3 con.mp3
FFmpeg version SVN-r25385, Copyright (c) 2000-2010 the FFmpeg developers
  built on Oct  7 2010 11:56:13 with gcc 4.2.4 (Ubuntu 4.2.4-1ubuntu4)
  configuration: --enable-gpl --enable-version3 --enable-nonfree --enable-postproc --enable-libfaac --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libxvid --enable-x11grab --disable-yasm
  libavutil     50.32. 2 / 50.32. 2
  libavcore      0. 9. 1 /  0. 9. 1
  libavcodec    52.92. 0 / 52.92. 0
  libavformat   52.80. 0 / 52.80. 0
  libavdevice   52. 2. 2 / 52. 2. 2
  libavfilter    1.48. 0 /  1.48. 0
  libswscale     0.12. 0 /  0.12. 0
  libpostproc   51. 2. 0 / 51. 2. 0
[mp3 @ 0x123e470] max_analyze_duration reached
Input #0, mp3, from 'a.mp3':
  Metadata:
    TCON            : Classic Rock
    TRCK            : 16/16
    TLAN            : eng
    TPE1            : Scorpions
    TIT2            : Rock You Like A Hurricane
    Rip date        : 2008-06-17
    TYER            : 2008
    TDAT            : 0000
    Source          : CD
    TSSE            : LAME 3.97 -V2 --vbr-new
    Ripping tool    : EAC
    Release type    : Undifined
    TPUB            : Universal Music Canada
    TIT1            : Barney's Get Psyched Mix
    TALB            : Barney's Get Psyched Mix
  Duration: 00:04:12.52, start: 0.000000, bitrate: 208 kb/s
    Stream #0.0: Audio: mp3, 44100 Hz, 2 channels, s16, 208 kb/s
File 'con.mp3' already exists. Overwrite ? [y/N] y
Output #0, mp3, to 'con.mp3':
    Stream #0.0: Audio: [0][0][0][0] / 0x0000, 44100 Hz, 2 channels, s16, 64 kb/s
Stream mapping:
  Stream #0.0 -> #0.0
Encoder (codec id 86017) not found for output stream #0.0

Как я могу установить хромой mp3 кодек для ffmpeg?

Хришикеш Чоудхари
источник

Ответы:

5

Во-первых, я вижу, что это на машине с Ubuntu, поэтому позвольте мне сначала предложить вам перейти на страницу Ubuntu wiki ffmpeg .

По сути, вы хотите скомпилировать ffmpeg из исходного кода, чтобы он включал libmp3lame. Они расскажут вам, как сделать ваш ffmpeg с дополнительными опциями на этой странице. Когда вы начинаете сборку с помощью ./configure, вам нужно добавить --enable-libmp3lame

SleighBoy
источник
23

Ссылка в выбранном ответе теперь устарела. На Kubuntu 11.04 (и выше) выполните:

sudo apt-get install ffmpeg libavcodec-extra-53
Augustin
источник
3
Работал и на Ubuntu 12.04.
Reuf
Также работает для Ubuntu 13.10 saucy!
Брэд
1
если libavcodec-extra-53не работает, попробуйтеsudo install libavcodec-extra-*
мидо
Я не могу установить этот пакет: «E: Ошибка, pkgProblemResolver :: Resolve генерирует разрывы, это может быть вызвано задержанными пакетами». Установка чего-либо еще работает нормально.
Кальмариус
6

Решением может быть компиляция ffmpeg вручную :

В посте предлагается скомпилировать x264 и ffmpeg самостоятельно. Но используйте x264 из Ubuntu и откомпилируйте только ffmpeg. Итак, вот шаги. Начните с удаления ffmpeg и убедитесь, что x264 установлен правильно.

apt-get remove ffmpeg    
apt-get update
apt-get install libx264-106 libx264-dev x264 

Затем войдите в систему как root, скачайте, скомпилируйте и установите ffmpeg:

su -
svn checkout svn://svn.ffmpeg.org/ffmpeg/trunk ffmpeg
cd ffmpeg
./configure --enable-gpl --enable-version3 --enable-nonfree --enable-postproc --enable-libfaac --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libxvid --enable-x11grab
make    
make install
Диого Мело
источник
3

Для кодирования в mp3, в gentoo я добавил USE-флаг "mp3", он добавил поддержку lame .

USE="mp3" emerge ffmpeg
Тони Гамез
источник
0

Чтобы установить правильные кодеки с помощью Aptitude:

sudo apt-get install libmp3lame-dev

В зависимости от используемого вами дистрибутива и сборки FFmpeg может быть более старое решение.

Если FFmpeg был установлен с использованием исходного кода, его придется перенастроить, собрать и установить с соответствующими переключателями для нужных вам кодеков.

./configure  --enable-libmp3lame
make
make install
TRex22
источник
В Ubuntu libav-tools представляет собой виртуальный / переходный пакет, который указывает на ffmpeg, поэтому вы можете просто использовать ffmpeg, если ваша версия дистрибутива не устарела. Установка libmp3lame-dev ничего не делает для пакета ffmpeg из репозитория; он не включает кодирование MP3.
Llogan
Ну, я сначала установил это без удачи, затем я собрал ffmpeg с флагом дополнительной настройки, и что вы знаете, теперь я могу кодировать mp3. Установленные мной libav-tools не дали мне ffmpeg. Мне пришлось вручную собрать и установить его
TRex22
Я думаю, что я установил libav-tools после сборки и установки ffmpeg, так что мой плохой.
TRex22
-1

Я забыл точную процедуру, но я использовал avconvдля преобразования MP4в FLV, а затем использовать ffmpegдля преобразования FLVв SWF. Это сработало.

Ян Кинг Инь
источник
Это неэффективно.
Llogan
но по крайней мере мне не нужно компилировать ffmpeg;)
Ян Кинг Инь
Какое это имеет отношение к вопросу, который является преобразованием в MP3?
Бен Фойгт
Это всего лишь один из способов обойти кодек libmp3lame ... Я искал, как его установить, и нашел этот вопрос.
Ян Кинг Инь