AMVABeginFrameInfo structure (amva.h)

[The feature associated with this page, DirectShow, is a legacy feature. It has been superseded by MediaPlayer, IMFMediaEngine, and Audio/Video Capture in Media Foundation. Those features have been optimized for Windows 10 and Windows 11. Microsoft strongly recommends that new code use MediaPlayer, IMFMediaEngine and Audio/Video Capture in Media Foundation instead of DirectShow, when possible. Microsoft suggests that existing code that uses the legacy APIs be rewritten to use the new APIs if possible.]

The AMVABeginFrameInfo structure contains information for the IAMVideoAccelerator::BeginFrame method.

Syntax

typedef struct _tag_AMVABeginFrameInfo {
  DWORD  dwDestSurfaceIndex;
  LPVOID pInputData;
  DWORD  dwSizeInputData;
  LPVOID pOutputData;
  DWORD  dwSizeOutputData;
} AMVABeginFrameInfo, *LPAMVABeginFrameInfo;

Members

dwDestSurfaceIndex

The zero-based index of the uncompressed destination surface. The number of uncompressed surfaces is specified in the IAMVideoAcceleratorNotify::SetUncompSurfacesInfo method.

pInputData

Pointer to a buffer that contains data for the video accelerator.

This buffer must contain a WORD value that is equal to the value of dwDestSurfaceIndex.

dwSizeInputData

Size, in bytes, of the buffer that pInputData points to. The value must be 2.

pOutputData

Pointer to a buffer that the video accelerator can write to.

This member must be NULL.

dwSizeOutputData

Size, in bytes, of the buffer that pOutputData points to. The value must be zero.

Remarks

The buffer pointed to by pInputData cannot contain pointer values, because their addresses will not be valid in kernel mode, where frame processing occurs.

The video accelerator might not use the same surface memory in two consecutive calls with the same frame index. Therefore, the decoder should not make any assumption about the initial contents of the frame.

Requirements

   
Minimum supported client Windows 2000 Professional [desktop apps only]
Minimum supported server Windows 2000 Server [desktop apps only]
Header amva.h (include Videoacc.h)

See also

DirectShow Structures

IAMVideoAccelerator::BeginFrame