Input Buffer Order Example 5
This section applies only to Windows Server 2003 with SP1 and later, and Windows XP with SP2 and later.
The VMR initiates a call to the driver's DeinterlaceBltEx function to use the device in Input Buffer Order Example 4 to combine the 2 video substreams with a progressive video stream. The VMR still passes the same number of progressive video samples even though those samples are not necessary to produce the output in the destination buffer. The sequence of surfaces in the lpBufferInfo array are:
Index position | Surface type | Temporal location | Layer location |
---|---|---|---|
lpBufferInfo[0] |
Destination |
T |
|
lpBufferInfo[1] |
Progressive input |
T - 1 |
Z |
lpBufferInfo[2] |
Progressive input |
T |
Z |
lpBufferInfo[3] |
Progressive input |
T + 1 |
Z |
lpBufferInfo[4] |
Substream |
0 |
Z + 1 |
lpBufferInfo[5] |
Substream |
0 |
Z + 2 |
The driver can ignore the surfaces at index 1 and index 3 because they are not required for the deinterlace operation. Progressive samples are marked with the DXVA_SampleProgressiveFrame flag in the SampleFormat member of DXVA_VideoSample2 structures for the samples. Substream samples are marked with the new DXVA_SampleSubStream flag.