一个声卡同时播放几个声音文件的简单方法?

gg 2000-07-09 04:10:00
有需要在程序中同时播放几个声音,因为要在线程级编程,所以不能用控件(对吗?),使用了
MCI接口,启动多个线程分别播放,发现有些声卡可以同时播放,有些不行并提示设备被占用,
是因为一些老一些的声卡不支持多声音流吗?是否可以通过混音操作使其同时播放多个声音
流?如果可以,怎样操作?哪儿有例程或教程?除此之外有没有其它办法?
各位大侠请鼎立相助,不胜感谢!!
...全文
600 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
dusj 2000-08-31
  • 打赏
  • 举报
回复
GONOW给我一份好吗?
gonow 2000-07-28
  • 打赏
  • 举报
回复
我有wavmix32.dll的例程,vc的,请和xianghua_liu@263.net联系,记得给我分吆!
town 2000-07-12
  • 打赏
  • 举报
回复
我只知道,老的声卡一次只能使用一个Wave通道。现在的声卡可以支持多个通道同时使用,如YA724,同时播放七八个Wave没有问题。
sanhan 2000-07-10
  • 打赏
  • 举报
回复
关于问题2:
你应该用WINAPI来声明。你在VB下用的是PASCAL调用规范。
kxy 2000-07-10
  • 打赏
  • 举报
回复
DirectSound的出现就是为了多个wav的同时播放,建议你用DirectSound
tengel 2000-07-10
  • 打赏
  • 举报
回复
可以使用程序把声音混合在一起,这需要使用低层音频API函数,如果是8位的声音把两个文件的数据----除了文件头
z=x+y-255;
z=z>255?255:z;
z=z<0?0:z;
写到缓冲区即可,如果还不明白,再问
hhzh426 2000-07-10
  • 打赏
  • 举报
回复
感兴趣!
feng 2000-07-10
  • 打赏
  • 举报
回复
關注
tbmac 2000-07-10
  • 打赏
  • 举报
回复
关注
gg 2000-07-10
  • 打赏
  • 举报
回复
首先,DirectSound不能用,因为在nt下使用,windows下有一个wavmix32.dll,是一个第三方的库,可以实现混音,但我只找到vb的例程,在往VC下移植的过程中,遇到下列问题,大家可以一议:
1)VB函数调用中的结构(type),转移到VC下的结构(struct),调用是
使用结构名还是结构的指针.
2)VC标准dll的调用是否需要指定__stdcall等来说明参数的顺序
3)有没有wavmix32.dll的使用说明或例程
ta 2000-07-09
  • 打赏
  • 举报
回复
关注
gg 2000-07-09
  • 打赏
  • 举报
回复
程序有可能在nt下运行,所以Direct sound方法不能用.
sanhan 2000-07-09
  • 打赏
  • 举报
