标签:des blog io sp on 2014 log cti amp
函数可以连接任意两个filter
HRESULT ConnectFilters( IBaseFilter *pSrc, IBaseFilter *pDest ) { IPin *pIn = 0; IPin *pOut = 0; IEnumPins *pOutEnum; IEnumPins *pInEnum; PIN_DIRECTION ThisPinDir; HRESULT hr = pSrc->EnumPins( &pOutEnum ); hr = pDest->EnumPins( &pInEnum ); while (pOutEnum->Next( 1, &pOut, NULL) == S_OK ) { hr = pOut->QueryDirection( &ThisPinDir ); while( ThisPinDir==PINDIR_OUTPUT && pInEnum->Next( 1, &pIn, 0 ) == S_OK ) { hr = pIn->QueryDirection( &ThisPinDir ); if( ThisPinDir==PINDIR_INPUT ) { // Try to connect them. hr = pigb->Connect( pOut, pIn); if(SUCCEEDED(hr)) { hr = pOutEnum->Release(); hr = pInEnum->Release(); hr = pIn->Release(); hr = pOut->Release(); return S_OK; } } hr = pIn->Release(); }//end while hr = pInEnum->Reset(); hr = pOut->Release(); }//end while pOutEnum->Reset(); hr = pOutEnum->Release(); hr = pInEnum->Release(); return E_FAIL; }
标签:des blog io sp on 2014 log cti amp
原文地址:http://blog.csdn.net/mao0514/article/details/40512317