扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:中国电子科技集团公司 来源:天极网 2007年10月19日
关键字:
mmr = acmStreamOpen(&hstr, NULL, //任意驱动器 &wfSrc, //源格式 pwfPCM, //目标格式 NULL, //无过滤 NULL, //无回调 0, //初始数据 ACM_STREAMOPENF_NONREALTIME); |
DWORD dwSrcBytes = dwSrcSamples * wfSrc.wBitsPerSample / 8; DWORD dwDst1Samples = dwSrcSamples * pwfPCM->nSamplesPerSec / wfSrc.nSamplesPerSec; DWORD dwDst1Bytes = dwDst1Samples * pwfPCM->wBitsPerSample / 8; unsigned char * pDst1Data = new unsigned char[dwDst1Bytes]; …… ACMSTREAMHEADER strhdr; //填充转换信息 memset(&strhdr, 0, sizeof(strhdr)); strhdr.cbStruct = sizeof(strhdr); strhdr.pbSrc = cpBuf; //指定要转换的源Wave音频数据为cpBuf中的数据 strhdr.cbSrcLength = dwSrcBytes; strhdr.pbDst = pDst1Data; strhdr.cbDstLength = dwDst1Bytes; mmr = acmStreamPrepareHeader(hstr, &strhdr, 0); mmr = acmStreamConvert(hstr, &strhdr, 0); //转换数据 …… acmStreamClose(hstr, 0); |
mmr = acmStreamOpen(&hstr, had, //驱动器句柄 pwfPCM, //源格式 pwfDrv, //目标格式 NULL, //无过滤 NULL, //无回调 0, //实例化数据 ACM_STREAMOPENF_NONREALTIME); |
DWORD dwDst2Bytes = pwfDrv->nAvgBytesPerSec * dwDst1Samples / pwfPCM->nSamplesPerSec; dwDst2Bytes = dwDst2Bytes * 3 / 2; unsigned char * pDst2Data = new unsigned char [dwDst2Bytes]; |
double result= (double) dwSrcBytes / (double) strhdr2.cbDstLengthUsed; |
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者