专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > 多媒体/流媒体开发

Dshow压缩有关问题

发布时间:2011-06-27 19:27:11 文章来源:www.iduyao.cn 采编人员:星星草
Dshow压缩问题
可以实现了采集和保存,可是想把采集同时进行压缩,
以下是个大概的过程,压缩时,调用系统自带的压缩Filter: MJPEG Compressor Filter

C/C++ code

//创建IGraphBuilder
 hr=CoCreateInstance(CLSID_FilterGraph, NULL, CLSCTX_INPROC, IID_IGraphBuilder, (void **)&pGraph2);

 IBaseFilter* vedioWriter=NULL; 
 IBaseFilter* compre=NULL;

//MJPEG Compressor Filter
[color=#FF0000] //创建压缩接口compre
 CoCreateInstance(CLSID_MJPGEnc,NULL,CLSCTX_INPROC,IID_IBaseFilter,(void**)&compre);
 hr = pGraph2->AddFilter(compre, L"CLSID_VideoCompressorCategory");[/color]

 hr=pBuild2->SetOutputFileName(&MEDIASUBTYPE_Avi,FileName,&vedioWriter,&fsFilter);

 hr=pBuild2->RenderStream(&PIN_CATEGORY_CAPTURE,&MEDIATYPE_Video, pSrc_preview,compre,vedioWriter);


 //设定视频窗口为主窗口的一个子窗口
 hr=m_pVidWin->put_Owner((OAHWND)hwnd);//E_NOINTERFACE
 m_pVidWin->put_WindowStyle(WS_CHILD | WS_CLIPSIBLINGS | WS_CLIPCHILDREN);
 //设定视频窗口
 m_pVidWin->SetWindowPosition(left, top, Width,Height);

 hr=m_pMediaControl->Run();    //运行Filter Graph




------解决方案--------------------
LZ的意思是?
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: