FrameUpdateFilterImpl

To implement an update filter, you have to derive from this class.

FrameFilterImpl and FrameUpdateFilterImpl

Filters that are derived from FrameFilterImpl copy image data in their transform method from a source to a destination frame.

Filters that are derived from FrameUpdateFilterImpl 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 update filter, you need to have implemented at least the following:

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 FrameUpdateFilterImpl, use the name of your derived class as a template parameter:

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

Every class derived from FrameUpdateFilterImpl has to have a static method getStaticFilterInfo that returns 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
modifiesData

This method returns whether this frame update callback modifies the presented image data. The default implementation returns true.

updateInPlace

This method is called when a frame can be updated.

<< Classes