写一个Transform Filter碰到的问题(2)

HRESULT CheckTransform(const CMediaType *mtIn,const CMediaType *mtOut)
{

..
memcmp(&pInput->bmiHeader,&pOutput->bmiHeader,sizeof(BITMAPINFOHEADER); //算正解吧 呵呵

}

 

CheckTransform第一次调用时

pInput->bmiHeader和pOutput->bmiHeader 内容是一样的

但再次进来就变了 是biWidth biHeight biSizeImage这三个成员会变

应该是下一级filter的input pin修改的  (这里下面就是Video Render了)

学到什么了呢?  熟悉directshow的工作模式 尽量理解它的方式 而不能想当然

你可能感兴趣的:(filter,input,video,工作)