Re: Direcshow problems with WMV9 Decoder for XP platform



How do I transmit the syncpoint flag? By using IMediaSample::SetSyncPoint??
Will this modify the actual encoded stream for the decoder to read?

Note that this scenario was working with a DIVX decoder/encoder (in that
scenario a laptop was used and not a mobile).

Thanks,
Kris

"Alessandro Angeli" wrote:

From: "Kris"

I am very green to all this. I do not think I am doing
this? what is a keyframe?

Compressed frames can be decoded on their own (keyframes) or
require other frames to be decoded (delta frames). Decoding
can only start on a keyframe boundary. IMediaSamples have
some metadata attached to them:

- start and stop times (IMediaSample::GetTime(), not
IMediaSample::GetMediaTime())
- syncpoint, preroll and discontinuity flags (syncpoint ==
splicepoint == cleanpoint == keyframe == I-picture)

To properly decode the samples, you need to at least
transmit the syncpoint flag. You should also keep the
preroll and discontinuity flags (but it is unlikely you are
going to see those in your scenario). To keep
synchronization with other streams (if any) you should also
keep the timestamps.

Also is there a way to set DEBUG trace on the DMOs?

No.

--
// Alessandro Angeli
// MVP :: DirectShow / MediaFoundation
// mvpnews at riseoftheants dot com
// http://www.riseoftheants.com/mmx/faq.htm



.