VMRDeinterlaceTech Enumeration

The VMRDeinterlaceTech enumeration type describes the algorithm used for deinterlacing a video stream. The flags are not mutually exclusive; drivers can set a combination of flags.

Syntax

typedef enum VMRDeinterlaceTech {
  DeinterlaceTech_Unknown,
  DeinterlaceTech_BOBLineReplicate,
  DeinterlaceTech_BOBVerticalStretch,
  DeinterlaceTech_MedianFiltering,
  DeinterlaceTech_EdgeFiltering,
  DeinterlaceTech_FieldAdaptive,
  DeinterlaceTech_PixelAdaptive,
  DeinterlaceTech_MotionVectorSteered
} ;

Constants

DeinterlaceTech_Unknown The algorithm is unknown or proprietary.
DeinterlaceTech_BOBLineReplicate The algorithm creates each missing line by repeating the line above it or below it. This method creates jagged artifacts and is not recommended.
DeinterlaceTech_BOBVerticalStretch The algorithm creates the missing lines by vertically stretching each video field by a factor of two. For example, it might average two lines or use a (-1, 9, 9, -1)/16 filter across four lines. Slight vertical adjustments are made to ensure that the resulting image does not "bob" up and down.
DeinterlaceTech_MedianFiltering The algorithm uses median filtering to recreate the pixels in the missing lines.
DeinterlaceTech_EdgeFiltering The algorithm uses an edge filter to create the missing lines. In this process, spatial directional filters are applied to determine the orientation of edges in the picture content. Missing pixels are created by filtering along (rather than across) the detected edges.
DeinterlaceTech_FieldAdaptive The algorithm uses spatial or temporal interpolation, switching between the two on a field-by-field basis, depending on the amount of motion.
DeinterlaceTech_PixelAdaptive The algorithm uses spatial or temporal interpolation, switching between the two on a pixel-by-pixel basis, depending on the amount of motion.
DeinterlaceTech_MotionVectorSteered The algorithm identifies objects within a sequence of video fields. Before it recreates the missing pixels, it aligns the movement axes of the individual objects in the scene to make them parallel with the time axis.

Requirements

   
Header strmif.h (include Dshow.h)

See Also

DirectShow Enumerated Types

VMRDeinterlaceCaps Structure