Multiple Video Mixing Renderer 9 filters problem (sample code)
There see to be an unexpected failure trying to use multiple video mixing renders. The sample project reproduces the problem on Intel D915 GEV series motherboard machine with integrated Intel Graphics Media Accelerator 900 video adapter (Windows XP Pro, Service Pack 2, DirectX 9.0c).
The application renders clock.avi flic several times duplicating the stream through Infinite Pin Tee filter. The typical output is:
Creating IGraphBuilder with E:\WINXP\clock.avi media file renderer 15 times…
Enumerating filters…
Filter 1: CLSID {79376820-07D0-11CF-A24D-0020AFD79767}, Name “Default DirectSound Device”
Filter 2: CLSID {B87BEB7B-8D29-423F-AE4D-6582C10175AC}, Name “Video Renderer”
Filter 3: CLSID {6A08CF80-0E18-11CF-A24D-0020AFD79767}, Name “ACM Wrapper”
Filter 4: CLSID {1643E180-90F5-11CE-97D5-00AA0055595A}, Name “Color Space Converter”
Filter 5: CLSID {CF49D4E0-1115-11CE-B03A-0020AF0BA770}, Name “AVI Decompressor”
Filter 6: CLSID {1B544C20-FD0B-11CE-8C63-00AA0044B51E}, Name “AVI Splitter”
Filter 7: CLSID {E436EBB5-524F-11CE-9F53-0020AF0BA770}, Name “E:\WINXP\clock.avi”
Automatically added Color Space Converter filter removed
Video Renderer 1 added
Video Renderer 2 added
Video Renderer 3 added
Video Renderer 4 added
Video Renderer 5 added
Video Renderer 6 added
Video Renderer 7 added
Video Renderer 8 added
Video Renderer 9 added
Video Renderer 10 added
Video Renderer 11 added
Video Renderer 12 added
Failed to create filter graph, error 0×80040217
The broken filter graph is added to ROT, toggle Scroll Lock to exit
Should the renderer be changed to Video Mixing Rederer (of DirectX 7), the graph is created properly and is runnable.
Download source code (VC++.NET 2003 project) and compiled binary (ZIP, 29K)
See also: related Google Groups discussion