CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  基础类

语音通讯问题,紧急求助高手, 在线等待~~~~~~~~~~~~

楼主VisualStudio(万物皆框架)2002-08-24 17:28:31 在 VC/MFC / 基础类 提问

我用VC编写的一个语音通讯程序,语音的处理由一个线程类   class   CAudioIO   public   CWinThread{}   实现,   连接,发送与接收在主对话框中实现,   我调试(按   F5   方式)时通话正常,   但我执行程序时(按   Ctrl+   F5   方式)则只能听到哒哒哒的噪音,   如果有一方是调试状态(按   F5   方式)另一方是执行状态(按   Ctrl+   F5   方式)则调试状态的一端可以听到执行状态一端的声音,但执行状态这一端仍然只有哒哒哒的噪音,   我不知道是为什么.   请高手赐教. 问题点数:100、回复次数:15Top

1 楼2ndboy(贱男春)回复于 2002-08-24 20:50:01 得分 1

两端都Ctrl+   F5   呢?Top

2 楼VisualStudio(万物皆框架)回复于 2002-08-24 20:50:48 得分 0

如果两端都Ctrl+   F5则两端都是噪音Top

3 楼ylbug(臭虫)回复于 2002-08-24 20:54:40 得分 1

调试状态,有断点吗,在哪个线程中?Top

4 楼2ndboy(贱男春)回复于 2002-08-24 20:58:16 得分 41

你给的信息太少了,我想这可能跟你的多线程实现有关系,比如同步机制,还有就是本地收到语音数据不要马上播放,先把它存放在一个缓冲区里面,等收到多一些数据再一块儿播放出来。Top

5 楼VisualStudio(万物皆框架)回复于 2002-08-24 20:59:43 得分 0

有没有断点都一样,   只要是按   F5   调试就正常,   按   Ctrl   +   F5   就不行Top

6 楼VisualStudio(万物皆框架)回复于 2002-08-24 21:08:47 得分 0

只要收到语音数据我就播放,而且我的录音和播放是在一个线程类里面完成,MM_WIM_DATA   和   MM_WOM_DONE   也在这个类里面Top

7 楼VisualStudio(万物皆框架)回复于 2002-08-24 21:10:05 得分 0

你们还需要什么信息?Top

8 楼GaoDi()回复于 2002-08-24 23:52:16 得分 41

首先请仔细检查一下你的缓冲区的设置与使用。  
  其次Debug状态下VC对你的程序进行了一定的‘保护’,这也是一个出现错误的原因(尤其是指针等)  
  第三在系统的声音设置中(双击状态栏右边的小喇叭可弹出对话框)去掉混音选项。  
  第四你可以先把所有的语音数据保存成文件,然后用你的播放模块进行播放,看看哪里有问题。  
  第五耐心一点调,用你这种类似的多线程的方法是可行的,我已做出一个了。当时我也出现过你的情况,上面四条实在是心得而已:)Top

9 楼lws08()回复于 2002-08-25 01:32:49 得分 5

同意,GaoDi,以前也碰到这类问题,debug下可以得到正确结果,换成Realse就不行,象这种问题大约都是缓冲越界等造成(我是这么想的,呵呵)Top

10 楼dxxb(天下无雪)回复于 2002-08-25 07:43:07 得分 5

缓冲区的设置和使用上有问题。  
  ====  
  努力,奋斗!  
  Top

11 楼VisualStudio(万物皆框架)回复于 2002-08-25 09:39:11 得分 0

首先我的程序不论是Debug版本还是Release版本都出现同样的问题,  
  我想问题可能出在接收和播放上,因为处于调试状态(按   F5)的一端可以正常听另一端的语音,而不论另一端是执行状态还是调试状态,说明我的连接、录音、和发送是没有问题的,所以问题只会出现在接收和播放上.Top

12 楼2ndboy(贱男春)回复于 2002-08-25 11:08:07 得分 5

上面不是说过了吗?收到多一些数据之后再播放,否则一定是断续的!Top

13 楼hfycl(袒右)回复于 2002-08-25 14:45:15 得分 1

markTop

14 楼VisualStudio(万物皆框架)回复于 2002-08-26 10:26:06 得分 0

我已经解决了,谢谢大家,是播放缓冲区的分配与使用有问题Top

15 楼nbgyf(梅花峰)回复于 2002-08-26 10:37:13 得分 0

恭喜,恭喜  
  我来晚了Top

相关问题

  • 紧急等待!!
  • 一个语音通讯和应答问题~
  • 请问如何实现QQ的语音通讯
  • 100分,找关于 语音通讯编程 资料
  • 局域网语音通讯噪音消除,高手请入
  • 怎样用无线modem进行语音通讯?
  • 实时通讯—在线等待(100分)
  • 紧急,在线等待
  • 紧急求救!等待中.....
  • 100分跪求一个网络语音通讯工具(源码或算法)

关键词

  • 语音
  • 执行
  • 数据
  • debug
  • f5
  • 播放
  • 一端
  • 调试
  • 缓冲区
  • 状态

得分解答快速导航

  • 帖主:VisualStudio
  • 2ndboy
  • ylbug
  • 2ndboy
  • GaoDi
  • lws08
  • dxxb
  • 2ndboy
  • hfycl

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo