注册 登录
编程论坛 C图形专区

[ 终于解决] Sound Blaster 背景播放播放声音问题

greenlitchi 发布于 2008-09-24 22:50, 1302 次点击
我经过几天对  Sound Blaster 的代码研究,国外的代码也找了几个可以播放wav的,但是效果比较差,而且声音听起来有点拖延,我试做了一下,也是同样的效果。在背景播放声音的时候,切不可以使用 printf 等很多函数,不知道为什么。
要是大家有兴趣,可以看看这个国外的网站:
http://www.

这里有大堆代码和例子,但没有我想要的背景播放效果代码,哈。希望大家给个建议。
播放wav的时候,我使用的是 IRQ中断。

[[it] 本帖最后由 greenlitchi 于 2008-9-25 09:01 编辑 [/it]]
5 回复
#2
RockCarry2008-09-25 09:37
你可以到 www. 去下载我的 RGE,里面实现了  SoundBlaster 播放 wave 音频的功能,采用的是 DMA + IRQ 的方法,效果还是不错的。我这里还有一个 SoundBlaster 官方的开发包,包括了参考代码和 SoundBlaster 的 PDF 参考文档,我有空了就发一份给你。
#3
greenlitchi2008-09-25 10:28
问题解决
昨晚经过一夜的奋斗,终于把问题解决了,IRQ 时间中断问题,
我发觉很多伟人的代码都是相同问题,相同的错误,但作为一个简单的例子,在主要的线程中加了个 getchar(); 作为停顿,而声音在中IRQ 中断中处理,
这样的问题,如果把 getchar(); 修改为 while( 1 ){ printf("hello"); } 那样就有问题,因为我们的 printf 也使用中断,才绘制文字出来,那么需要加 disable() 和 enable()



[qq]444163200[/qq] 荔枝

在此发个我做的演示例子给大家看下。
下载地址:
http://www.


[[it] 本帖最后由 greenlitchi 于 2008-9-25 11:46 编辑 [/it]]
#4
greenlitchi2008-09-25 10:29
谢谢版主
#5
greenlitchi2008-09-26 01:40
测试二的最终效果:
" border="0" />
http://www.
#6
acetuo2009-10-25 22:18
没有程序源代码呀!!!!!!!!!!
希望共享!!!!!!!!
1