救急:如何向第二张声卡播放mp3文件??

niaosuy 2004-07-22 05:28:57
高手救急,高分相送
...全文
189 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
captainwh 2004-08-06
  • 打赏
  • 举报
回复
你用什么方法播放的?
如果用WaveOut API的话,在waveOutOpen的时候可以制定用哪一个音频输出设备;
如果是用DirectSound, 那么在DirectSoundCreate的时候也可以制定使用的输出设备;

mci这个冬冬我没用过不晓得, 不过感觉做音频播放还是直接点比较好,WaveOut APi和DSound是最直接简单的方法了,或者可以考虑用dshow, 系统提供了Audio Renderer (WaveOut)和DirectSound Renderer两个音频Renderer Filter, 用起来更简单一些,不用直接和wave数据打交道了。
rwdx 2004-08-06
  • 打赏
  • 举报
回复
同意楼上,自己写程序实现
xiaoqiqixiao 2004-08-05
  • 打赏
  • 举报
回复
晕,还在坚持,真的好佩服啊

用mci应该也是可以的,但是mci有许多不好的地方,被我坚决的屏弃掉了,比如用了一个mci后,如果再打开一个就不行了,好象记得mci还需要把声音内容全部读入内存才行
但是设备不同的话,我估计应该也能打开第2个mci吧,没试过,你自己试试吧
MCI_OPEN_PARMS op;
......//初始化op的其它成员
op.lpstrDeviceType = (LPSTR) MAKELONG (MCI_DEVTYPE_WAVEFORM_AUDIO, nIndex);
//nIndex为0,1......你有N块声卡就是0->N-1
mciSendCommand(0, MCI_OPEN, MCI_OPEN_TYPE | MCI_OPEN_TYPEID | MCI_OPEN_SHAREABLE,(DWORD)&op);至于是MCI_WAIT还是MCI_NOTIFY,那就你自己决定了

至于注册表,就是这里

不知道Windows Media Player是用DirectSound还是waveOutXXX函数做,如果是用waveOutXXX函数做的,还可以用API Hook上waveOutOpen,将它的参数wDeviceID改成你所需要的值

仅供参考,可能还有其它方法的,如果你能象现在这样一直坚持的话,估计会有高级别人员提供更有效方法来实现
shadowWind 2004-08-04
  • 打赏
  • 举报
回复
注册表里很多地方都出现了声卡的名字
要改哪一个?

是不是:
HKEY_CURRENT_USER\Software\Microsoft\Multimedia\Sound Mapper

其它的还要改吗?
shadowWind 2004-08-04
  • 打赏
  • 举报
回复
mark
niaosuy 2004-07-29
  • 打赏
  • 举报
回复
再 UP
niaosuy 2004-07-27
  • 打赏
  • 举报
回复
自己UP
niaosuy 2004-07-23
  • 打赏
  • 举报
回复
TO xiaoqiqixiao(七七)

mciXXX系列函数能指定设备吗??

ps:我是菜鸟,请多多关照
xiaoqiqixiao 2004-07-23
  • 打赏
  • 举报
回复
晕死,你是响应我的回复的吗?
那么看来你并没有理解我的意思,或者你并没有按照我说的去做,或者干脆的说吧,你实在是很不懂变通,
你放第1个文件后,写注册表,换当前声卡,然后再放另一个文件不就好了,中间也不会花多少时间的
当然也有其它的方法,用waveOutXXX函数自己实现mp3播放,只是这样有点累,而且诸多限制,没法用WMP了,太可惜了
niaosuy 2004-07-23
  • 打赏
  • 举报
回复
其实我想同时向两张声卡放不同的mp3文件,

我要向第一个声卡播放1.mp3,同时向第二张声卡播放2.mp3
xiaoqiqixiao 2004-07-23
  • 打赏
  • 举报
回复
进入控制面板的多媒体选项,看到你的两块声卡了吗?
选择任何一块,播放文件,听听是从哪块声卡发出来的
再打开regedit,搜索所选中的声卡名称,看看在注册表的哪些地方有这块声卡的记录
再选择另外一块,再播放另一文件(注意,别让原来的声音停掉),听听声音是否是从这块声卡来的,再听听原来的声卡的声音是不是没了
再打开regedit,搜索这块声卡名称
是否有所发现
对了,就是这里了,在程序中实时修改注册表这个地方,就能使声音从不同的声卡输出了,同时输出也没问题哦
lanstar200 2004-07-23
  • 打赏
  • 举报
回复
gz
niaosuy 2004-07-23
  • 打赏
  • 举报
回复
还没有解决,快帮忙阿
niaosuy 2004-07-22
  • 打赏
  • 举报
回复
我有两张声卡,现在我只要从第二张声卡里放出我的mp3文件。
名牌大灰狼 2004-07-22
  • 打赏
  • 举报
回复
晕~没听懂什么意思.你的意思是两块声卡同意播放 不可能吧.

15,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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