如何将两个或多个wav文件混音成一个wav文件

key20003 2004-11-17 09:27:55
如题
...全文
229 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
key20003 2004-11-18
  • 打赏
  • 举报
回复
qqq
key20003 2004-11-17
  • 打赏
  • 举报
回复
自己顶一下
要实现多方会议中的音频混音
key20003 2004-11-17
  • 打赏
  • 举报
回复
多谢someone
你好像用的是不改变采样位数的情况下进行的平均取值
我这个会议系统要实现八个人的混音,如果还是只用平均的话恐怕不行

还有更好的其他算法吗,分不够再加
someone 2004-11-17
  • 打赏
  • 举报
回复
怎么前面少了两行
PBYTE CWaveOut::Mix(PBYTE pBuff1, PBYTE pBuff2, DWORD dwBuffSize, WORD wBitsPerSample)
{
someone 2004-11-17
  • 打赏
  • 举报
回复
PBYTE pOutBuff = new BYTE[dwBuffSize];
if ( pOutBuff == NULL )
return NULL;

DWORD i;
if (wBitsPerSample == 8)
{
PBYTE p = pOutBuff;
for (i=0; i<dwBuffSize; ++i)
{
*p++ = *(pBuff1++)/2 + *(pBuff2++)/2;
}
}
else if (wBitsPerSample == 16)
{
PWORD p1 = (PWORD)pBuff1;
PWORD p2 = (PWORD)pBuff2;
PWORD p =(PWORD)pOutBuff;
for (i=0; i<dwBuffSize/2; ++i)
{
*p++ = *(p1++)/2 + *(p2++)/2;
}
}
else
{
delete [] pOutBuff;
return NULL;
}

return pOutBuff;
}

2,543

社区成员

发帖
与我相关
我的任务
社区描述
专题开发/技术/项目 多媒体/流媒体开发
社区管理员
  • 多媒体/流媒体开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