sample_ao.c 程序流程
fopen文件 rb
IMP_AO_SetPubAttr devID为0 设置AO设备属性和采样率和帧num chn_cnt
int devID = 0;
IMP_AO_Enable 使能devID0
int chnID = 0;
IMP_AO_EnableChn 使能DevID0下ChnID0,
IMP_AO_SetVol(devID, chnID, chnVol); // 设置devID0 下chnID 0 音量
IMP_AO_EnableAlgo(devID, chnID); // 使能chnID0算法
size = fread(buf, 1, AO_TEST_BUF_SIZE, play_file); //读取文件中音频数据
IMPAudioFrame frm;
frm.virAddr = (uint32_t *)buf;
frm.len = size;
ret = IMP_AO_SendFrame(devID, chnID, &frm, BLOCK); // 向AO通道0发送音频帧frm
ret = IMP_AO_ClearChnBuf(devID,chnID); // 消除AO通道0中的音频数据缓存
ret = IMP_AO_ResumeChn(devID,chnID); // 恢复AO通道0
ret = IMP_AO_FlushChnBuf(devID,chnID); //等待AO通道0音频数据播放完
ret = IMP_AO_DisableAlgo(devID,chnID); //AO通道0禁止算法功能
ret = IMP_AO_DisableChn(devID, chnID); // 禁用AO通道0
ret = IMP_AO_Disable(devID); //禁用AO设备ID0
fclose(play_file);