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。 可能的值包括 (但不限於) 下表中的這些值。

傳回碼 描述
S_OK
此方法已成功。
D3DERR_DRIVERINTERNALERROR
內部驅動程序錯誤。
E_INVALIDARG
無效的自變數。

備註

當方法傳回時,作業可能不會完成。

如果方法傳回 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

另請參閱

DXVA 視訊處理

DXVA2_VideoSample

IDirectXVideoProcessor