Visual c++ 更改过滤器的渲染大小会显示错误 我尝试用C++ DirectShow制作我的应用程序中的一些东西 我想将默认渲染大小(驱动程序campture大小)从640x480更改为640x480 但它告诉我这个尺寸不可用 但在amcap中它是如何工作的?? 我尝试使用mediaControl->stop()停止渲染但它似乎不起作用 这是一个屏幕截图
你可以在我的博客上找到更多关于它的信息 好的,我在这里添加了一些代码Visual c++ 更改过滤器的渲染大小会显示错误 我尝试用C++ DirectShow制作我的应用程序中的一些东西 我想将默认渲染大小(驱动程序campture大小)从640x480更改为640x480 但它告诉我这个尺寸不可用 但在amcap中它是如何工作的?? 我尝试使用mediaControl->stop()停止渲染但它似乎不起作用 这是一个屏幕截图 ,visual-c++,directshow,Visual C++,Directshow,你可以在我的博客上找到更多关于它的信息 好的,我在这里添加了一些代码 hr=pConfig->QueryInterface(IID_ISpecifyPropertyPages,(void**) &pSpec);//," page "); if(SUCCEEDED(hr)) { hr=pSpec->GetPages(&cauuid); if( SUCCEEDED(hr) && cauuid
hr=pConfig->QueryInterface(IID_ISpecifyPropertyPages,(void**) &pSpec);//," page ");
if(SUCCEEDED(hr))
{
hr=pSpec->GetPages(&cauuid);
if( SUCCEEDED(hr) && cauuid.cElems>0){
this->releaseRender();
checkIt( OleCreatePropertyFrame(this->owner, 30, 30, NULL, 1,
(IUnknown **)&pConfig, cauuid.cElems,
(GUID *)cauuid.pElems, 0, 0, NULL),"stuff ");
CoTaskMemFree(cauuid.pElems);
}
但当我点击“想改变什么”时,它会说你不能做这件事
我正在使用类似IbaseFilter的源筛选器,我已尝试从中删除此筛选器
iGraphBuilder
this->graphB->RemoveFilter(this->srcFilter);
您需要提供更多信息和代码示例,然后有人才能帮助您!您使用的屏幕捕获过滤器是什么?您是如何尝试更改渲染大小的?通常,只有在源过滤器未连接的情况下才能执行此操作!在编写一些FilterGraph代码之前,请尝试使用GrapherEdit或手动执行操作。使用这些工具所能做的一切都可以通过代码来完成,它们有助于理解使用DirectShow框架的过程