【问题标题】:Custom built ffmpeg with aac encoding使用 aac 编码自定义构建的 ffmpeg
【发布时间】:2015-10-25 16:40:25
【问题描述】:

我正在尝试使用所有音频解码和本机 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

【问题讨论】:

  • @LordNeckbeard 不,我更新了我的完整配置。

标签: ffmpeg


【解决方案1】:

你还需要一个

M4A 可能需要“iPod”多路复用器。

--enable-muxer=ipod

其他东西

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

--enable-decoder=aac,ac3,flac

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

--enable-decoders

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

【讨论】:

  • 还可以补充一点,你也可以使用星号/通配符来覆盖所有后缀:--enable-decoder=aac*,ac3*,flak
猜你喜欢
  • 2017-04-04
  • 2012-04-18
  • 2019-04-28
  • 2021-04-20
  • 1970-01-01
  • 2013-12-21
  • 1970-01-01
  • 1970-01-01
  • 2017-04-28
相关资源
最近更新 更多