DanDaniel123123 - 2013-02-28

I want to implement a filter with 2 outputs, which gets a video and 1st output is BW video and the second output is a float (angle).

The 1st output (BW) I already implemented (base on ezrgb24 filter) which transfer the outpu

I implement filter base on ezrgb24 filter. I want to add another output (only a float).

This is the code that I changed.

:::C++
const AMOVIESETUP_MEDIATYPE sudPinTypes =
{
&MEDIATYPE_Video, // Major type
&MEDIASUBTYPE_NULL // Minor type
};

const AMOVIESETUP_MEDIATYPE sudPinTypes1 =
{
&MEDIATYPE_Text,
&MEDIASUBTYPE_NULL

};

const AMOVIESETUP_PIN sudpPins[] =
{
{ L"Input", // Pins string name
FALSE, // Is it rendered
FALSE, // Is it an output
FALSE, // Are we allowed none
FALSE, // And allowed many
&CLSID_NULL, // Connects to filter
NULL, // Connects to pin
1, // Number of types
&sudPinTypes // Pin information
},
{ L"Output", // Pins string name
FALSE, // Is it rendered
TRUE, // Is it an output
FALSE, // Are we allowed none
TRUE, // And allowed many
&CLSID_NULL, // Connects to filter
NULL, // Connects to pin
1, // Number of types
&sudPinTypes1 // Pin information
},
{ L"Output_Slope", // Pins string name
FALSE, // Is it rendered
TRUE, // Is it an output
FALSE, // we are not allowed none
TRUE, // And allowed many
&CLSID_NULL, // Connects to filter
NULL, // Connects to pin
1, // Number of types
&sudPinTypes // Pin information
}
};

const AMOVIESETUP_FILTER sudMyFilter =
{
&CLSID_myFilter, // Filter CLSID
L"Bitmap Filter", // String name
MERIT_DO_NOT_USE, // Filter merit
3, // Number of pins
sudpPins // Pin information
};

// List of class IDs and creator functions for the class factory. This
// provides the link between the OLE entry point in the DLL and an object
// being created. The class factory will call the static CreateInstance

CFactoryTemplate g_Templates[] = {
{ L"Bitmap Filter"
, &CLSID_myFilter
, myFilter::CreateInstance
, NULL
, &sudMyFilter }
//,
// { L"my filter 3"
// , &CLSID_myFilterPropertyPage
// , myFilterProperties::CreateInstance }
};

In addition I changed: HRESULT myFilter::Transform(IMediaSample *pMediaSample) according to the filter I want.

How can I access the 2nd output pin?

Thank you!