VIDEOINFO (Compact 2013)

3/26/2014

This structure describes the bitmap and color information for a video image.

Syntax

typedef struct tagVIDEOINFO {
  RECT rcSource,
  RECT rcTarget,
  DWORD dwBitRate,
  DWORD dwBitErrorRate,
  REFERENCE_TIME AvgTimePerFrame;
  BITMAPINFOHEADER bmiHeader;
  union {
    RGBQUAD bmiColors[iPALETTE_COLORS];
    DWORD dwBitMasks[iMASK_COLORS];
    TRUECOLORINFO TrueColorInfo;
  };
} VIDEOINFO;

Members

  • rcSource
    Portion of the input video to use.
  • rcTarget
    Where the video should be displayed.
  • dwBitRate
    Approximate bit data rate.
  • dwBitErrorRate
    Bit error rate for this stream.
  • AvgTimePerFrame
    Average time per frame, in 100-nanosecond units.
  • bmiHeader
    Win32 BITMAPINFOHEADER structure that contains color and dimension information for a device-independent bitmap.
  • bmiColors[iPALETTE_COLORS]
    Array of Win32 RGBQUAD that specifies the video's color palette.

    Each structure represents a single color, which is a combination of red, green, and blue intensities.

  • dwBitMasks[iMASK_COLORS]
    Array of DWORD values that specify true color bitmasks.
  • TrueColorInfo
    TRUECOLORINFO structure that contains both a color palette and an array of color bitmasks.

Remarks

Never use this structure unless you are sure that you will use it only to store standard RGB formats.

If you store anything other than standard RGB, the variable size of the bmiHeader member will almost certainly cause problems.

Instead, use the VIDEOINFOHEADER structure.

If for some reason you find it necessary to use the VIDEOINFO structure, do not access TrueColorInfo, dwBitMasks, and bmiColors directly; use the TRUECOLOR, COLORS, and BITMASKS macros to return the pointers to the color information.

The first five data members are equivalent to a VIDEOINFOHEADER structure. They are expanded in full to reduce the amount of dereferencing needed when dealing with a pointer to a VIDEOINFO structure.

Which of the TrueColorInfo, dwBitMasks, and bmiColors members is valid depends on the contents of the BITMAPINFOHEADER structure.

Requirements

Header

dshow.h

Library

Strmiids.lib

See Also

Reference

DirectShow Structures