共用方式為


DXVADDI_VIDEOPROCESSORCAPS結構 (d3dumddi.h)

DXVADDI_VIDEOPROCESSORCAPS結構描述特定反交錯模式的視訊處理功能。

語法

typedef struct _DXVADDI_VIDEOPROCESSORCAPS {
  [out] D3DDDI_POOL  InputPool;
  [out] UINT         NumForwardRefSamples;
  [out] UINT         NumBackwardRefSamples;
  [out] D3DDDIFORMAT OutputFormat;
  [out] UINT         DeinterlaceTechnology;
  [out] UINT         ProcAmpControlCaps;
  [out] UINT         VideoProcessorOperations;
  [out] UINT         NoiseFilterTechnology;
  [out] UINT         DetailFilterTechnology;
} DXVADDI_VIDEOPROCESSORCAPS;

成員

[out] InputPool

D3DDDI_POOL型別值,指出應該從中配置交錯來源介面的記憶體集區。

[out] NumForwardRefSamples

所定義 deinterlace 模式的必要正向參考樣本數目。 這些範例位於後續欄位中。 對於bob和線條混合而言,這個值為零,而且可以是其他值 (,例如1、2或3) ,用於調適性反交錯和幀速率轉換。

[out] NumBackwardRefSamples

所定義 deinterlace 模式所需的回溯參考範例。 這些範例位於先前的欄位中。 bob 的這個值為零,1 表示線條混合,而且可以是其他值 (,例如 1、2 或 3) ,用於調適性反交錯和幀速率轉換。

[out] OutputFormat

D3DDDIFORMAT型別值,指出未壓縮輸出畫面格的圖元格式。 一般而言,deinterlace 演算法會以符合輸入範例格式的圖元格式輸出畫面格。 此成員可確保視訊混合轉譯器 (VMR) 或其他視訊轉譯器能夠將正確的輸出畫面介面提供給解除交錯的硬體。

請注意,如果在 VideoProcessorOperations 成員中傳回DXVADDI_VIDEOPROCESS_YUV2RGB值,VMR 會判斷這個成員指定有效的輸出格式,以及D3DFMT_X8R8G8B8格式。

[out] DeinterlaceTechnology

下列值的位 OR,表示用來實作反交錯演算法的基礎反交錯技術。 您可以視需要合併這些值,以最符合演算法的實作。

ReplTest1 意義
DXVADDI_DEINTERLACETECH_UNKNOWN 取消交錯技術未知。
DXVADDI_DEINTERLACETECH_BOBLINEREPLICATE deinterlace 演算法會藉由重複上方或下方的遺漏行來建立遺漏的行。 這個方法看起來不規則,不建議這麼做。
DXVADDI_DEINTERLACETECH_BOBVERTICALSTRETCH 清除交錯演算法,藉由垂直將每個視訊字段垂直延展為兩條線,以平均兩行來建立遺漏的線條。 會稍微調整垂直,以確保產生的影像不會向上和向下移動。
DXVADDI_DEINTERLACETECH_BOBVERTICALSTRETCH4TAP 透過使用四行的 [-1, 9, 9, 9, -1] / 16 篩選,將每個視訊字段垂直延展兩個視訊字段,藉以建立遺漏線條的反交錯演算法。 會稍微調整垂直,以確保產生的影像不會向上和向下移動。
DXVADDI_DEINTERLACETECH_MEDIANFILTERING 遺漏行中的圖元會由中位數篩選作業重新建立。
DXVADDI_DEINTERLACETECH_EDGEFILTERING 遺漏線條中的圖元會由邊緣篩選器重新建立。 在此程式中,會套用空間方向篩選來判斷圖片內容中的邊緣方向,而遺漏的圖元是透過沿著 (篩選來建立,而不是跨) 偵測到的邊緣。
DXVADDI_DEINTERLACETECH_FIELDADAPTIVE 遺漏線條中的圖元會根據動作量,在空間或時態性內插補點之間逐欄位切換來重新建立。
DXVADDI_DEINTERLACETECH_PIXELADAPTIVE 根據動作量,在空間或時態性插補之間切換圖元,即可重新建立遺漏線條中的圖元。
DXVADDI_DEINTERLACETECH_MOTIONVECTORSTEERED 視訊欄位序列中的物件。 遺失的圖元會在場景中第一次對齊個別對象的移動軸之後重新建立,使其與時間軸平行。
DXVADDI_DEINTERLACETECH_INVERSETELECINE Deinterlace 演算法,可以復原 3:2 下拉式程式,用於在 60Hz 顯示器上顯示 24Hz 內容、50Hz 顯示器上的 25Hz 內容等等。

[out] ProcAmpControlCaps

下列值的位 OR,表示硬體支援的 ProcAmp 作業。

ReplTest1 意義
DXVADDI_PROCAMP_NONE 硬體不支援任何 ProcAmp 作業。
DXVADDI_PROCAMP_BRIGHTNESS 允許視訊影像的亮度調整。
DXVADDI_PROCAMP_CONTRAST 允許對視訊影像進行對比調整。
DXVADDI_PROCAMP_HUE 允許視訊影像的色調調整。
DXVADDI_PROCAMP_SATURATION 允許對視訊影像進行飽和度調整。

[out] VideoProcessorOperations

下列值的位 OR,表示硬體可以與要求的 VideoProcessBlt 作業同時執行的其他視訊處理作業。

