DDVIDEOPORTCAPS 結構 (dvp.h)

DDVIDEOPORTCAPS 結構描述硬體視訊埠的功能和對齊限制。

語法

typedef struct _DDVIDEOPORTCAPS {
  DWORD dwSize;
  DWORD dwFlags;
  DWORD dwMaxWidth;
  DWORD dwMaxVBIWidth;
  DWORD dwMaxHeight;
  DWORD dwVideoPortID;
  DWORD dwCaps;
  DWORD dwFX;
  DWORD dwNumAutoFlipSurfaces;
  DWORD dwAlignVideoPortBoundary;
  DWORD dwAlignVideoPortPrescaleWidth;
  DWORD dwAlignVideoPortCropBoundary;
  DWORD dwAlignVideoPortCropWidth;
  DWORD dwPreshrinkXStep;
  DWORD dwPreshrinkYStep;
  DWORD dwNumVBIAutoFlipSurfaces;
  DWORD dwNumPreferredAutoflip;
  WORD  wNumFilterTapsX;
  WORD  wNumFilterTapsY;
} *LPDDVIDEOPORTCAPS, DDVIDEOPORTCAPS;

成員

dwSize

指定 結構位元組的大小。

dwFlags

指定這個結構中的哪些成員包含有效的資料。 這個成員可以是下列任何值的位 OR:

旗標 意義
DDVPD_ALIGN
所有對齊成員都是有效的。 其中包含:
dwAlignVideoPortBoundary
dwAlignVideoPortPrescaleWidth
dwAlignVideoPortCropBoundary
dwAlignVideoPortCropWidth.
DDVPD_AUTOFLIP dwNumAutoFlipSurfaces有效。
DDVPD_CAPS dwCaps成員有效。
DDVPD_FX dwFX成員有效。
DDVPD_HEIGHT dwMaxHeight成員有效。
DDVPD_ID dwVideoPortID成員有效。
DDVPD_WIDTH dwMaxWidthdwMaxVBIWidth成員有效。

dwMaxWidth

指定硬體視訊埠所支援的圖元最大欄位寬度。 此值通常是由寬度暫存器中的位數目所決定。

dwMaxVBIWidth

指定硬體視訊埠所支援 之 VBI 資料行的最大寬度,以樣本數目為單位。 如果硬體視訊埠支援過度取樣的 VBI 資料,此值可以大於一般欄位寬度。

dwMaxHeight

指定硬體視訊埠所支援的圖元最大欄位高度。 此值通常是由高度暫存器中的位數目所決定。

dwVideoPortID

指定這個專案的硬體視訊埠識別碼。 這個成員應該是DD_DIRECTDRAW_GLOBAL結構點lpDDVideoPortCaps成員所在陣列中這個 DDVIDEOPORTCAPS 結構的索引編號。 此值的範圍從 0 到 (dwMaxVideoPorts - 1) 。 (dwMaxVideoPortsDDCORECAPS 結構的成員。) 如果裝置只支援一個硬體視訊埠,則此成員應該是零。

dwCaps

指出一組旗標,指定此硬體視訊埠所支援的功能。 這個成員可以是下列任何值的位 OR:

旗標 意義
DDVPCAPS_AUTOFLIP 您可以自動執行翻轉以避免卸載。
DDVPCAPS_COLORCONTROL 硬體視訊埠可以在傳入資料寫入框架緩衝區之前,對傳入資料執行色彩作業。
DDVPCAPS_INTERLACED 硬體視訊埠支援交錯的視訊。
DDVPCAPS_NONINTERLACED 硬體視訊埠支援非交錯的視訊。
DDVPCAPS_OVERSAMPLEDVBI 硬體視訊埠可以接受與一般視訊資料不同的寬度或格式的 VBI 資料。
DDVPCAPS_READBACKFIELD 裝置可以傳回值,表示交錯訊號的目前欄位是否偶數或奇數。
DDVPCAPS_READBACKLINE 裝置可以傳回正在寫入框架緩衝區的目前視訊行數目。
DDVPCAPS_SHAREABLE Microsoft DirectDraw 忽略。
DDVPCAPS_SKIPEVENFIELDS 硬體視訊埠可以自動捨棄偶數視訊欄位。
DDVPCAPS_SKIPODDFIELDS 硬體視訊埠可以自動捨棄奇數的視訊欄位。
DDVPCAPS_SYNCMASTER 裝置能夠使用硬體視訊埠驅動程式 V 同步處理來驅動圖形 V 同步處理。
DDVPCAPS_SYSTEMMEMORY 硬體視訊埠可以直接將資料寫入系統記憶體。
DDVPCAPS_VBISURFACE 垂直空白間隔內的資料可以寫入不同的表面。

dwFX

指出一組旗標,指定此硬體視訊埠所支援的效果。 這個成員是下列任何值的位 OR:

