protected int ConnectFilters(IBaseFilter filterIn, IBaseFilter filterOut)
{
int hr = -1;
IPin pinOutFromFilterIn = DsFindPin.ByDirection(filterIn, PinDirection.Output, 0);
if (pinOutFromFilterIn != null)
{
IPin pinInFromFilterOut = DsFindPin.ByDirection(filterOut, PinDirection.Input, 0);
if (pinInFromFilterOut != null)
{
hr = this.graphBuilder.Connect(pinOutFromFilterIn, pinInFromFilterOut);
Marshal.ReleaseComObject(pinInFromFilterOut);
}
Marshal.ReleaseComObject(pinOutFromFilterIn);
}
return hr;
}