Tag: aac

FFmpeg原生AAC解码器

我正在开发一个需要解码AAC的Windows上的商业C \ C ++应用程序。 我已经看过这个问题AAC Codec Library(libFAAC替代)从答案来看,似乎FFmpeg有一个原生的LGPL AAC解码器。 但是,当我查看FFmpeg主页时,我发现没有关于此解码器的信息或它支持的AAC对象类型(仅有关于编码器的信息)。 我一直在寻找这个2天,但我几乎找不到任何东西。 所以我的问题是: 本机FFmpeg AAC解码器支持甚至存在哪种类型的对象类型? 如果上面的解码器不存在那么有没有其他免费库? 我也看过FDK AAC,但我不了解它的许可证,我可以将它用于商业产品吗? 请帮忙我是音频编解码器的新手。

使用libavcodec将音频编码到aac

我正在使用libavcodec(截至3/3/10的最新git)将原始pcm编码为aac(启用了libfaac支持)。 我这样做是通过每次使用codec_context-> frame_size样本重复调用avcodec_encode_audio来实现的。 前四个调用成功返回,但第五个调用永远不会返回。 当我使用gdb中断时,堆栈已损坏。 如果我使用audacity将pcm数据导出到.wav文件,那么我可以使用命令行ffmpeg转换为aac而没有任何问题,所以我确定这是我做错了。 我写了一个小的测试程序来复制我的问题。 它从文件中读取测试数据,可在此处获取: http : //birdie.protoven.com/audio.pcm (签名16位LE pcm约2秒) 如果我直接使用FAAC,我可以完成所有工作,但如果我可以使用libavcodec,那么代码会更清晰,因为我也编码video,并将两者都写入mp4。 ffmpeg版本信息: FFmpeg version git-c280040, Copyright (c) 2000-2010 the FFmpeg developers built on Mar 3 2010 15:40:46 with gcc 4.4.1 configuration: –enable-libfaac –enable-gpl –enable-nonfree –enable-version3 –enable-postproc –enable-pthreads –enable-debug=3 –enable-shared libavutil 50.10. 0 / 50.10. 0 libavcodec 52.55. 0 / 52.55. 0 libavformat […]