现在有个立体声wav文件,我想给他变成单声道,听说acm能够实现
但在c#中不知道该如何调用,还不能用c++ 持续郁闷中……
但在c#中不知道该如何调用,还不能用c++ 持续郁闷中……
解决方案 »
- C#调用dll中的一个c写的访问文件的函数,出现Accessviolationexception异常
- 如何处理一个页面打开另外一个人进不了?
- ESC命令 干什么用的 是什么意思啊 说的简单 易懂些 本人程度不高 谢谢
- c#编程中继承类中重载和覆盖的问题。。。?
- tooptiptext小问题
- 我想搞个IT的网页,可是一直找不到一个合适的标题图标,哪位帮忙给个!
- 菜鸟求救
- 用户代码未处理NullReferenecException,未将对象引用设置到对象的实例。
- MDAC28中文版和英语版有什么区别?
- 请问如何把数据库的图片(二进制文件)导到本地文件夹
- C#中linkbox怎么用?
- 请问在类前用[Serializable]有什么用啊
可不可以用VC什么的写好后用C#调用啊
但在c#中不知道该如何调用,还不能用c++ 持续郁闷中……你可以去
http://www.codeproject.com/cs/media/#Audio
找找看,或者用vc.net去写成类库,供c#调用也是可以的。
Wav格式文件主要由两部分组成:头信息和具体数据.其中头信息部分记录了该Wav文件的声道,位率和频率等信息.所以,修改它的头信息是比较好做的,用EditPlus之类的打开,找到channels : word; { 1(单声)或者2(立体声) ,改掉就可以了!——————————
是不能够怎么做的
---------------------------------------------------------------------
| 单声道 | 取样1 | 取样2 | 取样3 | 取样4 |
| |--------------------------------------------------------
| 8bit量化 | 声道0 | 声道0 | 声道0 | 声道0 |
---------------------------------------------------------------------
| 双声道 | 取样1 | 取样2 |
| |--------------------------------------------------------
| 8bit量化 | 声道0(左) | 声道1(右) | 声道0(左) | 声道1(右) |
---------------------------------------------------------------------
| | 取样1 | 取样2 |
| 单声道 |--------------------------------------------------------
| 16bit量化 | 声道0 | 声道0 | 声道0 | 声道0 |
| | (低位字节) | (高位字节) | (低位字节) | (高位字节) |
---------------------------------------------------------------------
| | 取样1 |
| 双声道 |--------------------------------------------------------
| 16bit量化 | 声道0(左) | 声道0(左) | 声道1(右) | 声道1(右) |
| | (低位字节) | (高位字节) | (低位字节) | (高位字节) |
---------------------------------------------------------------------
上面是,wav声道和bit对应的数据格式 单单修改channels 整个声音都变了,
自从大学毕业 vc全还给老师了