FrameFilterImpl

To implement a transform filter, you have to derive from this class.

FrameFilterImpl and FrameUpdateFilterImpl

FrameFilterImpl-derived filters copy image data in their transform method from a source to a destination frame.

FrameUpdateFilterImpl-derived filters can analyze and modify a single buffer that is presented to them in updateInPlace.

Depending on your task, it is better to either derive from FrameFilterImpl or from FrameUpdateFilterImpl.

Implementation

To get a working transform filter, you do at least have to implement:

To customize the behavior of the filter, you can also override:

To add a dialog box to your transform filter, you have to override methods from IFrameFilter:

To register parameters that can be queried and modified using IFrameFilter::getAvailableParameters, IFrameFilter::setParameter and IFrameFilter::getParameter, use

To derive from FrameFilterImpl, use the name of your derived class as a template parameter:

class MyFilter
    :   public DShowLib::FrameFilterImpl<MyFilter>
{
    // ...
};

Every class derived from FrameFilterImpl has to have a static method getStaticFilterInfo, returning a FilterInfo structure containing information about the filter:

public:
    // FrameFilterImpl implementation
    static    DShowLib::FilterInfo getStaticFilterInfo();

See Writing a Frame Filter: Binarization to see how to implement that method.

Information

    Header File: tisudshl.h
    Namespace: DShowLib
    Introduced in version 3.0

Inheritance

    IFrameFilter
            FrameFilterImpl
                    FrameUpdateFilterImpl

Methods

Method Description
addBoolParam

Registers a boolean parameter than can be accessed using the methods of IFrameFilter.

addDataParam

Registers a data parameter than can be accessed using the methods of IFrameFilter.

addFloatParam

Registers a float parameter than can be accessed using the methods of IFrameFilter.

addLongParam

Registers a long (integer) parameter than can be accessed using the methods of IFrameFilter.

addStringParam

Registers a string parameter than can be accessed using the methods of IFrameFilter.

checkInputType

Determines whether a specific input type is supported by the filter.

checkTransformTypes

Determines whether a specific conversion is supported by the filter.

getSupportedInputTypes

This method is called to request the types which this transform filter supports as input types.

getTransformOutputTypes

This method is called to request the possible output types.

notifyStart

This method is called when the transformation process (live mode) is started.

notifyStop

This method is called when the transformation process (live mode) is stopped.

transform

This method is called when a frame must be transformed or copied from the source to the destination IFrame.

<< Classes