VIDEOPARAMETERS 結構 (tvout.h)
當 IOCTL 要求IOCTL_VIDEO_HANDLE_VIDEOPARAMETERS時,視訊迷你埠驅動程式會在VIDEO_REQUEST_PACKET的 InputBuffer 成員中接收 VIDEOPARAMETERS 結構的指標。 視 VIDEOPARAMETERS 結構的 dwCommand 成員而定,迷你埠驅動程式應該取得或設定電視連接器和裝置的複製保護功能。
語法
typedef struct _VIDEOPARAMETERS {
GUID Guid;
ULONG dwOffset;
ULONG dwCommand;
ULONG dwFlags;
ULONG dwMode;
ULONG dwTVStandard;
ULONG dwAvailableModes;
ULONG dwAvailableTVStandard;
ULONG dwFlickerFilter;
ULONG dwOverScanX;
ULONG dwOverScanY;
ULONG dwMaxUnscaledX;
ULONG dwMaxUnscaledY;
ULONG dwPositionX;
ULONG dwPositionY;
ULONG dwBrightness;
ULONG dwContrast;
ULONG dwCPType;
ULONG dwCPCommand;
ULONG dwCPStandard;
ULONG dwCPKey;
ULONG bCP_APSTriggerBits;
UCHAR bOEMCopyProtection[256];
} VIDEOPARAMETERS, *PVIDEOPARAMETERS, *LPVIDEOPARAMETERS;
成員
Guid
指定這個結構 {02C62061-1097-11d1-920F-00A024DF156E} 的全域唯一標識符) (GUID。 視訊迷你埠驅動程序必須先驗證 結構開頭的 GUID,再處理 結構。
dwOffset
是保留的,而且應該由視訊迷你埠驅動程式忽略。
dwCommand
指出驅動程式所要執行的動作。 這個成員可以是下列其中一個值:
VP_COMMAND_GET
迷你埠驅動程式應該傳回所有裝置的電視連接器功能、目前的電視連接器設定、複製保護功能和目前的複製保護設定,方法是在 dwFlags 中設定適當的旗標,以及設定對應至這些設定旗標的成員值。
VP_COMMAND_SET
迷你埠驅動程式應該根據對應 至 dwFlags 中設定旗標的這個結構成員,設定電視連接器和複製保護硬體。
dwFlags
指出這個結構的成員包含有效的數據。 當 dwCommand VP_COMMAND_GET時,驅動程式應該設定此成員中的適當位,以指出其傳回有效數據的對應成員。 當 dwCommand VP_COMMAND_SET時,驅動程式應該根據與此成員中設定位之成員中的值,在硬體上設定功能。 這個成員可以是下表第一欄所列值的位 OR。
旗標 | 對應的成員 | 命令 |
---|---|---|
VP_FLAGS_BRIGHTNESS | dwBrightness | get/set |
VP_FLAGS_CONTRAST | dwContrast | get/set |
VP_FLAGS_COPYPROTECT |
dwCPType
dwCPCommand dwCPStandard dwCPKey bCP_APSTriggerBits bOEMCopyProtection |
get/set set get set set get/set |
VP_FLAGS_FLICKER | dwFlickerFilter | get/set |
VP_FLAGS_MAX_UNSCALED |
dwMaxUnscaledX
dwMaxUnscaledY |
get get |
VP_FLAGS_OVERSCAN |
dwOverscanX
dwOverscanY |
get/set get/set |
VP_FLAGS_POSITION |
dwPositionX
dwPositionY |
get/set get/set |
VP_FLAGS_TV_MODE |
dwMode
dwAvailableModes |
get/set get |
VP_FLAGS_TV_STANDARD |
dwTVStandard
dwAvailableTVStandard |
get/set get |
dwMode
指定目前的播放模式。 這個成員對VP_COMMAND_SET和VP_COMMAND_GET命令都有效,而且可以是下列其中一個值:
VP_MODE_TV_PLAYBACK
描述影片播放的最佳欄位集,並顯示閃爍和過度掃描顯示。
VP_MODE_WIN_GRAPHICS
描述最適合 Windows 顯示器的顯示設定,其中最大閃爍篩選和任何過度掃描顯示都會關閉。
dwTVStandard
這是目前的世界電視標準。 這個成員對VP_COMMAND_SET和VP_COMMAND_GET命令都有效,而且可以是下列其中一個值:
VP_TV_STANDARD_NTSC_M
VP_TV_STANDARD_NTSC_M_J
VP_TV_STANDARD_NTSC_433
VP_TV_STANDARD_PAL_B
VP_TV_STANDARD_PAL_D
VP_TV_STANDARD_PAL_G
VP_TV_STANDARD_PAL_H
VP_TV_STANDARD_PAL_I
VP_TV_STANDARD_PAL_M
VP_TV_STANDARD_PAL_N
VP_TV_STANDARD_PAL_60
VP_TV_STANDARD_SECAM_B
VP_TV_STANDARD_SECAM_D
VP_TV_STANDARD_SECAM_G
VP_TV_STANDARD_SECAM_H
VP_TV_STANDARD_SECAM_K
VP_TV_STANDARD_SECAM_K1
VP_TV_STANDARD_SECAM_L
VP_TV_STANDARD_SECAM_L1
VP_TV_STANDARD_WIN_VGA
dwAvailableModes
指出裝置能夠執行的播放模式。 這個成員只適用於 VP_COMMAND_GET 命令,而且可以是下列值的位 OR:
VP_MODE_TV_PLAYBACK
VP_MODE_WIN_GRAPHICS
dwAvailableTVStandard
指定所有可用的世界電視標準。 這個成員只適用於 VP_COMMAND_GET 命令,而且可以是下列值的位 OR:
VP_TV_STANDARD_NTSC_M
VP_TV_STANDARD_NTSC_M_J
VP_TV_STANDARD_NTSC_433
VP_TV_STANDARD_PAL_B
VP_TV_STANDARD_PAL_D
VP_TV_STANDARD_PAL_G
VP_TV_STANDARD_PAL_H
VP_TV_STANDARD_PAL_I
VP_TV_STANDARD_PAL_M
VP_TV_STANDARD_PAL_N
VP_TV_STANDARD_PAL_60
VP_TV_STANDARD_SECAM_B
VP_TV_STANDARD_SECAM_D
VP_TV_STANDARD_SECAM_G
VP_TV_STANDARD_SECAM_H
VP_TV_STANDARD_SECAM_K
VP_TV_STANDARD_SECAM_K1
VP_TV_STANDARD_SECAM_L
VP_TV_STANDARD_SECAM_L1
VP_TV_STANDARD_WIN_VGA
dwFlickerFilter
這是百分比中十分之一的值,表示閃爍篩選狀態。 這個成員可以是介於 [0,1000] 之間的值,而且對VP_COMMAND_GET和VP_COMMAND_SET有效。
dwOverScanX
這是百分比中十分之一的值,表示 x 中的過度掃描數量。 這個成員可以是介於 [0,1000] 之間的值,而且對VP_COMMAND_GET和VP_COMMAND_SET有效。
dwOverScanY
這是百分比中十分之一的值,表示 y 中的過度掃描量。 這個成員可以是介於 [0,1000] 之間的值,而且對VP_COMMAND_GET和VP_COMMAND_SET有效。
dwMaxUnscaledX
這是電視可以顯示的最大 x 解析度,而不需要硬體調整視訊影像。 當 dwCommand VP_COMMAND_GET時,迷你埠驅動程序必須在此成員中設定值。 此成員對VP_COMMAND_SET無效。
dwMaxUnscaledY
這是電視可以顯示的最大 Y 解析度,而不需要硬體調整視訊影像。 當 dwCommand VP_COMMAND_GET時,迷你埠驅動程序必須在此成員中設定值。 此成員對VP_COMMAND_SET無效。
dwPositionX
這是硬體用來判斷電視上影像目前 x 位置的值。 這個成員是以圖元指定,而且適用於VP_COMMAND_GET和VP_COMMAND_SET。
dwPositionY
這是硬體用來判斷電視上影像目前 Y 位置的值。 這個成員是在掃描行中指定,而且適用於VP_COMMAND_GET和VP_COMMAND_SET。
dwBrightness
這是指出電視亮度設定的百分比值。 這個成員可以是介於 [0,100] 之間的值,而且對 VP_COMMAND_GET 和 VP_COMMAND_SET 有效。
dwContrast
這是指出電視上對比設定的百分比值。 這個成員可以是介於 [0,100] 之間的值,而且對 VP_COMMAND_GET 和 VP_COMMAND_SET 有效。
dwCPType
指定裝置支援的複製保護類型。 這個成員適用於VP_COMMAND_SET和VP_COMMAND_GET命令,而且可以CP_TYPE_APS_TRIGGER。
dwCPCommand
這是複製保護命令。 此成員僅適用於 VP_COMMAND_SET 命令,而且可以是下列其中一個值:
VP_CP_CMD_ACTIVATE
迷你埠驅動程式應該開啟複製保護,並在 dwCPKey 中產生並傳回唯一的複製保護密鑰。
VP_CP_CMD_CHANGE
如果 dwCPKey 中的複製保護金鑰有效,迷你埠驅動程式應該根據 bCP_APSTriggerBits中的觸發程式數據變更複製保護。
VP_CP_CMD_DEACTIVATE
如果 dwCPKey 中的複製保護密鑰有效,迷你埠驅動程式應該關閉複製保護。
dwCPStandard
這是可用的複製保護類型的電視標準。 這個成員只適用於 VP_COMMAND_GET 命令,而且可以是下列值的位 OR:
VP_TV_STANDARD_NTSC_M
VP_TV_STANDARD_NTSC_M_J
VP_TV_STANDARD_NTSC_433
VP_TV_STANDARD_PAL_B
VP_TV_STANDARD_PAL_D
VP_TV_STANDARD_PAL_G
VP_TV_STANDARD_PAL_H
VP_TV_STANDARD_PAL_I
VP_TV_STANDARD_PAL_M
VP_TV_STANDARD_PAL_N
VP_TV_STANDARD_PAL_60
VP_TV_STANDARD_SECAM_B
VP_TV_STANDARD_SECAM_D
VP_TV_STANDARD_SECAM_G
VP_TV_STANDARD_SECAM_H
VP_TV_STANDARD_SECAM_K
VP_TV_STANDARD_SECAM_K1
VP_TV_STANDARD_SECAM_L
VP_TV_STANDARD_SECAM_L1
VP_TV_STANDARD_WIN_VGA
dwCPKey
這是驅動程式產生的複製保護密鑰,此金鑰對驅動程式的這個實例而言是唯一的。 這個成員只適用於 VP_COMMAND_SET 命令。 當 dwCPCommand 設定為 VP_CP_CMD_ACTIVATE 時,迷你埠驅動程式會產生並傳回此密鑰。 當 dwCPCommand 字段是VP_CP_CMD_DEACTIVATE或VP_CP_CMD_CHANGE時,呼叫端必須設定此索引鍵。 如果呼叫端設定不正確的金鑰,驅動程式不得變更目前的複製保護設定。
bCP_APSTriggerBits
指定 (APS) 觸發程式位數據的 DVD 模擬保護系統。 位零和1有效。 這個成員只適用於 VP_COMMAND_SET 命令。
bOEMCopyProtection[256]
OEM 特定的複製保護數據。 這個成員適用於VP_COMMAND_SET和VP_COMMAND_GET命令。
規格需求
需求 | 值 |
---|---|
標頭 | tvout.h (包含 Tvout.h) |