读书人

怎么通过程序控制让两个程序同时开始播

发布时间: 2012-12-20 09:53:21 作者: rapoo

怎样通过程序控制让两个程序同时开始播放
如何在程序里让winamp播放音乐,同时让"影音之星"播放画面。

就是同时让这两个程序开始播放,时间误差很小(执行一条语句那么短的时间)。
[最优解释]
这些软件基本上提供与播放相关的指令接口的,可以通过发送相应的消息驱动之。
因为Windows是多任务抢占式内核,不存在绝对意义上的同时,首先要明确这个概念。
想要完成同时的话,可以在运行启动这两个播放器程序段时,保证不被别的什么打断。这个可以应用内核同步管理函数的“临界代码段”实现,具体是以下3个函数:
InitializeCriticalSection
EnterCriticalSection
DeleteCriticalSection
[其他解释]
给你列出WinAMP的,“影音之星”我没听说过,因此不太清楚。
用SendMessage:

Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long

发给WinAMP的消息wMsg一概为273,hwnd自己用FindWindow什么的找。
wParam lParam
播放 40045 0
暂停 40046 0
停止 40047 0
上一曲 40044 0
下一曲 40048 0
快退 40061 0
快进 40060 0
[其他解释]
说得太复杂了楼主看不懂。没有绝对的同步,有一点点误差是可以接受的。我曾经就做了一个试验,用Wmp和DirectShow(同一软件中)同时播放一个视频,同步了还不好听,有那么一点点不同步,很有环绕立体声的的味道。嘿!真是不错!
[其他解释]
引用:
那你用什么控件播放VOB呀?


微软的这玩意儿:从Vista版本开始,微软没有提供这个文件,但可以在Vista下成功注册这个COM组件!
C:\WINDOWS\system32\mswebdvd.dll
[其他解释]
这里面有,一个是用的mswebdvd.dll ;另外一个用的是wmp.dll:
http://topic.csdn.net/u/20071114/17/389951ff-f161-4782-8611-ed414ff35534.html

[其他解释]
引用:
对了,如果我用媒体播放器不能正常播放这个VOB(只能听到声音,没有图像),是不是我用这个mswebdvd.dll 也够呛?

这个mswebdvd.dll 对应的桌面应用是哪个?


不可能!mswebdvd.dll 内部实现DirectShow播放,你试过没有?你看14楼里面那2个例子,好好研究一下吧!
另外,从部件里面可以直接添加mswebdvd.dll文件,添加后,将DVD播放器控件直接拖到窗体上即可。
[其他解释]
谢谢前辈回复。

我是菜鸟啊

“与播放相关的指令接口”该如何找呢?
[其他解释]
引用:
说得太复杂了楼主看不懂。没有绝对的同步,有一点点误差是可以接受的。我曾经就做了一个试验,用Wmp和DirectShow(同一软件中)同时播放一个视频,同步了还不好听,有那么一点点不同步,很有环绕立体声的的味道。嘿!真是不错!


恩 知我者珠珠也。我一看那么复杂就放弃了,只要能前后脚播出来就行鸟,别超过1秒就行。
[其他解释]
视频播放器用这个也行,这个的接口请问您知道么?


[其他解释]
引用:
视频播放器用这个也行,这个的接口请问您知道么?


没用过。我一般不用第三方控件,只用操作系统自带的!
[其他解释]
那你用什么控件播放VOB呀?
[其他解释]
mark
[其他解释]
mark
------其他解决方案--------------------


mark
[其他解释]

引用:
引用:
那你用什么控件播放VOB呀?


微软的这玩意儿:从Vista版本开始,微软没有提供这个文件,但可以在Vista下成功注册这个COM组件!
C:\WINDOWS\system32\mswebdvd.dll


能不能给我段代码,让它播放c:\tt.vob,以及暂停?
[其他解释]
对了,如果我用媒体播放器不能正常播放这个VOB(只能听到声音,没有图像),是不是我用这个mswebdvd.dll 也够呛?

这个mswebdvd.dll 对应的桌面应用是哪个?


[其他解释]
帮你顶!
[其他解释]
引用:
引用:
对了,如果我用媒体播放器不能正常播放这个VOB(只能听到声音,没有图像),是不是我用这个mswebdvd.dll 也够呛?

这个mswebdvd.dll 对应的桌面应用是哪个?


不可能!mswebdvd.dll 内部实现DirectShow播放,你试过没有?你看14楼里面那2个例子,好好研究一下吧!
另外,从部件里面可以直接添加mswebdvd.dll文件,添加后,将DVD播放器控件直接拖到窗体上即可。


貌似在access的窗体里不能用这个控件,555
[其他解释]
引用:


啊 太残忍了8
[其他解释]
我晕~~~~~~~~~~~~~~~~~~~~~
[其他解释]
引用:


哈哈,搞笑,转不晕的猫!
[其他解释]
http://topic.csdn.net/u/20080927/23/91a3dde9-82af-4864-b572-f1484d583613.html

来来......表情.....
[其他解释]
null
[其他解释]
[img=][/img]
[其他解释]
null

读书人网 >VB

热点推荐