Important:
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.
A version of this page is also available for
4/8/2010

This interface provides an upstream filter, such as a decoder, with notifications of changes to the rendering window. This includes notifications of changes to the palette, color key, and window position, and visible region (clipping) changes.

Most software video decoders let the video renderer draw the decompressed images they produce by passing the media samples to the IMemInputPininterface on the renderer's input pin.

However, some video decoding filters (typically hardware decompression boards) handle the drawing of the images themselves, perhaps by using a VGA connector.

These filters do not need to use IMemInputPin, but can instead use the IOverlayinterface provided by the renderer input pin. Through this interface, the decoder can be notified when the window position or size changes, or when the current system palette changes in order to install and change color keys and palettes.

When to Implement

To get notifications of when the window size or position changes, when the current system palette changes, or when a different color key is used, decoders that do their own drawing should implement an IOverlayNotifyinterface.

A pointer to this interface can then be passed to the IOverlayinterface on the renderer's input pin, through the IOverlay::Advisemethod, to set up an advise link (essentially a callback mechanism).

After the advise link is established, the renderer calls the decoder's IOverlayNotifymethods when the appropriate events occur.

An advise link can be canceled by calling IOverlay::Unadvise.

When to Use

The video renderer is the only filter that calls the methods on this interface. This is done by the default video renderer. If you are writing a replacement video renderer, you must use the methods on this interface if your filter supports IOverlayand this interface is passed to your filter in an IOverlay::Advisecall.

Methods in Vtable Order

The following table shows the methods that appear in the Vtable beneath the standard COM methods inherited from IUnknown.

Method Description

OnPaletteChange

Provides notification that the palette of the window has changed.

OnClipChange

Provides notification that the visible region of the window has changed.

OnColorKeyChange

Provides notification that the chroma key has changed.

OnPositionChange

Provides notification that the position has changed.

Requirements

Windows Embedded CE Windows CE 2.12 and later
Windows Mobile Pocket PC for Windows Mobile Version 5.0 and later, Smartphone for Windows Mobile Version 5.0 and later
Note Microsoft DirectShow applications and DirectShow filters have different include file and Library requirements
For more information, see Setting Up the Build Environment

See Also