MFC下实现了用directshow显示视频画面,但是要怎么保存起来??? 我研究了好久directshow,终于在MFC对话框显示了视频画面,现在很想知道要怎么把这些视频画面保存到指定的文件里????怎么保存起来。求救求救,在线等,急急急 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 DirectShow教程自己看第四章节 IGraphBuilder *pGraph;ICaptureGraphBuilder2 *pBuild;IBaseFilter* pSrc;IMediaControl *m_pMediaControl;IBaseFilter *vedioWriter;HRESULT hr;CoCreateInstance(CLSID_FilterGraph, NULL, CLSCTX_INPROC, IID_IGraphBuilder, (void**)&pGraph);hr = CoCreateInstance(CLSID_CaptureGraphBuilder2, NULL,CLSCTX_INPROC_SERVER, IID_ICaptureGraphBuilder2, (void**)&pBuild);pBuild->SetFiltergraph(pGraph);pGraph->QueryInterface(IID_IVideoWindow, (void **)&m_pVidWin);ICreateDevEnum *pDevEnum=NULL;IEnumMoniker *pClsEnum=NULL;//创建设备枚举COM对象CoCreateInstance(CLSID_SystemDeviceEnum,NULL,CLSCTX_INPROC,IID_ICreateDevEnum,(void **)&pDevEnum);//创建视频采集设备枚举COM对象pDevEnum->CreateClassEnumerator(CLSID_VideoInputDeviceCategory,&pClsEnum,0);if(pClsEnum == NULL){MessageBox(_T("Sorry, you have no video capture hardware.\r\n\r\nVideo capture will not function properly."));//如果没有设备,返回return FALSE;}IMoniker *pMoniker = NULL;if(pClsEnum->Next(1,&pMoniker,NULL)==S_OK){//调用imoniker::bindtoobject建立一个和选择的device联合的filterpMoniker->BindToObject(0,0,IID_IBaseFilter,(void **)&pSrc);pMoniker->Release();}//将设备添加到管理器graphhr = pGraph->AddFilter(pSrc, L"Video Capture");hr=pBuild->RenderStream(&PIN_CATEGORY_CAPTURE,&MEDIATYPE_Video,pSrc,NULL,NULL);//设定视频窗口为主窗口的一个子窗口m_pVidWin->put_Owner((OAHWND)m_hWnd);m_pVidWin->put_WindowStyle(WS_CHILD | WS_CLIPSIBLINGS | WS_CLIPCHILDREN);CRect rc;GetDlgItem(IDC_BUTTON2)->GetWindowRect(rc);ScreenToClient(rc);//设定视频窗口m_pVidWin->SetWindowPosition(rc.left, rc.top, rc.Width(), rc.Height());hr=pGraph->QueryInterface(IID_IMediaControl, (void **)&m_pMediaControl);hr=m_pMediaControl->Run(); //运行Filter Graphif(FAILED(hr)){MessageBox(_T("加载运行失败!"));return FALSE;}大神求救啊,我已经做到打开视频,并且也有画面了,但是我愣是不知道要在哪里保存录制的视频??或者说怎么开始录制视频,,它根本没开始录制,也没存,,,只是有画面了。 http://read.pudn.com/downloads155/ebook/688263/win32/CameraDemo/CameraDemo/EricCamera.cpp__.htm参考下这里,不知道行不行,然后下面红色的是路径//14,创建ASF多路(复用)器,并加入到过滤器图中 CHK(m_pCaptureGraphBuilder->SetOutputFileName( &MEDIASUBTYPE_Asf,strFileName, &pASFMultiplexer, &pFileSinkFilter )); 如果做毕业设计的话强烈建议楼主改用opcv的库,这样只需研究算法。 串口打开失败 visual C++2008 MFC中如何使用自己写的类? [转帖]据说是笑倒6亿人的笑话 请帮忙看看下面服务中的createwindow yu_hl(卖柴火的小男孩)请进,有问题求教!谢谢! WindowsNT Service的写法!(抄的) 用Win32编程 函数,源代码文件怎么安排? MFC建立的三种dll有何区别?(80分) 如何用vc写编辑mp3 得tags信息程序 求几个比较好的代码论坛 这十几年编程的不同认知层次——摘自聊天记录
//14,创建ASF多路(复用)器,并加入到过滤器图中
CHK(m_pCaptureGraphBuilder->SetOutputFileName( &MEDIASUBTYPE_Asf,strFileName, &pASFMultiplexer, &pFileSinkFilter ));