AAC编码器FAAC

AAC编码器FAAC

FAAC下载地址

http://downloads.sourceforge.net/faac/

FAAC的API

faacEncHandle faacEncOpen(          // 返回一个FAAC的handle
    unsigned long   nSampleRate,    // 采样率,单位是bps
    unsigned long   nChannels,      // 声道,1为单声道,2为双声道
    unsigned long   &nInputSamples, // 传引用,得到每次调用编码时所应接收的原始数据长度
    unsigned long   &nMaxOutputBytes// 传引用,得到每次调用编码时生成的AAC数据的最大长度
);

// 得到指向当前编码器配置的指针
faacEncConfigurationPtr faacEncGetCurrentConfiguration(
    faacEncHandle hEncoder  // FAAC的handle
);

//设定编码器的配置:
int FAACAPI faacEncSetConfiguration(
    faacDecHandle hDecoder,         // 此前得到的FAAC的handle
    faacEncConfigurationPtr config  // FAAC编码器的配置
);

int faacEncEncode(
    faacEncHandle hEncoder,     // FAAC的handle
    short *inputBuffer,         // WAV原始数据
    unsigned int samplesInput,  // 调用faacEncOpen时得到的nInputSamples值
    unsigned char *outputBuffer,// 至少具有faacEncOpen时得到的nMaxOutputBytes长度的缓冲区
    unsigned int bufferSize     // outputBuffer缓冲区的实际大小
);

//关闭编码器
void faacEncClose(
    faacEncHandle hEncoder  // 此前得到的FAAC handle
);

FAAC使用步骤

  1.  faacEncOpen开启FAAC编码器,并得到输入输出缓冲区大小;
  2.  faacEncGetCurrentConfiguration获取当前配置,并调用faacEncSetConfiguration设置新配置。
  3.  循环faacEncEncode编码;
  4.  faacEncClose关闭编码器

你可能感兴趣的:(AAC编码器FAAC)