DDVIDEOPORTINFO 結構 (dvp.h)
DDVIDEOPORTINFO 結構描述驅動程式如何將視訊數據傳輸至介面 (或介面) ;DDVIDEOPORTINFO 是 DD_VIDEOPORT_LOCAL 結構的成員。
語法
typedef struct _DDVIDEOPORTINFO {
DWORD dwSize;
DWORD dwOriginX;
DWORD dwOriginY;
DWORD dwVPFlags;
RECT rCrop;
DWORD dwPrescaleWidth;
DWORD dwPrescaleHeight;
LPDDPIXELFORMAT lpddpfInputFormat;
LPDDPIXELFORMAT lpddpfVBIInputFormat;
LPDDPIXELFORMAT lpddpfVBIOutputFormat;
DWORD dwVBIHeight;
ULONG_PTR dwReserved1;
ULONG_PTR dwReserved2;
} *LPDDVIDEOPORTINFO, DDVIDEOPORTINFO;
成員
dwSize
指定結構位元組的大小。 使用 結構之前,必須先初始化這個成員。
dwOriginX
表示視訊數據在介面內的 x 位置,以像素為單位。 此位移會在要求自動滑動時套用至所有表面。
dwOriginY
指出視訊數據的 Y 位置,以像素為單位在介面內。 此位移會在要求自動滑動時套用至所有表面。
dwVPFlags
指出一組旗標,指定驅動程式應該如何傳輸視訊數據。 這個成員可以是下列值的位 OR:
旗標 | 意義 |
---|---|
DDVP_AUTOFLIP | 執行自動翻轉。 自動翻轉會在附加至硬體視訊埠的重疊介面與附加至介面的重疊介面之間執行。 翻轉順序是重疊表面附加的順序。 |
DDVP_CONVERT | 視訊數據和目標介面的格式不同。 驅動程式應該會將視訊數據轉換成目標介面格式的格式。 |
DDVP_CROP | 驅動程式應該使用 rCrop 成員中的矩形來裁剪視訊和 VBI 數據。 |
DDVP_IGNOREVBIXCROP | 在裁剪 VBI 數據時,驅動程序應該忽略左右裁剪座標。 |
DDVP_INTERLEAVE | 視訊和 VBI 數據的交錯字段應該交錯在記憶體中。 |
DDVP_MIRRORLEFTRIGHT | 視訊數據應該由左至右鏡像,因為它會寫入畫面緩衝區中。 |
DDVP_MIRRORUPDOWN | 視訊數據應該會從上到下鏡像,因為它會寫入畫面緩衝區中。 |
DDVP_NOINTERLEAVE | 如果已設定DDVP_INTERLEAVE旗標,驅動程式應該只交錯視訊數據;也就是說,驅動程式不應該交錯 VBI 數據。 |
DDVP_OVERRIDEBOBWEAVE | 其他介面不應覆寫 bob 和 weave 決策。 如果設定此旗標,Microsoft DirectDraw 不允許內核模式驅動程式使用內核模式視訊傳輸功能,在 bob 和 weave 模式之間切換硬體。 |
DDVP_PRESCALE | 根據 dwPrescaleWidth 和 dwPrescaleHeight 成員執行預先調整/縮放。 如果已設定DDVP_VBINOSCALE,驅動程式應該只會預先調整視訊數據;否則,它應該預先調整影片和 VBI 數據。 |
DDVP_SKIPEVENFIELDS | 忽略視訊和 VBI 數據的偶數位段輸入。 |
DDVP_SKIPODDFIELDS | 忽略視訊和 VBI 數據的奇數位段輸入。 |
DDVP_SYNCMASTER | 使用硬體視訊埠 VSYNCs 來驅動圖形 VSYNC。 |
DDVP_VBICONVERT | DDPIXELFORMAT 結構,lpddpfVBIOutputFormat 成員點包含應該用來在垂直空白間隔內轉換數據的數據。 |
DDVP_VBINOSCALE | 不應調整垂直空白間隔內的數據。 |
rCrop
指定 RECT 結構,以像素指定裁剪矩形。 當 dwVPFlags 成員中設定DDVP_CROP旗標時,此成員會包含有效的矩形。
dwPrescaleWidth
指定視訊和 VBI 數據應預先調整或縮放的像素寬度。 例如,如果視訊數據寬度為720像素,且用戶端要求寬度剪下半部,則用戶端會在 dwPrescaleWidth 中指定 360。 當 dwVPFlags 成員中設定DDVP_PRESCALE旗標時,此成員會包含有效的寬度。
dwPrescaleHeight
指定視訊和 VBI 數據應預先調整或縮放的圖元高度。 例如,如果視訊數據寬度為240像素,且用戶端要求寬度剪下半部,則用戶端會在 dwPrescaleHeight 中指定 120。 當 dwVPFlags 成員中設定DDVP_PRESCALE旗標時,此成員會包含有效的寬度。
lpddpfInputFormat
指向 DDPIXELFORMAT 結構,指定要寫入 至視訊埠延伸模組的視訊數據格式, (VPE) 物件。 如果 VPE 物件執行轉換,此格式與目標介面格式不同。
lpddpfVBIInputFormat
指向 DDPIXELFORMAT 結構,指定垂直空白間隔內數據的輸入格式。
lpddpfVBIOutputFormat
指向 DDPIXELFORMAT 結構,指定垂直空白間隔內資料的輸出格式。
dwVBIHeight
指定垂直空白間隔內的數據行數。
dwReserved1
保留供系統使用,驅動程式應忽略。
dwReserved2
保留供系統使用,驅動程式應忽略。
備註
此結構的所有成員都是由客戶端設定,而且驅動程式不應該變更它們。 用戶端通常是重迭混合器。
規格需求
需求 | 值 |
---|---|
標頭 | dvp.h (包含 Dvp.h) |