ReplTest1 意義
DXVADDI_VIDEOPROCESS_NONE 硬體無法再執行任何視訊處理作業。
DXVADDI_VIDEOPROCESS_YUV2RGB 允許從 YUV 色彩空間轉換成 RGB 色彩空間的視訊。 所使用的 RGB 格式,每個色彩元件至少有 8 位的有效位數。 如果可能執行這項作業,可以避免 VMR 內的緩衝區複本。 請注意,不需要從 RGB 色彩空間轉換為 YUV 色彩空間。
DXVADDI_VIDEOPROCESS_STRETCHX 如果硬體能夠水平縮放或縮小,可以同時執行視訊外觀比例校正,因為視訊是 ProcAmp 調整的。
DXVADDI_VIDEOPROCESS_STRETCHY 外觀比例調整會與一般圖片重設大小作業結合,以調整應用程式定義組合空間內的視訊影像。 這項作業很少見,並非基本功能。 如果調整視訊大小以符合應用程式視窗所需的縮放比例,最好與 ProcAmp 調整所需的縮放比例同時完成。 這種類型的作業可避免累積成品。
DXVADDI_VIDEOPROCESS_ALPHABLEND 當 Alpha 值變更時,VMR 不會執行緩衝區複製。 應用程式很少會改變與視訊串流相關聯的常數 Alpha 值,因此此作業是低優先順序功能。
DXVADDI_VIDEOPROCESS_SUBRECTS 視訊處理裝置可以在視訊影像的子專案區域上運作。 如果必須先裁剪視訊影像,才能進一步處理,因為輸出畫面的大小會降低,此作業就很有用。
DXVADDI_VIDEOPROCESS_SUBSTREAMS 視訊處理裝置可以結合視訊子串流與視訊串流。
DXVADDI_VIDEOPROCESS_SUBSTREAMSEXTENDED 您可以對來源視訊串流和子數據流進行必要的色彩調整。 這些調整會在擴充色彩數據中指出,因為視訊會反交錯、與子數據流複合,並寫入目的地介面。
DXVADDI_VIDEOPROCESS_YUV2RGBEXTENDED 使用為來源和目的地表面指定的擴充色彩資訊,即可執行色彩空間轉換作業,因為已取消交錯和複合的圖元會寫入目的地介面。
DXVADDI_VIDEOPROCESS_ALPHABLENDEXTENDED 當反交錯和複合圖元寫入目的地表面時,可以使用目的地表面執行 Alpha 混合運算。 驅動程式必須根據 D3DDDIARG_VIDEOPROCESSBLT 結構的 Alpha 成員 Alpha 值來處理背景色彩。 當Alpha值為1.0時,背景色彩會不透明地繪製 (,而沒有透明度) 。 當Alpha值為0.0時,背景不應繪製 (透明) 。
DXVADDI_VIDEOPROCESS_CONSTRICTION 視訊處理裝置可以暫時將輸出畫面縮減為 constrictionSize D3DDDIARG_VIDEOPROCESSBLT 結構 所指定成員的大小。
DXVADDI_VIDEOPROCESS_NOISEFILTER 視訊處理裝置可以在視訊串流上執行雜訊篩選作業。
DXVADDI_VIDEOPROCESS_DETAILFILTER 視訊處理裝置可以在視訊串流上執行詳細數據篩選作業。
DXVADDI_VIDEOPROCESS_PLANARALPHA 視訊處理裝置可以將固定 Alpha 混合套用至整個視訊串流 (平面) ,同時將視訊串流和子串流混合在一起。 D3DDDIARG_VIDEOPROCESSBLT的Alpha成員會指定Alpha值。
DXVADDI_VIDEOPROCESS_LINEARSCALING 視訊處理裝置可以線性調整視訊串流。
DXVADDI_VIDEOPROCESS_GAMMACOMPENSATED 視訊處理裝置可以在視訊串流上執行 Gamma 轉換。
DXVADDI_VIDEOPROCESS_MAINTAINSORIGINALFIELDDATA 視訊處理裝置可以維護原始欄位數據。

[out] NoiseFilterTechnology

下列值的位 OR,表示用來實作雜訊篩選的基礎技術。 您可以視需要合併這些值,以最符合雜訊篩選實作。

ReplTest1 意義
DXVADDI_NOISEFILTERTECH_UNSUPPORTED 不支持雜訊篩選技術。
DXVADDI_NOISEFILTERTECH_UNKNOWN 雜訊篩選技術未知。
DXVADDI_NOISEFILTERTECH_MEDIAN 視訊處理裝置會使用中位數雜訊篩選。
DXVADDI_NOISEFILTERTECH_TEMPORAL 視訊處理裝置會使用時態性雜訊篩選。
DXVADDI_NOISEFILTERTECH_BLOCKNOISE 視訊處理裝置會使用封鎖雜訊篩選。
DXVADDI_NOISEFILTERTECH_MOSQUITONOISE 視訊處理裝置會使用雜訊篩選。

[out] DetailFilterTechnology

下列值的位 OR,表示用來實作詳細數據篩選的基礎技術。 您可以視需要合併這些值,以最符合詳細數據篩選實作。

ReplTest1 意義
DXVADDI_DETAILFILTERTECH_UNSUPPORTED 不支援詳細篩選技術。
DXVADDI_DETAILFILTERTECH_UNKNOWN 詳細數據篩選技術未知。
DXVADDI_DETAILFILTERTECH_EDGE 視訊處理裝置會使用邊緣詳細數據篩選。
DXVADDI_DETAILFILTERTECH_SHARPENING 視訊處理裝置會使用更明確的詳細數據篩選。

規格需求

需求
最低支援的用戶端 可在 Windows Vista 和更新版本的 Windows 作業系統中使用。
標頭 d3dumddi.h (包含 D3dumddi.h)

另請參閱

D3DDDIARG_GETCAPS

D3DDDIARG_VIDEOPROCESSBLT

D3DDDICAPS_TYPE

D3DDDIFORMAT

D3DDDI_POOL

DXVADDI_VIDEOPROCESSORINPUT

GetCaps