У меня уже есть 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
Как установить lame mp3-кодек для ffmpeg?
решение1
Во-первых, я вижу, что это на машине с Ubuntu, поэтому позвольте мне сначала предложить вам перейти на страница Ubuntu wiki ffmpeg.
В принципе, вам нужно скомпилировать ffmpeg из исходников, чтобы он включал libmp3lame. На этой странице вам расскажут, как сделать ваш ffmpeg с большим количеством опций. Когда вы начнете сборку с ./configure, вам нужно добавить --enable-libmp3lame
решение2
Ссылка в выбранном ответе теперь устарела. В Kubuntu 11.04 (и выше) выполните:
sudo apt-get install ffmpeg libavcodec-extra-53
решение3
Решение может заключаться в следующем:скомпилировать 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
решение4
Чтобы установить нужные кодеки с помощью Aptitude:
sudo apt-get install libmp3lame-dev
В зависимости от используемого вами дистрибутива и сборки FFmpeg более старое решение может оказаться подходящим.
Если FFmpeg был установлен с использованием исходного кода, то его придется перенастроить, собрать и установить с соответствующими переключателями для нужных вам кодеков.
./configure --enable-libmp3lame
make
make install