PFND3D11_1DDI_VIDEOPROCESSORBLT回呼函式 (d3d10umddi.h)
在一或多個輸入範例上執行視訊處理作業,並將結果寫入 Direct3D 介面。
語法
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
)
{...}
參數
unnamedParam1
hDevice [in]
顯示裝置的句柄(圖形內容)。
unnamedParam2
hVideoProcessor [in]
透過呼叫 createVideoProcessor 函式所建立之視訊處理器物件的句柄。
unnamedParam3
hOutputView [in]
視訊處理器輸出檢視的資源句柄。 此句柄是透過呼叫 createVideoProcessorOutputView 函式所建立。
unnamedParam4
OutputFrame [in]
輸出視訊畫面的以零起始的索引。
unnamedParam5
StreamCount [in]
pStream 參數所參考之陣列中要處理的輸入數據流數目。
unnamedParam6
pStream [in]
包含輸入數據流相關信息之 D3D11_1DDI_VIDEO_PROCESSOR_STREAM 結構的指標。
傳回值
VideoProcessorBlt 會傳回下列其中一個值:
傳回碼 | 描述 |
---|---|
S_OK | 影片處理作業已順利完成。 |
E_OUTOFMEMORY | 記憶體無法完成作業。 |
言論
VideoProcessorBlt 會根據先前設定的串流狀態和位區塊傳輸 (bitblt) 狀態來執行所有視訊處理。
Microsoft Direct3D 運行時間會在呼叫驅動程式的 VideoProcessorBlt 函式之前執行下列數據驗證:
- 如果矩形未根據格式的需求正確對齊,可能會調整 RECT RECT 結構的輸入和輸出。
-
如果已啟用視訊處理器來產生立體聲樣本,輸出檢視必須包含兩個元素的紋理數位。
此外,至少必須指定一個立體聲數據流。
如果已停用視訊處理器產生立體聲樣本,輸出檢視必須包含單一元素。 此外,無法將立體聲格式設定為 D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_MONO。
注意 透過呼叫 VideoProcessorSetOutputStereoMode來啟用或停用立體聲範例的生產。 -
每個輸入數據流都是透過 D3D11_1DDI_VIDEO_PROCESSOR_STREAM 結構來指定。 如果輸入數據流的立體格式設定為 D3D11_1DDI_VIDEO_PROCESSOR_STEREO_FORMAT_SEPARATE,則 pInputSurfaceRight 成員不得設定為 NULL。 否則,pInputSurfaceRight 必須設定為 NULL。
注意 輸入數據流的立體聲格式是透過呼叫 VideoProcessorSetStreamStereoFormat來設定。
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | Windows 8 |
支援的最低伺服器 | Windows Server 2012 |
目標平臺 | 桌面 |
標頭 | d3d10umddi.h (包括 D3d10umddi.h) |
另請參閱
CreateVideoProcessorOutputView
D3D11_1DDI_VIDEO_PROCESSOR_CAPS
D3D11_1DDI_VIDEO_PROCESSOR_STREAM