guanjl 发表于 2009-9-25 20:29:26

关于左右声道的问题

本帖最后由 guanjl 于 2009-9-28 09:24 编辑

有三个按钮:1.左声道 2.右声道 3.立体声
点击按钮1,只有左喇叭有声,
点击按钮2只有右喇叭有声音,
点击按钮3左右都有声音.

请问以上如何可以实现?

sxd 发表于 2009-9-26 01:31:03

本帖最后由 sxd 于 2009-9-26 01:32 编辑

左声道
DllCall('winmm.dll', 'none', 'waveOutSetVolume', 'hwnd', 0, 'dword', 0x0000FFFF)

右声道
DllCall('winmm.dll', 'none', 'waveOutSetVolume', 'hwnd', 0, 'dword', 0xFFFF0000)

立体声
DllCall('winmm.dll', 'none', 'waveOutSetVolume', 'hwnd', 0, 'dword', 0xFFFFFFFF)

以上都是最大音量 如果你要保持当前音量 先waveOutGetVolume得到当前音量再写进去
第二个参数的 低字节是左声道音量 高字节是右声道音量

水木子 发表于 2009-9-26 09:16:35

2# sxd


厉害!学习啦:face (23):

guanjl 发表于 2009-9-26 09:34:50

2# sxd
多谢!

DllCall ( "dll", "返回值类型", "函数名称" [, "类型1", 参数1[, "类型n", 参数n]] )

[, "类型1", 参数1[, "类型n", 参数n]   这些参数分别是是什么意思,如何用啊,看帮助完全不懂呢?

kn007 发表于 2009-9-26 10:24:49

不同的dll有不同类型不同参数,详看msdn

guanjl 发表于 2009-9-26 13:44:52

本帖最后由 guanjl 于 2009-9-26 13:45 编辑

http://msdn.microsoft.com/zh-cn/library/3bf5fs13%28VS.80%29.aspx
找到这里,到哪里查????:face (13):

pingfan5888 发表于 2010-12-27 14:20:09

不错,学习了。

My2009 发表于 2012-2-14 16:10:42

不错,学习了。

yhxhappy 发表于 2015-4-24 13:56:53

回复 2# sxd


    我使用这个方法测试没反应,声音还是两声道输出,WIN7 64位系统
页: [1]
查看完整版本: 关于左右声道的问题