用API函数实现切换VCD的左右声道

类别:.NET开发 点击:0 评论:0 推荐:

在用VB编写播放器时,经常会涉及到声道的切换问题,用directShow及其它方法虽然可以解决,但过于麻烦,且VB对directShow支持得不太好,下面讲述了使用MCI命令切换VCD声道的方法。

'首先加一个picture控件到窗体上以便于显示图像
'定义变量
dim sTheFile as string     '文件名
dim sAlias as string       '别名
dim lReturn as long        '返回值

sAlias = "VCD"
sTheFile = "c:\songs\吉普赛情人.dat"


'打开文件
lReturn = mciSendString("open " & sTheFile & " ALIAS " & sAlias & " parent " & Picture1.hWnd & " style child", vbNULLString, 0, 0)


'播放
lReturn = mciSendString("play " & sAlias, vbNullString, 0, 0)


'关闭
lReturn=mciSendString("close " & sAlias, vbNullString, 0, 0)


'切换声道的操作
'左声道
lReturn = mciSendString("setaudio " & sAlias & " source to left",vbNullString,0,0)

'右声道
lReturn = mciSendString("setaudio " & sAlias & " source to right",vbNullString,0,0)

'左右平均(即左右声道的声音混合)
lReturn = mciSendString("setaudio " & sAlias & " source to average",vbNullString,0,0)

'立体声
lReturn = mciSendString("setaudio " & sAlias & " source to stereo",vbNullString,0,0)


用以上方法切换声道即可实现两个音箱都有声音,但是仅对VCD(即Mpeg1)格式的文件有效。

本文地址:http://com.8s8s.com/it/it41855.htm