关于语音聊天系统的几个问题

dickbarry 2010-05-31 02:30:44
程序是采用WaveX低级音频函数进行编写的。我对音频编程不熟悉,希望高手给予指点

先说我的想法。我的想法很简单,就是采集语音,放入缓冲区,压缩,发送。接受端是接收数据包,解压,播放。但这样有个弊端,举个例子,A和B聊天,那么A的耳机里是没有A的声音的。

问题如下:

1.在音频采集的时候,可以直接用MP3或者WMA格式进行采集么?如果可以,怎么设置?最好用ACM相关编程。如果不可以,需要对WAVE文件进行压缩,压缩时采用哪种格式进行压缩时压缩比大,具体压缩比是多少?

2.由于是在网络中传输语音,压缩和解压要考虑实时性。查一些资料,GSM 6.10挺好的。这种到底是什么东西?有些是进行G721编码,这种又是什么东西?编码效果如何?

3.对于聊天内容,最后还需要记录下来,以供以后使用。我想采用wma格式进行存储,acm编程可以实现吗?另外,如果两个对话者同时说话,怎么存储聊天内容?


希望大家可以交流下
...全文
100 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
dickbarry 2010-05-31
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 audioaec 的回复:]
你说的 “这样有个弊端,举个例子,A和B聊天,那么A的耳机里是没有A的声音的。”

自己说什么,自己会知道的,难道有必要自己说的话出现在自己的耳机里面?
[/Quote]

A耳机里没有A的声音,那么最后保存录音文件的时候,还是没有办法保存全部的聊天内容。即A只能保存B说的话,B只能保存A说的话。而我想要的是两个人的聊天记录。

貌似要用到DirctSound进行混音


纠结....
bluesen 2010-05-31
  • 打赏
  • 举报
回复
为什么不google
CyberLogix 2010-05-31
  • 打赏
  • 举报
回复
你可以使用speex的语音引擎或者使用GIPS
AudioAEC 2010-05-31
  • 打赏
  • 举报
回复
你说的 “这样有个弊端,举个例子,A和B聊天,那么A的耳机里是没有A的声音的。”

自己说什么,自己会知道的,难道有必要自己说的话出现在自己的耳机里面?
hany_cn 2010-05-31
  • 打赏
  • 举报
回复
如果是通过电话网络进行语音聊天,可以用语音卡或通信交换机来实现,
但是,要是基于IP互联网实现点对点的语音聊天,关键是语音压缩和回音抵消。
dickbarry 2010-05-31
  • 打赏
  • 举报
回复
天呐,怎么没人来给指点啊~

我愿意加分,回答+100

2,542

社区成员

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

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