FAAD2 解码AAC 初始化的时候 怎么设置 采样频率和声道数目
用faad 解码的时候初始化找不到设置声道数目的地方,设置了采样频率为22050,但是解码的时候还是返回的44100,我试着把adts头传给初始化的那个函数,但是没有作用,大家知道怎么设置这些的,麻烦帮忙解答一下,谢谢
[解决办法]
找到原因了,跟踪了一下代码:
long NEAACDECAPI NeAACDecInit(NeAACDecHandle hpDecoder,
unsigned char *buffer,
unsigned long buffer_size,
unsigned long *samplerate,
unsigned char *channels)
#ifdef SBR_DEC
/* implicit signalling */
if (*samplerate <= 24000 && (hDecoder->config.dontUpSampleImplicitSBR == 0))
{
*samplerate *= 2;
hDecoder->forceUpSampling = 1;
} else if (*samplerate > 24000 && (hDecoder->config.dontUpSampleImplicitSBR == 0)) {
hDecoder->downSampledSBR = 1;
}
#endif
是这里造成的。注释掉或取消宏就可以了。