首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 媒体动画 > 多媒体 >

directshow不要编码filter能不能直接捕获视频保存为文件

2013-01-07 
directshow不用编码filter能不能直接捕获视频保存为文件?在写一个视频捕获程序~~使用的是directshow~~预览

directshow不用编码filter能不能直接捕获视频保存为文件?
在写一个视频捕获程序~~使用的是directshow~~
预览可以了,但是在捕获保存为文件时出问题了~~



   HRESULT hr;
   IBaseFilter *pMux;
   hr = pBuild->SetOutputFileName(
       &MEDIASUBTYPE_Avi, // Specifies AVI for the target file.
       L"K:\\Example.avi", // File name.
       &pMux, // Receives a pointer to the mux.
       NULL); // (Optional) Receives a pointer to the file sink.
   if (FAILED(hr))
   {
       AfxMessageBox("´´½¨graphʧ°Ü");
           return hr;    
   }
   hr = pBuild->RenderStream(
       &PIN_CATEGORY_CAPTURE, // Pin category.
       &MEDIATYPE_Video, // Media type.
       pVideoCap, // Capture filter.
       NULL, // Intermediate filter (optional).
       pMux); // Mux or file sink filter.
   if (FAILED(hr))
   {
       AfxMessageBox("ÊÓƵдÈëÎļþʧ°Ü");
           return hr;
   }




这样直接捕获,而没有用编码filter,可以吗?

如果可以的话,为什么我捕获下来的文件都打不开,每次一打开explorer就占用CPU100%?
[解决办法]
这样理论上也是可以的,不过我都是利用avi mux + File write来保存文件的。
可否把你的构建filter graph的代码贴出来看看!

热点排行