Full Screen Renderer Filter
[The feature associated with this page, DirectShow, is a legacy feature. It has been superseded by MediaPlayer, IMFMediaEngine, and Audio/Video Capture in Media Foundation. Those features have been optimized for Windows 10 and Windows 11. Microsoft strongly recommends that new code use MediaPlayer, IMFMediaEngine and Audio/Video Capture in Media Foundation instead of DirectShow, when possible. Microsoft suggests that existing code that uses the legacy APIs be rewritten to use the new APIs if possible.]
The Full Screen Renderer filter provides full-screen video rendering on older hardware. Newer video cards can stretch the video efficiently enough that the Full Screen Renderer is not required. Therefore, the use of this filter is now deprecated.
Do not manually add this filter to the filter graph. If an application calls IVideoWindow::put_FullScreenMode, the Filter Graph Manager automatically selects the appropriate video renderer for full-screen mode. The selection is transparent to the application. With current video cards, the Filter Graph Manager is unlikely to select the Full Screen Renderer.
Label | Value |
---|---|
Filter Interfaces | IBaseFilter, IFullScreenVideoEx, IMediaPosition, IMediaSeeking, IQualityControl, IQualProp |
Input Pin Media Types | MEDIATYPE_Video, MEDIASUBTYPE_Null |
Input Pin Interfaces | IMemInputPin, IPin, IQualityControl |
Output Pin Media Types | Not applicable |
Output Pin Interfaces | Not applicable |
Filter CLSID | CLSID_ModexRenderer |
Property Page CLSID | CLSID_ModexProperties |
Executable | quartz.dll |
Merit | MERIT_UNLIKELY |
Filter Category | CLSID_LegacyAmFilterCategory |
Remarks
The Full Screen Renderer supports a static set of display modes. The video card on the user's system might not support every mode, however. To determine whether the card supports a particular mode, call the IFullScreenVideoEx::IsModeAvailable method. You can also disable a particular display mode programmatically, by calling the IFullScreenVideoEx::SetEnabled. The Full Screen Renderer currently supports the display modes shown in the following table:
Mode | Width | Height | Bit depth |
---|---|---|---|
0 | 320 | 200 | 16 |
1 | 320 | 200 | 8 |
2 | 320 | 240 | 16 |
3 | 320 | 240 | 8 |
4 | 640 | 400 | 16 |
5 | 640 | 400 | 8 |
6 | 640 | 480 | 16 |
7 | 640 | 480 | 8 |
8 | 800 | 600 | 16 |
9 | 800 | 600 | 8 |
10 | 1024 | 768 | 16 |
11 | 1024 | 768 | 8 |
12 | 1152 | 864 | 16 |
13 | 1152 | 864 | 8 |
14 | 1280 | 1024 | 16 |
15 | 1280 | 1024 | 8 |
(All modes are RGB.) This list is subject to change, however. Use the IFullScreenVideoEx::GetModeInfo method to get information about the modes. The Full Screen Renderer always chooses the lowest-resolution mode available, limited by a property called the clip factor, which determines how much of the video the Full Screen Renderer is allowed to clip. For more information, see IFullScreenVideoEx::GetClipFactor.
When the application runs or pauses the filter graph, the Full Screen Renderer switches to the display mode that was chosen. When the graph stops, the Full Screen Renderer restores the original display mode.
The Full Screen Renderer can function only as the foreground active window. If the user switches to another application, the Full Screen Renderer hides the video by minimizing or hiding the video window.
Related topics