Microsoft DirectX 8.1 (C++) |
The IAMVideoAccelerator interface enables a video decoder filter to access video accelerator functionality. The Video Mixing Renderer’s input pins support this interface, and so does pin 0 on the Overlay Mixer. If a video decoder filter calls methods on this interface, the decoder should support the IAMVideoAcceleratorNotify interface on its output pin. Applications should not call methods on this interface. For more information on how to use this interface, see IAMVideoAccelerator Operation in DirectX VA.
Note This interface is available in Microsoft® Windows® 2000.
The sequence of events for connecting the video decoder filter is as follows:
To support dynamic format changes, this sequence can also occur while the filters are connected and running.
During operation, the video decoder performs the following steps.
Before locking a buffer with the GetBuffer method, the video decoder should verify that any decompression operations that update that buffer are complete. After using the Execute method to send buffers of data to the accelerator, the QueryRenderStatus ethod can be called for a sent buffer to determine whether an operation is complete. imilarly for DisplayFrame, the video decoder must check that all decompression operations that update that frame are complete.
Requirements
Requires Videoacc.h.
In addition to the methods inherited from IUnknown, the IAMVideoAccelerator interface exposes the following methods.
Method | Description |
GetVideoAcceleratorGUIDs | Retrieves a list of the GUIDs for the video accelerator formats accepted. |
GetUncompFormatsSupported | Retrieves a list of pixel formats that can be used to render a specified video accelerator format. |
GetInternalMemInfo | Retrieves information about the uncompressed data memory requirements, based on the video accelerator GUID, the uncompressed size, and the pixel format. |
GetCompBufferInfo | Retrieves compressed buffer information. |
GetInternalCompBufferInfo | Called after the pins are connected, retrieving compressed buffer information given the connected type. |
BeginFrame | Begins frame processing. |
EndFrame | Ends frame processing and passes miscellaneous data to the video accelerator driver. |
GetBuffer | Retrieves the compressed buffer of a specified index and type. |
ReleaseBuffer | Releases a compressed buffer after processing. |
Execute | Performs a decompression operation. |
QueryRenderStatus | Queries the processing status of a data buffer. |
DisplayFrame | Displays a decoded frame. |