I also reproduced the case in GraphEdit application: I can create a
graph where one AVI is rendered through infinite pin tee filter to 10+
video renderers. When I run the graph I have again 9 to 11 windows
shown with first frame but the next renderer trying to show first frame
would abort the run with AFAIR VFW_E_STATE_CHANGED.
It also seems that it depends on resolution and maybe pixel format
because rendering other streams I may have the failure starting at 7th
renderer already. I checked that there is enough free video memory (32
out of 128 megs are in use at the moment of error) and what is also
interesting I can have 2 or more applications showing these 10 videos
simultaneously but starting new video renderer would fail in any of
these running applications.
If I use Video Mixing Renderer (VMR of DirectX 7) instead of VMR9 I
don't have the issue, everything runs well. Previously I was using old
Video Renderer and there was never a problem of that kind with it too.
Is this problem hardware specific, did anyone happen to have a similar
problem?
Roman
> also reproduced the case in GraphEdit application: I can create a
> graph where one AVI is rendered through infinite pin tee filter to 10+
> video renderers. When I run the graph I have again 9 to 11 windows
> shown with first frame but the next renderer trying to show first frame
> would abort the run with AFAIR VFW_E_STATE_CHANGED.
>
> It also seems that it depends on resolution and maybe pixel format
> because rendering other streams I may have the failure starting at 7th
> renderer already. I checked that there is enough free video memory (32
> out of 128 megs are in use at the moment of error) and what is also
> interesting I can have 2 or more applications showing these 10 videos
> simultaneously but starting new video renderer would fail in any of
> these running applications.
...
>
> Is this problem hardware specific, did anyone happen to have a similar
> problem?
There have been a number of reports in the past about limits with the VMR9.
Sometimes 8 instances sometimes more. It is hardware dependent and it
doesn't seem specifically to be video memory being exhausted. AFAIK, there
is no document that details this requirement so your best bet is to try it
with a range of cards you plan to support.
At one point someone offered to write a test program and provide the source
/ vs project here so that the regulars here could post info on it but it
did not happen.
--
Please read this before replying:
1. Dshow & posting help: http://tmhare.mvps.org/help.htm
2. Trim & respond inline (please don't top post or snip everything)
3. Benefit others: follow up if you are helped or you found a solution
http://blog.luxriot.com/wp-content/uploads/2006/05/MultiVmr01.zip
The output is as follows:
===
Creating IGraphBuilder with E:\WINXP\clock.avi media file rendered 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 0x80040217
The broken filter graph is added to ROT, toggle Scroll Lock to exit
===
There is no problem if CLSID_VideoMixingRenderer is used instead.
Roman
> This is a small C++ project (source and binary included) that
> reproduces the problem on Windows XP Pro SP2, DirectX 9.0c, Intel D915
> GEV motherboard with Intel Graphics Media Accelerator 900 video
> adapter.
Thanks for posting this Roman.
What is your graphics card?
Manufacturer
Model
Graphics memory
PCI/PCIe/AGP/Onboard
Driver version
This is Intel D915 GEVL motherboard with onboard video card (there is
also PCIe slot there but it's empty), the driver is the latest from
Intel's website (GFX_XP_MCE_2K_14.19.50.4497_PV.ZIP), 128 megabytes of
video memory (over 90 megs is free at the moment the problem occurs)
Roman