旗標 意義
DDVPFX_CROPTOPDATA 硬體視訊埠支援有限的裁剪,以裁剪出垂直間隔資料。
DDVPFX_CROPX 硬體視訊埠可以在將傳入資料寫入表面之前,先以 x 方向裁剪內送資料。
DDVPFX_CROPY 硬體視訊埠可以在將傳入資料寫入表面之前,先以 Y 方向裁剪內送資料。
DDVPFX_IGNOREVBIXCROP 當裁剪過度取樣的 VBI 資料時,硬體視訊埠可以忽略視訊資料的左右裁剪座標。
DDVPFX_INTERLEAVE 硬體視訊埠支援在記憶體中交錯交錯的欄位。
DDVPFX_MIRRORLEFTRIGHT 硬體視訊埠支援從左至右鏡像,因為視訊資料會寫入框架緩衝區。
DDVPFX_MIRRORUPDOWN 硬體視訊埠支援從上到下鏡像,因為視訊資料會寫入框架緩衝區。
DDVPFX_PRESHRINKX 資料可以在寫入表面之前,以 x 方向任意縮小。
DDVPFX_PRESHRINKXB 資料可以透過負冪 2 (1/2、1/4、1/8 等) 以 x 方向壓縮,然後再寫入表面。
DDVPFX_PRESHRINKXS 資料可以在寫入表面之前,以 x 方向的 1/dwPreshrinkXStep 遞增來壓縮資料。
DDVPFX_PRESHRINKY 資料可以在寫入表面之前,以 Y 方向任意壓縮資料。
DDVPFX_PRESHRINKYB 資料可以透過 2 (1/2、1/4、1/8 等負數乘冪來縮小,以 y 方向) 寫入表面。
DDVPFX_PRESHRINKYS 資料可以遞增 1/dwPreshrinkYStep 在寫入表面之前,以 y 方向壓縮資料。
DDVPFX_PRESTRETCHX 資料可以在寫入表面之前,以 x 方向任意延展。
DDVPFX_PRESTRETCHXN 資料可以透過 x 方向的整數因數延展,再寫入表面。
DDVPFX_PRESTRETCHY 資料可以在寫入表面之前,以 Y 方向任意延展。
DDVPFX_PRESTRETCHYN 資料可以透過 Y 方向的整數因數延展,再寫入表面。
DDVPFX_VBICONVERT 垂直空白間隔內的資料可以與其余視訊資料無關進行轉換。
DDVPFX_VBINOSCALE 您可以針對垂直空白間隔內的資料停用調整。

dwNumAutoFlipSurfaces

如果硬體視訊埠支援自動滑動,則指定 autoflip 鏈結中支援的最大表面數目。 如果硬體視訊埠不支援自動滑動,驅動程式應該將此成員設定為零。

dwAlignVideoPortBoundary

指定位元組對齊限制,以位元組為單位,其中硬體視訊埠可以相對於 x 方向表面的來源方向。

dwAlignVideoPortPrescaleWidth

指定執行預先調整時,硬體視訊埠資料寬度的位元組對齊限制,以位元組為單位。

dwAlignVideoPortCropBoundary

指定左側裁剪座標的位元組對齊限制,以位元組為單位。

dwAlignVideoPortCropWidth

指定裁剪矩形寬度的位元組對齊限制,以位元組為單位。

dwPreshrinkXStep

表示硬體視訊埠可以在 1/dwPreshrinkXStep的步驟中壓縮視訊資料寬度。 只有在指定DDVPFX_PRESHRINKXS功能時,這個成員才有效。

dwPreshrinkYStep

表示硬體視訊埠可以在 1/dwPreshrinkYStep的步驟中壓縮視訊資料高度。 只有在指定DDVPFX_PRESHRINKYS功能時,這個成員才有效。

dwNumVBIAutoFlipSurfaces

如果硬體視訊埠支援自動滑動,則指定 autoflip 鏈結中支援的最大表面數目。 如果硬體視訊埠不支援自動滑動,驅動程式應該將此成員設定為零。 此成員的運作方式與 dwNumAutoFlipSurfaces 相同,不同之處在于它只與可將 VBI 資料傳送至寫入一般視訊的不同表面的裝置有關。

dwNumPreferredAutoflip

指定硬體所支援的最佳自動省略介面數目。

wNumFilterTapsX

指出預先調整程式在 x 方向使用的點選數目。 值為 0 表示沒有預先調整,值為 1 表示複寫,依此類推。

wNumFilterTapsY

指出預先調整程式在 Y 方向使用的點選數目。 值為 0 表示沒有預先調整,值為 1 表示複寫,依此類推。

備註

當使用 GUID_VideoPortCaps GUID 呼叫 DdGetDriverInfo 函式時,驅動程式會報告 DDVIDEOPORTCAPS 結構所描述的功能。

需求

   
標頭 dvp.h (包含 Dvp.h)

另請參閱

DDCORECAPS

DD_DIRECTDRAW_GLOBAL

DdGetDriverInfo