请教如何把两个WAV格式的音频合成为一个。

happy2007_ 2008-09-05 09:56:11
我想在graphedit中找一个Filter将左右声道的两个音频文件合成为一个,但是没有找到这样的Filter,哪位高手给点儿指点,或者做过类似的程序的也行,急用啊!必重谢!
...全文
581 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
happy2007_ 2008-09-17
  • 打赏
  • 举报
回复
哪位能给提供一个两个输入pin,一个输出pin的Filter例子?我在编程方面是个菜鸟,自己看了好几天还是没弄明白怎么写。我的邮箱是:liuwei7068@163.com QQ:78286510
happy2007_ 2008-09-10
  • 打赏
  • 举报
回复
谢谢各位的指点,由于项目需求,我现在要写一个Filter,把两个单声道的音频合成一个双声道的音频,其实原理应该比较简单,但是我没有写过Filter,对它的结果框架之类的都不了解。所以想请各位能给我详细指点一下,或者给我写个大概的框架。多谢了!
xjfox 2008-09-10
  • 打赏
  • 举报
回复
安装directx的开发包,编译baseclass,写一个基于transform filter的filter,例子在安装好的dshow里多的是
happy2007_ 2008-09-10
  • 打赏
  • 举报
回复
对于感谢,当然是多给分了,如果能帮我完成这个Filter,我会尽力多给分的。
R_hgt 2008-09-09
  • 打赏
  • 举报
回复
你似乎没说清要怎么合成?是要做混音还是音频文件得合并?
其实WAV得格式已经是比较很标准得格式了,你完全可以解析两个文件头然后按照自己需要再进行处理。至于解析可以参看3楼讲的
ml1017 2008-09-05
  • 打赏
  • 举报
回复
dsound是不行的。他可以同时播放两个音频文件。。。
UDX协议 2008-09-05
  • 打赏
  • 举报
回复
dsound
anakiagmail 2008-09-05
  • 打赏
  • 举报
回复
对,如何重谢啊,写个filter,2个输入pin,1个输出pin,然后将2个sample的值进行处理,就能合成了,通常的做法是
a/2 + b/2,这样的音质一般是比较好的,就是音量小了一点
xjfox 2008-09-05
  • 打赏
  • 举报
回复
呵呵,怎么重谢?

自己写一个这样的程序,比求人要快,给你一个我自己写的解析wave头的结构,后面的就是pcm数据了
//wave file head struct
#pragma pack (2)
typedef struct waveHeader
{
int RIFF;
unsigned int fileLength;//8 bytes

int WAVE;
int fmt;
int WAVEFORMAT;//12 bytes

short PCM;
unsigned short channels;
unsigned int sampleRate;
unsigned int byteRate;
unsigned short byteNum;
unsigned short bitNum;
unsigned short reserved;//18 bytes

int fact;
int constNum4;
unsigned int dataLengthB;//12 bytes

int data;
unsigned int dataLength;//8 bytes
}*pWaveHeader;

2,554

社区成员

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

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