IDirectXVideoProcessor::VideoProcessBlt 方法 (dxva2api.h)
在一或多個輸入樣本上執行視訊處理作業,並將結果寫入 Direct3D9 表面。
語法
HRESULT VideoProcessBlt(
[in] IDirect3DSurface9 *pRenderTarget,
[in] const DXVA2_VideoProcessBltParams *pBltParams,
[in] const DXVA2_VideoSample *pSamples,
[in] UINT NumSamples,
[out] HANDLE *pHandleComplete
);
參數
[in] pRenderTarget
Direct3D 介面 之 IDirect3DSurface9 介面的指標。 視訊處理作業的輸出將會寫入此表面。 表面可以是下列任何類型:
- 使用 DXVA2_VideoProcessRenderTarget 旗標呼叫 IDirectXVideoAccelerationService::CreateSurface 所建立的介面。 您也可以使用 DXVA2_VideoSoftwareRenderTarget 旗標,但只有在裝置 GUID DXVA2_VideoProcSoftwareDevice (軟體視訊處理裝置) 時。
- 使用 D3DUSAGE_RENDERTARGET 使用旗標從 Direct3D 裝置建立的介面。
- Direct3D 交換鏈結。
[in] pBltParams
DXVA2_VideoProcessBltParams 結構的指標,描述要執行的視訊處理作業。
[in] pSamples
包含輸入樣本 之DXVA2_VideoSample 結構的數位指標。 陣列中必須至少有一個專案。
輸入樣本數目上限是由頭檔 dxva2api.h 中定義的常數 MAX_DEINTERLACE_SURFACES所指定。
[in] NumSamples
pSamples 陣列中的項目數目。
[out] pHandleComplete
保留;設定為 NULL。
傳回值
方法會傳回 HRESULT。 可能的值包括 (但不限於) 下表中的這些值。
傳回碼 | 描述 |
---|---|
|
此方法已成功。 |
|
內部驅動程序錯誤。 |
|
無效的自變數。 |
備註
當方法傳回時,作業可能不會完成。
如果方法傳回 E_INVALIDARG,請檢查下列專案:
- (NumSamples) 輸入樣本數目必須小於或等於MAX_DEINTERLACE_SURFACES。
- Direct3D 表面必須是 VideoProcessBlt 的有效目標。 如需詳細資訊,請參閱 pRT 參數的描述。
- pBltParams 中提供的簡報時間 (TargetFrame) 必須符合主要數據流中目前圖片的開始和結束時間。 具體而言,它必須小於結束時間,且大於或等於開始時間。 請注意,如果 pSamples 陣列包含回溯參考圖片, pSamples 中的第一個範例可能不是目前的圖片。 如需詳細資訊,請參閱 輸入範例順序。
- pBltParams 中指定的目標矩形 (TargetRect) 不能大於 pRT) (目的介面。
- pBltParams 中指定的 constrictionSize 大小 (ConstrictionSize) 不能小於零或大於目標矩形。
- 背景色彩的 Alpha 元件必須是 opqaue。
- pBltParams 中提供的 ProcAmp 值必須有效。 對於驅動程序支援的任何 ProcAmp 設定,這些值必須落在 IDirectXVideoProcessor::GetProcAmpRange 方法所傳回的範圍內。
- pBltParams 中指定的雜訊和詳細數據篩選條件必須有效。 對於驅動程序支援的任何篩選條件,這些值必須落在 IDirectXVideoProcessor::GetFilterPropertyRange 方法所傳回的範圍內。
- pBltParams 中提供的 Alpha 值必須位於範圍 [0...1] 內含。
- 針對 pSamples 中指定的每個輸入範例:
- 開始時間不能大於結束時間。
- 必須提供有效的 IDirect3DSurface9 指標。
- 來源矩形不能大於輸入介面。
- 目的矩形不能大於目的介面。
- 平面 Alpha 必須位於範圍 [0...1] 內。
- 對於 (來源、目的地和目標) 的所有矩形,矩形無法反轉 (由左 > 或右下 >) 或具有負值。
規格需求
最低支援的用戶端 | Windows Vista [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2008 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | dxva2api.h |