免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2556 | 回复: 7
打印 上一主题 下一主题

声卡编程求助 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-11-25 15:51 |只看该作者 |倒序浏览
我写了一段播放声音的小程序,简单的控制以及播放都没有问题,但是每次声音播放完毕后都一个非常明显的"嗒"音,怎么都去不掉,有没有做过声音编程 的兄弟帮忙指点一下.谢谢

论坛徽章:
0
2 [报告]
发表于 2008-11-25 17:52 |只看该作者

可能是结束播放的控制上有些延时,这个延时的时间内给声卡送了一个非法数据。

论坛徽章:
0
3 [报告]
发表于 2008-11-26 09:00 |只看该作者

回复 #2 eveson 的帖子

二楼的大哥,我觉得你分析的很有道理,我一直想不通为什么会有这个“嗒”音,那么我怎么检测是否有非法数据呢?从听觉上我感觉不到控制的延时。原本是有延时的,后来我重新设置那个SOUND_PCM_FRAGMENT参数后,延迟已经没有了。
    我的qq:494968069,希望能跟你联系。

论坛徽章:
0
4 [报告]
发表于 2008-11-26 09:39 |只看该作者
如果送静音的话,应该是什么数据,你结束播放后,接着发送一些静音数据过去,看是否有效果。

论坛徽章:
0
5 [报告]
发表于 2008-11-26 10:15 |只看该作者

回复 #4 eveson 的帖子

现在的效果是即使只播放一遍声音也会出现那个"嗒"音,不做任何控制,只是播放

论坛徽章:
0
6 [报告]
发表于 2008-11-26 10:25 |只看该作者

回复 #1 xymail110 的帖子

二楼 的兄弟,麻烦你加一下我的qq:494968069行不?
希望与你商量

论坛徽章:
0
7 [报告]
发表于 2008-11-26 11:58 |只看该作者
给你发消息了

论坛徽章:
0
8 [报告]
发表于 2008-11-26 14:26 |只看该作者

感谢

感谢二楼的兄弟,事实跟你说的很相似,是在用read()函数读声音文件的时候出了问题,我把读出来的数据打印出来看了,结果发现读到缓冲数组里面的数据比应有的声音文件多了好多,而且多余的数据都是128,前面有几十个字节,后面也有很多字节是这样的,我把这些字节全部去掉以后就好了,真是太感谢你了啊。

     今天我特别开心,我日,困扰我几个月的问题终于解决了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP