DXVAHD_STREAM_STATE_PRIVATE_IVTC_DATA structure (dxvahd.h)

Contains inverse telecine (IVTC) statistics from a Microsoft DirectX Video Acceleration High Definition (DXVA-HD) device.

Syntax

typedef struct _DXVAHD_STREAM_STATE_PRIVATE_IVTC_DATA {
  BOOL Enable;
  UINT ITelecineFlags;
  UINT Frames;
  UINT InputField;
} DXVAHD_STREAM_STATE_PRIVATE_IVTC_DATA;

Members

Enable

Specifies whether IVTC statistics are enabled. The default state value is FALSE. Setting the value to TRUE enables IVTC statistics, and resets all of the IVTC statistical data to zero.

ITelecineFlags

If the driver detects that the frames are telecined, and is able to perform inverse telecine, this field contains a member of the DXVAHD_ITELECINE_CAPS enumeration. Otherwise, the value is 0.

Frames

The number of consecutive telecined frames that the device has detected.

InputField

The index of the most recent input field. The value of this member equals the most recent value of the InputFrameOrField member of the DXVAHD_STREAM_DATA structure.

Remarks

If the DXVA-HD device supports IVTC statistics, it can detect when the input video contains telecined frames. You can use this information to enable IVTC in the device.

To enable IVTC statistics, do the following:

  1. Allocate a DXVAHD_STREAM_STATE_PRIVATE_IVTC_DATA structure and set the Enable member to TRUE.
  2. Initialize a DXVAHD_STREAM_STATE_PRIVATE_DATA structure with these values:
    • Set Guid to DXVAHD_STREAM_STATE_PRIVATE_IVTC.
    • Set DataSize to sizeof(DXVAHD_STREAM_STATE_PRIVATE_IVTC_DATA).
    • Set pData to point to the DXVAHD_STREAM_STATE_PRIVATE_IVTC_DATA structure.
  3. Call the IDXVAHD_VideoProcessor::SetVideoProcessStreamState method. Set the State parameter of that method to DXVAHD_STREAM_STATE_PRIVATE and the pData parameter to the address of the DXVAHD_STREAM_STATE_PRIVATE_DATA structure.
To get the most recent IVTC statistics from the device, call the IDXVAHD_VideoProcessor::GetVideoProcessStreamState method. The state parameter and data buffer are the same.

Typically, an application would use this feature as follows:

  1. Enable IVTC statistics.
  2. Begin sending interlaced video frames to the DXVA-HD device.
  3. At some point, query the device for the current IVTC statistics.
  4. If the device detects telecined frames, use a custom frame rate to perform IVTC. For more information, see DXVAHD_CUSTOM_RATE_DATA.

Requirements

Requirement Value
Minimum supported client Windows 7 [desktop apps only]
Minimum supported server Windows Server 2008 R2 [desktop apps only]
Header dxvahd.h

See also

DXVA-HD

DXVAHD_STREAM_STATE

Direct3D Video Structures

IDXVAHD_VideoProcessor::SetVideoProcessStreamState

Media Foundation Structures