回复
可以试试Direct Sound.
《计算机应用基础》问答题答案 四、简答题 1、计算机系统由哪几部分组成,各部分的基本结构是什么? 计算机系统是由硬件系统和软件系统两大部分组成的。 一、电脑的硬件系统一般有: 1、主机;2、显示器;3、键盘;4、鼠标;5、音箱;6打印机;7、摄像头、扫描仪、数 码像机等设备。 二、电脑的软件系统可分为: 1 操作系统软件;2、应用软件。 2、OFFICE应用程序主要常用软件是什么,每个组件的主要用途是什么? OFFICE应用程序主要常用的组件有:word、excel、powerpoint。 word主要是文字处理软件,对文字进行排版,里面也可以画简单的图。 Excel是电子数据表程序,进行数字和预算运算的软件程序。 powerpoint是用于设计制作专家报告、教师授课、产品演示、广告宣传的电子版幻灯 片,制作的演示文稿可以通过计算机屏幕或投影机播放。 3、什么是Windows的文件,文件的常用操作有哪些? 文件是操作系统用来存储和管理数据信息的基本单位。 常用操作有:新建、复制、移动、删除、重命名。 4、Excel函数有哪几个分类? Excel函数一共有11类,分别是数据库函数、日期与时间函数、工程函数、财务函数 、信息函数、逻辑函数、查询和引用函数、数学和三角函数、统计函数、文本函数以及 用户自定义函数。 5、什么是计算机病毒,应该如何防护? 计算机病毒是编制或者在计算机程序中插入的破坏计算机功能或者破坏数据,影响计 算机使用并且能够自我复制的一组计算机指令或者程序代码。具有破坏性,复制性和传 染性。 计算机病毒的防护:首先需要为系统安装杀毒软件或防火墙,再禁用病毒进入设置。 1、禁用Guest账号;2、关闭端口;3、关闭共享;4、设置internet防火墙;5、及时安 装各种补丁程序;6、internet安全设置;7、选择适用的防病毒软件;8、邮件安全措施 ;9、网络密码安全防范;10、做好数据文件备份。 五、操作题 1、如果个人计算机不能播放声音,描述应当如何操作恢复声音。 造成计算机不能播放声音的原因很多,可用排除法查找: (1)检查声卡、连接线,以及音箱等设备是否连接正常;运行杀毒软件进行杀毒; (2)右击"我的电脑"----"属性"---"硬件"---- "设备管理器",打开"声音、视频和游戏控制器"有无问题,即看前面有没有出现黄色的 "?"。如有,重新安装这个设备的驱动程序进行解决; (3)有声音但不见小喇叭时,打开控制面板----声音和视频设备---- 音量,在"将音量图标放入任务栏"前打上对号; (4)无声音又无小喇叭时,打开控制面板----添加与删除程序---- 添加删除Windows组件,在"附件和工具"前打对号,点击"下一步",然后,关机重启,系 统会提示安装新硬件,按照提示进行安装即可; (5)卸载声卡驱动程序,重新进行安装或升级声频驱动程序; (6)当安装声卡驱动程序时出现"找不着AC晶片"提示,有可能是电脑中毒,或者因 违规操作误删了声卡驱动程序,抑或是内部软件冲突。解决的办法是重装系统和驱动程 序。 (7)关机后等待一段时间后再重新开机,有时声音问题会自行解决。 2、有一个Excel电子"学生成绩表",如下图所示,描述下列操作如何实现。 (1) 给所有单科不及格的成绩值,做红色字体标识。 (2) 筛选出所有本学期不及格的学生记录。 答:(1)选中单元格范围,在格式-条件格式-单元格数值-小于-公式右边输入 60,下面的格式中选择字体为红色,然后确定,即可将所有不及格的显示为红色。 (2)运用Excel自动筛选功能,先选中学生成绩,然后点"数据"下的"自动筛选",成绩 栏的顶端会出现一个小三角,再展开这个小三角,选择"自定义"选项,输入"低于60分" 进行筛选,即为全不及格的。 3、如果要制作一张新演示文稿,并在上面插入一部影片(影片格式可能是ppt支持,也 可能不是ppt支持),请描述制作过程。 答:PPT中插入视频的三种方法: 一、直接插入播放视频。在ppt菜单栏中选"插入"选项,从打开的下拉菜单中执行"插 入影片文件"命令,然后按提示步骤进行。 二、插入控件播放视频。这种方法就是将视频文件作为控件插入到幻灯片中的,然后 通过修改控件属性,达到播放视频的目的。使用这种方法,有多种可供选择的操作按钮 ,播放进程可以完全自己控制,更加方便、灵活。该方法更适合PPT课件中图片、文字、 视频在同一页面的情况。制作步骤如下: 1、在PPT视图"选项中的下拉菜单中选中"控件工具箱",再从下级菜单中选中[其他控 件]按钮。 2、在随后打开的控件选项界面中,选择"Windows Media Player"选项。 3、将鼠标移动到PPT的编辑区域中,画出一个合适大小的矩形区域,随后该区域就会 自动变为Windo
变速齿轮0.45 变速齿轮是一个神奇的改变游戏速度的程序。他是世界上第一个,也是目前最好的改变Windows游戏速度的程序。他几乎能改变任何Windows游戏的速度。我还没有发现任何其他程序能改变,而变速齿轮不能改变的游戏。并且在效果上,例如变速后画面的平滑性(这同时会影响游戏的操作性)、能使游戏达到的最快或最慢速度、使用的方便性、运行的稳定性等都是最好的。 除了游戏,变速齿轮事实上也能改变任何时间相关的程序的速度,例如视频播放、Flash、网页等。总之他是一个用途广泛而且相当有趣的程序。 可以从我的主页(http://www.wangrong1002.com/)上下载本程序的最新版本。 新增功能与改进 1、因为不小心丢了源代码,只好又重写了变速齿轮。虽然界面看起来和原来一样,但实际是完全重写的。 2、9x版的变速齿轮中使用了和NT版中相同的技术,因此几乎能和NT版一样稳定。 3、用Ctrl+加速或减速键可以在每次0.1或0.5次方倍之间切换。 4、自动判断操作系统,只安装9x或NT版。 5、最小化时缩小到系统托盘。 6、NT版可以从“速度改变的进程”列表中删除进程。 7、减小了安装程序。 8、支持更多的热键。 支持的操作系统 这一版本的变速齿轮可以在Windows 98、Windows 98SE、Windows ME、Windows 2000、Windows XP、Windows Server 2003下运行。在Windows 98、Windows 98SE、Windows ME下使用9x版的变速齿轮,在Windows 2000、Windows XP、Windows Server 2003下使用NT版的变速齿轮。由于变速齿轮的9x和NT版在使用上有很大不同(实际上他们是两个不同的程序),所以我将分别地介绍他们。目前变速齿轮不能在Windows NT 3.x和Windows NT 4.x下运行。其实要让变速齿轮能在这两个操作系统下运行是很容易的,方法也很多,不过连M$自己都不支持他们了,所以我也偷个懒吧。我也没有在Windows 95下做过测试,同样也是因为M$不再支持他们了。 变速齿轮的使用 9x版变速齿轮的使用很简单,你要做的唯一事情是移动滑杆设定你想要的速度。设定的速度对系统中所有进程(也就是正在运行的程序)都有效。注意,有些游戏不能在运行中改变速度,这时只要先设定好想要的速度再运行游戏就可以了。 NT版的变速齿轮使用比9x版略微复杂。他只对那些你指定的进程变速,对其他进程则没有影响,这样就大大提高了变速齿轮的稳定性。有几种方法可以指定需要变速的进程: 1。在“速度未改变的进程”列表框中是变速齿轮没有对他变速的进程。在这个列表框中选择一个进程,点加入按钮,可以把他加入到“速度改变的进程”列表中。 2。点浏览按钮(标题是三个点的那个按钮),将打开文件对话框。用他选择一个可执行文件(*.exe)。所选择的文件名将自动填入下拉列表框,并且自动运行。 3。在下拉列表框中填入带完全路径的可执行文件名,按运行按钮运行他。下拉列表框中保存着以前运行过的可执行文件名。你也可以方便地从中选择一个。 4。被变速齿轮变速的进程启动的进程也将自动被变速。由于几乎所有的进程都是由NT的外壳进程(就是在变速齿轮中显示为“Program Manager”的那个进程。桌面和资源管理器也都属于这个进程)启动的,所以如果把“Program Manager”加入到“速度改变的进程”列表中,将是一个方便的使用变速齿轮的方法。 如果进程列表没有正确反映当前的进程状态,可以点刷新按钮刷新列表。对于一些不能在运行中改变速度,或者在运行中改变速度会发生异常的游戏,请先设定好想要的速度,然后用除了第一种方法之外的方法启动游戏。 变速齿轮可以使用热键方便地改变速度。在不能切换到变速齿轮的使用界面,例如游戏正在运行时,热键甚至是唯一改变速度的方法。 点热键按钮可以弹出设置热键对话框。固定速度热键用于把变速齿轮设定到一个固定的速度,加快减慢热键用于加快或者减慢速度。如果核选“加快减慢热键使用精细调节”核选框,每次加快减慢2的0.1次方倍,否则每次加快减慢2的0.5次方倍。另外,使用Ctrl+加快减慢热键也可以在每次2的0.1次方倍和2的0.5次方倍之间切换。“启用热键”核选框用于设置所有热键是否有效。 注意如果用鼠标拖动滑杆将只停在整数倍位置,但是使用左右键可以进行更精细的调节。也可以使用Page Up、Page Down、Home、End键移动滑杆。 常见问题解答 *变速齿轮真的能让我的电脑运行加快256倍吗? 当然不能,否则Intel和AMD岂不是得改行卖软件。事实上他不会改变电脑的运行速度。 *使用变速齿轮会烧坏CPU、显卡和硬盘吗? 不会。如果在用变速齿轮时CPU、显卡或硬盘坏了,即使不用变速齿轮它们一样会坏。 *我在用Windows媒体播放器(Windows Media Player)看电影时想用变速齿轮快进和慢放,但我发现他只是使画面变得跳动,实际速度并没有变化。 在电脑中有声卡时媒体播放器会根据播放声音的速度播放视频。因此需要停用所有声卡。9x下是进入控制面板\系统\设备管理器,右键点击声卡设备,点属性,选在此硬件配置文件中禁用。NT下是进入控制面版\系统\硬件\设备管理器,右键点击声卡设备,点停用。 *加速器真的很好,特别是玩《石器时代》的时候,但是,突然有一天,我发现我的连接上的时间也跟着一起加速,连接时间过的飞快,我可是一个穷玩家啊,禁受不起打击的,希望给我答案!!!是不是加速的时候,电话费和网费也一起加速啊? 放心吧!使用变速齿轮是不会影响到电话费和网费的记费的,你看到的只是使用变速齿轮后的假象,电信局有自己的计费时钟。 *变速齿轮只能改变Windows95及以上版本游戏的速度吗? 是的,他不能改变DOS和Windows3.1游戏的速度。 *我怎么改变不了电脑移植版真侍魂的游戏速度? 由于计时方法的不同,一些游戏不能在运行中改变速度,或者在运行中改变速度会发生异常。只要先设定好速度再运行游戏就可以了。 *我在NeoRage模拟器中把速度降低8倍后为什么按键速度快了就做不出相应的动作,声音也完全变成了噪音? NeoRage并不是连续检测键盘,假设他每秒检测30次,降低8倍后每秒仅检测4次,在这4次检测之间的键盘状态是被忽略的。所以把动作放慢一点吧。变成噪音是由于模拟器的特殊性。据我的测试,在其他游戏中声音都是正常的。 *我把速度降低16倍后为什么看到很多游戏画面是一帧一帧变化的? 二维游戏画面每秒最多30帧,降低16倍后每秒仅有两帧,所以你能清楚地看到画面一帧一帧地变化。三维游戏的帧速率也经常会有上限

16,466

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

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