Do konwersji mp3 -> amr można używać programu ffmpeg, którego ebuild niestety nie pozwala na obsługę AMR. W tym przypadku używam wersji ffmpeg-0.4.9_p20051216, więc nie wiadomo czy rozwiązanie będzie działało z kolejnymi. ZTCW pełna obsługa AMR ma zostać dodana w kolejnych wersjach.
--------
Update: Ponieważ obsługa AMR została wprowadzona natywnie, to how-to jest nieaktualne
--------
Zrobione na podstawie tego wątku.
1.
Code: Select all
cd /usr/portage
wget http://www.3gpp.org/ftp/Specs/archive/26_series/26.104/26104-510.zip
Wyedytować plik:
/usr/portage/media-video/ffmpeg/ffmpeg-0.4.9_p20051216.ebuild
i dodać za liniami
Code: Select all
src_unpack() {
unpack ${A} || die
cd ${S_BASE}
Code: Select all
mkdir ./libavcodec/amr_float
cd ./libavcodec/amr_float
unzip /usr/portage/distfiles/26104-510.zip
unzip 26104-510_ANSI_C_source_code.zip
cd ${S_BASE}
Code: Select all
myconf="${myconf}
$(use_enable altivec) \
$(use_enable debug) \
$(use_enable encode mp3lame) \
$(use_enable a52) --disable-a52bin \
$(use_enable oss audio-oss) \
$(use_enable v4l) \
$(use_enable ieee1394 dv1394) $(use_enable ieee1394 dc1394) \
$(use_enable threads pthreads) \
$(use_enable xvid) \
$(use_enable ogg libogg) \
$(use_enable vorbis) \
$(use_enable theora) \
$(use_enable dts) \
$(use_enable network) \
$(use_enable zlib) \
$(use_enable sdl ffplay) \
$(use_enable aac faad) $(use_enable aac faac) --disable-faadbin \
--enable-gpl \
--enable-pp \
--disable-opts \"
Code: Select all
--enable-amr_nb
Wykonać:
Code: Select all
ebuild /usr/portage/media-video/ffmpeg/ffmpeg-0.4.9_p20051216.ebuild digest
emerge /usr/portage/media-video/ffmpeg/ffmpeg-0.4.9_p20051216.ebuild
Jeśli wszystko poszło ok, to ffmpeg powinien obsługiwać teraz format AMR:
Code: Select all
ffmpeg -formats
No i na koniec:
Code: Select all
ffmpeg -i plik.mp3 -ac 1 -ab 12 -ar 8000 plik.amr


