CVideoTransformFilter::ShouldSkipFrame

Determines if the filter should start, continue, or stop skipping frames.

BOOL ShouldSkipFrame(
  IMediaSample* pIn 
);

Parameters

  • pIn
    Received sample to be transformed or skipped.

Return Values

Returns TRUE if the filter should skip this sample; otherwise, returns FALSE.

Remarks

This member function sets the m_bSkipping member variable to FALSE if the sample is a key frame (sync point) and returns FALSE. This stops any skipping that has started. This member function starts skipping samples (sets m_bSkipping to TRUE and returns TRUE) only if all of the following conditions are true:

  • The average time to decode is more than one-fourth of the frame time.
  • The filter is running at least one frame late.
  • The next anticipated key frame is estimated to be no more than one frame early.
  • The occurrence of key frames is sufficiently frequent.

This member function sends an EC_QUALITY_CHANGE notification when sample skipping starts. Once skipping starts, all samples are skipped until the next key frame arrives.

Requirements

DirectShow applications and DirectShow filters have different include file and link library requirements. See Setting Up the Build Environment for more information.

OS Versions: Windows CE 2.12 and later. Version 2.12 requires DXPAK 1.0 or later.
Header:

Last updated on Wednesday, April 13, 2005

© 2005 Microsoft Corporation. All rights reserved.