如何全屏播放AVI文件?
最好能用MCI实现,我不想用mediaplayer类! 问题点数:20、回复次数:15Top
1 楼pale(态度很重要)回复于 2002-05-24 13:22:53 得分 0
设个变量bFullScreen
在Play函数中判断:
if (bFullScreen)
dwFlags |= MCI_MCIAVI_PLAY_FULLSCREEN;
mciSendCommand (m_wDeviceID, MCI_PLAY, dwFlags, (DWORD)(LPVOID) &PlayParms)
Top
2 楼jemmylau(枕头)回复于 2002-05-24 14:56:12 得分 0
不是很明白,我已经打开文件了,现在要全屏,请你将详细点,谢谢Top
3 楼jemmylau(枕头)回复于 2002-05-24 15:26:21 得分 0
MCI_MCIAVI_PLAY_FULLSCREEN
有这个参数吗??Top
4 楼pale(态度很重要)回复于 2002-05-24 16:49:19 得分 0
应该是有的,因为我这里有这么一个程序就可以实现全屏
但我发现它好象只可以在文件开始播放的时候设置这个参数
好象不可以在已经播放了的文件中进行切换
我没有仔细分析它是如何实现的
但在程序里确实用到了MCI_MCIAVI_PLAY_FULLSCREEN这个参数
而且仅此一处用到了
Top
5 楼jemmylau(枕头)回复于 2002-05-25 01:38:04 得分 0
你的方法我倒没成功
我用了另外一种方法
MCIWndSendString(h_PlayWnd,"play fullscreen");
绝对可以实现
请问你另外一个关于视频的问题!http://www.csdn.net/Expert/TopicView1.asp?id=749205
Top
6 楼Q_O()回复于 2002-05-25 01:48:46 得分 0
他们说的都是正确的。Top
7 楼hyc1980(???)回复于 2002-05-25 03:12:46 得分 5
可以用directshow做,或者用window mediaplay 控件,调用某个方法我想有的Top
8 楼cvip11(cvip11)回复于 2002-05-25 08:17:15 得分 0
upTop
9 楼programcat2001(旧游以梦)回复于 2002-05-25 08:45:51 得分 5
计算出AVI播放时在视图中的位置,转换成屏幕坐标后,放大到全屏。Top
10 楼jemmylau(枕头)回复于 2002-05-25 14:09:08 得分 0
programcat2001(边城)
请问你知道用什么函数能得到播放的视频的宽度和高度吗?Top
11 楼pale(态度很重要)回复于 2002-05-26 13:19:53 得分 10
//获得视频文件窗口的宽度
int CVideo::GetWidth (void)
{
if (m_bOpened){
MCI_DGV_WHERE_PARMS WhereParms;
if (mciSendCommand (m_wDeviceID, MCI_WHERE, MCI_DGV_WHERE_SOURCE, (DWORD)(LPVOID) &WhereParms)){
return 0;
}
return (int) WhereParms.rc.right;
}
return 0;
}
//获得视频文件窗口的高度
int CVideo::GetHeight (void)
{
if (m_bOpened){
MCI_DGV_WHERE_PARMS WhereParms;
if (mciSendCommand (m_wDeviceID, MCI_WHERE, MCI_DGV_WHERE_SOURCE, (DWORD)(LPVOID) &WhereParms)){
return 0;
}
return (int) WhereParms.rc.bottom;
}
return 0;
}Top
12 楼jemmylau(枕头)回复于 2002-05-26 16:22:39 得分 0
不太明白,能不能解释一下,放到我程序中,全是错误Top
13 楼suzhenhong(一个懂点程序的公务员)回复于 2002-05-26 16:56:58 得分 0
这个问题你可以参考侯先生的<<程序语言>>,很简单Top
14 楼jemmylau(枕头)回复于 2002-05-26 17:29:44 得分 0
我用另外一个方法搞定了
h_PlayWnd=MCIWndCreate(....);
CRect p_rect;
::GetWindowRect(h_PlayWnd,&p_rect);
谢谢
Top
15 楼duwenyong(啸海)回复于 2002-07-27 08:23:10 得分 0
谁知道WMP的全屏是如何实现的?为何全屏后没有马赛克?用什么算法?是不是微软还内置什么不让你知的函数?Top




