Re: Decoding Rate vs Playback Rate
- From: Lee_Nover <Lee_Nover@xxxxxxxxxxxxx>
- Date: Sat, 24 Mar 2007 14:05:14 +0100
Anyway, if you measure time from when you finish displaying frame 1
and the time you finish displaying frame 2, you will get a
uncharacteristically short result, as you are gaining the maximum
advantage from this preroll computation. Perhaps a better benchmark
would be to measure from a known keyframe that is far enough into the
clip as to minimize this "running start" effect.
I'm not 100% certain but that's not it
in my experience and from docs on MSDN this is due to the fact how the renderer handles samples
usually the downstream filter provides the buffer allocator and only a limited amount of buffers
when those buffers are all used up, the allocators GetBuffer blocks until there's an available buffer
the renderer can hold on to the samples (in the input pin's Receive method) until they're rendered or copying them and returning the sample immediately
I guess here the first thing happens; the samples are held until rendered
it looks like the allocator has 2 buffers, you can check that with Allocator.GetProperties (get the allocator from Pin(IMemInputPin).GetAllocator)
to test the performance you should instead create a null renderer filter and count the samples in Receive method
there's an example in the SDK
.
- Follow-Ups:
- Re: Decoding Rate vs Playback Rate
- From: Jamie Faye Fenton
- Re: Decoding Rate vs Playback Rate
- From: rep_movsd
- Re: Decoding Rate vs Playback Rate
- References:
- Re: Decoding Rate vs Playback Rate
- From: Jamie Faye Fenton
- Re: Decoding Rate vs Playback Rate
- Prev by Date: Re: Capture Graph with VMR9 in Windowless mode
- Next by Date: Re: Decoding Rate vs Playback Rate
- Previous by thread: Re: Decoding Rate vs Playback Rate
- Next by thread: Re: Decoding Rate vs Playback Rate
- Index(es):
Relevant Pages
|