PFND3D11_1DDI_VIDEOPROCESSORBLT callback function (d3d10umddi.h)
Performs a video processing operation on one or more input samples and writes the result to a Direct3D surface.
Syntax
PFND3D11_1DDI_VIDEOPROCESSORBLT Pfnd3d111DdiVideoprocessorblt;
HRESULT Pfnd3d111DdiVideoprocessorblt(
D3D10DDI_HDEVICE unnamedParam1,
D3D11_1DDI_HVIDEOPROCESSOR unnamedParam2,
D3D11_1DDI_HVIDEOPROCESSOROUTPUTVIEW unnamedParam3,
UINT unnamedParam4,
UINT unnamedParam5,
const D3D11_1DDI_VIDEO_PROCESSOR_STREAM *unnamedParam6
)
{...}
Parameters
unnamedParam1
hDevice [in]
A handle to the display device (graphics context).
unnamedParam2
hVideoProcessor [in]
A handle to the video processor object that was created through a call to the CreateVideoProcessor function.
unnamedParam3
hOutputView [in]
A handle to the resource for the output view of the video processor. This handle was created through a call to the CreateVideoProcessorOutputView function.
unnamedParam4
OutputFrame [in]
The zero-based index of the output video frame.
unnamedParam5
StreamCount [in]
The number of input streams to process in the array referenced by the pStream parameter.
unnamedParam6
pStream [in]
A pointer to an array of D3D11_1DDI_VIDEO_PROCESSOR_STREAM structures that contain information about the input streams.
Return value
VideoProcessorBlt returns one of the following values:
Return code | Description |
---|---|
S_OK | The video processing operation completed successfully. |
E_OUTOFMEMORY | Memory was not available to complete the operation. |
Remarks
The VideoProcessorBlt performs all of the video processing based on the stream states and bit-block transfer (bitblt) states that have been previously set.
The Microsoft Direct3D runtime performs the following data validation before it calls the driver's VideoProcessorBlt function:
- The input and output RECT structures may be adjusted if the rectangles are not aligned properly according to the requirements of the format.
-
If the video processor has been enabled to produce stereo samples, the output view must contain a texture array of two elements.
Also, at least one stereo stream must be specified.
If the video processor has been disabled from producing stereo samples, the output view must contain a single element. Also, the stereo format cannot be configured as D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_MONO.
Note A video processor is enabled or disabled for the production of stereo samples through a call to VideoProcessorSetOutputStereoMode. -
Each input stream is specified through a D3D11_1DDI_VIDEO_PROCESSOR_STREAM structure. If the stereo format of the input stream is configured to be D3D11_1DDI_VIDEO_PROCESSOR_STEREO_FORMAT_SEPARATE, the pInputSurfaceRight member must not be set to NULL. Otherwise, the pInputSurfaceRight must be set to NULL.
Note The stereo format for an input stream is configured through a call to VideoProcessorSetStreamStereoFormat.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows 8 |
Minimum supported server | Windows Server 2012 |
Target Platform | Desktop |
Header | d3d10umddi.h (include D3d10umddi.h) |
See also
CreateVideoProcessorOutputView
D3D11_1DDI_VIDEO_PROCESSOR_CAPS
D3D11_1DDI_VIDEO_PROCESSOR_STREAM