Microsoft DirectX 8.1 (C++)

IFullScreenVideo Interface

The IFullScreenVideo interface is implemented on the Full Screen Renderer filter. The filter graph manager uses the Full Screen Renderer to render full-screen video on systems with older graphics cards that cannot quickly stretch a 320x240 video to 1024x768. To overcome this hardware limitation, the Full Screen Renderer simply switches the graphics display card into 320x240 mode. Newer video cards can stretch the display quickly enough to permit the Video Renderer filter to be used for both windowed and full-screen modes. The display goes into full-screen mode when an application calls IVideoWindow::put_FullScreenMode and returns to normal window playback when the user presses the Escape key.

When connected, the Full Screen Renderer loads the display modes that are available. This number of modes available can be obtained through IFullScreenVideo::CountModes. Information on each individual mode is then available by calling IFullScreenVideo::GetModeInfo and IFullScreenVideo::IsModeAvailable. An application can enable and disable any mode by calling the IFullScreenVideo::SetEnabled method. The current value can be queried by calling IFullScreenVideo::IsModeEnabled. An application can enable or disable any mode by calling the IFullScreenVideo::SetEnabled flag with OATRUE or OAFALSE (not C/C++ TRUE and FALSE values).

The Full Screen Renderer can function only when it is the foreground active window. If the user tries to switch to another application while in full-screen mode, the video will be hidden. The Full Screen Renderer does this by minimizing the window it is actually drawing the video in (although the use of a window is transparent to the user). Maximizing the window restores the video.

In addition to the methods inherited from IUnknown, the IFullScreenVideo interface exposes the following methods.

Method Description
GetCurrentMode Retrieves the video mode currently in effect.
IsModeAvailable Determines if a specified video mode is available.
IsModeEnabled Determines if a specified video mode is enabled.
SetEnabled Enables and disables video modes.
GetClipFactor Retrieves the current clip loss factor setting.
SetClipFactor Specifies the video mode based on the maximum image area that will be lost.
SetMessageDrain Specifies a window that will receive window messages sent to the renderer.
GetMessageDrain Retrieves the window set to receive window messages sent to the renderer.
SetMonitor Sets the monitor in use (for use with multiple-monitor implementations).
GetMonitor Retrieves the monitor in use.
HideOnDeactivate Hides the window when it is deactivated.
IsHideOnDeactivate Retrieves the state of the HideOnDeactivate property.
SetCaption Sets the caption associated with the full-screen window.
GetCaption Retrieves the caption associated with the full-screen window.
SetDefault Sets the default for all full-screen video renderer properties.