使用aac编码自定义构建的ffmpeg

时间:2015-10-25 16:40:25

标签: ffmpeg

我正在尝试使用所有音频解码和原生aac编码构建自定义ffmpeg,因此我有--disable-everything然后启用我需要的东西。在我的配置中,我有以下内容:

--enable-muxer=mp4
--enable-encoder=aac

但是,当我尝试用:

编写.m4a文件时
./ffmpeg -i bis.wav -strict -2 bis.m4a 

我收到以下错误:

Unable to find a suitable output format for 'bis.m4a'
bis.m4a: Invalid argument

我在构建aac编码时缺少什么?

我也启用了.wav编码,这对于制作.wav文件很有效。

完成配置:

./configure \
    --prefix=$PREFIX \
    --disable-shared \
    --enable-static \
    --disable-programs \
    --disable-doc \
    --disable-everything \
    --enable-filter=aresample \
    --enable-decoder=aac \
    --enable-decoder=aac_latm \
    --enable-decoder=aac_fixed \
    --enable-decoder=ac3 \
    --enable-decoder=ac3_fixed \
    --enable-decoder=als \
    --enable-decoder=alac \
    --enable-decoder=mp1 \
    --enable-decoder=mp1float \
    --enable-decoder=mp2 \
    --enable-decoder=mp2float \
    --enable-decoder=mp3 \
    --enable-decoder=mp3float \
    --enable-decoder=mp3adufloat \
    --enable-decoder=mp3adu \
    --enable-decoder=mp3on4 \
    --enable-decoder=mp3on4float \
    --enable-decoder=als \
    --enable-decoder=vorbis \
    --enable-decoder=flac \
    --enable-decoder=wavpack \
    --enable-decoder=wmalossless \
    --enable-decoder=wmapro \
    --enable-decoder=wmav1 \
    --enable-decoder=wmav2 \
    --enable-decoder=wmavoice \
    --enable-decoder=pcm* \
    --enable-bsf=mp3_header_decompress \
    --enable-bsf=aac_adtstoasc \
    --enable-bsf=chomp \
    --enable-bsf=remove_extradata \
    --disable-swscale \
    --enable-swresample \
    --enable-parser=aac \
    --enable-parser=aac_latm \
    --enable-parser=ac3 \
    --enable-parser=flac \
    --enable-parser=ac3 \
    --enable-parser=vorbis \
    --enable-parser=mpegaudio\
    --enable-demuxer=aac \
    --enable-demuxer=ac3 \
    --enable-demuxer=eac3 \
    --enable-demuxer=aiff \
    --enable-demuxer=flac \
    --enable-demuxer=latm \
    --enable-demuxer=mp3 \
    --enable-demuxer=ogg \
    --enable-demuxer=eac3 \
    --enable-demuxer=xwma \
    --enable-demuxer=pcm* \
    --enable-demuxer=wav \
    --enable-protocol=file \
    --enable-muxer=pcm* \
    --enable-muxer=wav \
    --enable-muxer=mp4 \
    --enable-encoder=pcm* \
    --enable-encoder=aac \
    --enable-ffmpeg \
    --disable-avdevice \
    --disable-swscale-alpha \
    --disable-symver \
    --cross-prefix=$TOOLCHAIN/bin/arm-linux-androideabi- \
    --target-os=linux \
    --arch=arm \
    --enable-cross-compile \
    --sysroot=$SYSROOT \
    --extra-cflags="-Os -fpic $ADDI_CFLAGS" \
    --extra-ldflags="-fPIE -pie $ADDI_LDFLAGS" \
    $ADDITIONAL_CONFIGURE_FLAG

1 个答案:

答案 0 :(得分:2)

您还需要一个

" iPod" M4A可能需要muxer。

--enable-muxer=ipod

其他东西

如果您愿意,可将它们组合成一行:

--enable-decoder=aac,ac3,flac

此外,如果要为每个组件启用所有选项,您可以使用:

--enable-decoders

这也适用于其他组件(复用器,解复用器,解码器,编码器,滤波器等)。