VLC+ACTIVEX全屏无效,忘各位大神指点,多谢!
如题,大体代码如下:
ShowWindow(SW_SHOWMAXIMIZED);
CRect rc;
GetClientRect(rc);
//CSize paneSize(rc.Width()/2,rc.Height()/2);
int d=30;
pvlc1 = new CVLCControl2();
pvlc1->Create("vlc show",SW_SHOW,CRect(0,d,rc.Width()/2,((rc.Height()-d)/2)+d),this,1);
pvlc1->ShowWindow(SW_SHOWNORMAL );
pvlc1->SetVisible( true );
BSTR option = SysAllocString(L":vout-filter=deinterlace :deinterlace-mode=mid");
BSTR name = SysAllocString(L"vlc show");
VARIANT va;
va.vt=VT_BSTR;
VariantInit(&va);
va.bstrVal = option;
VARIANT vn;
vn.vt=VT_BSTR;
VariantInit(&vn);
vn.bstrVal = name;
video1 = pvlc1->GetPlaylist();
video1.add(str1, va, vn);
video1.play();
CVLCVideo video;
video = pvlc1->GetVideo();
video.SetFullscreen(video.GetFullscreen()?false:true);
if(video.GetFullscreen()){
AfxMessageBox("true");
}else{
AfxMessageBox("false");
}
顺便再问一下,用以下函数重新连接流显示视频有什么问题,我的并没有成功
BOOL CVCL1Dlg::RePlay(CVLCPlaylist video,CString str){
if(video!=NULL&&str!=NULL){
video.stop();
BSTR option = SysAllocString(L":vout-filter=deinterlace :deinterlace-mode=mid");
BSTR name = SysAllocString(L"vlc show");
VARIANT va;
va.vt=VT_BSTR;
VariantInit(&va);
va.bstrVal = option;
VARIANT vn;
va.vt=VT_BSTR;
VariantInit(&va);
va.bstrVal = name;
video.add(str, va, vn);
video.play();
return true;
}
return false;
}