VLC+ACTIVEX全屏无效,忘各位大神指点,多谢!

肥六六不会写代码 2016-10-04 09:24:40
如题,大体代码如下:
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;
}

...全文
1136 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
VARIANT vn; va.vt=VT_BSTR; VariantInit(&va); va.bstrVal = name; 这里va改成vn,小失误。但问题依旧。内存溢出

2,275

社区成员

发帖
与我相关
我的任务
社区描述
多媒体/设计/Flash/Silverlight 开发 Flash流媒体开发
社区管理员
  • Flash流媒体开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