当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > 用API函数实现切换VCD的左右声道

ASP.NET
Active Directory 对象的控制
在vb中动态加载水晶报表rpt文件的方法
webconfig中进行登陆的权限、修改2
DataGrid(WinForm)显示行号最简单的方法
在EXCEL中获取列中不重复的值的个数
使用Visual C#制作可伸缩个性化窗体
关于控件注册和使用许可问题的解决办法
获取闭合符号中的字符串
判断点与多边形的状态(位置)
NHibernate初试
GetTickCount()函数精确到多少毫秒
VB.net中HOOK的应用(一)
C# to VB.Net translator..
用Visual C#调用Windows API函数
用API函数实现切换VCD的左右声道
元数据--自定义属性(VB.NET)
初学VB.NET连接SQL数据库
简单的DataGrid多表头制作方法
带输出参数的存储过程的使用及在C#中调用问题
VS的控件真是不好用,好不容易才搞定DataGrid

ASP.NET 中的 用API函数实现切换VCD的左右声道


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 82 ::
收藏到网摘: n/a


在用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)格式的文件有效。