VIDEOPARAMETERS-Struktur (tvout.h)
Der Videominiporttreiber empfängt einen Zeiger auf eine VIDEOPARAMETERS-Struktur im InputBuffer-Member einer VIDEO_REQUEST_PACKET , wenn die IOCTL-Anforderung IOCTL_VIDEO_HANDLE_VIDEOPARAMETERS wird. Je nach dwCommand-Member der VIDEOPARAMETERS-Struktur sollte der Miniporttreiber den Fernsehanschluss und die Kopierschutzfunktionen des Geräts abrufen oder festlegen.
Syntax
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;
Member
Guid
Gibt den Globally Unique Identifier (GUID) für diese Struktur {02C62061-1097-11d1-920F-00A024DF156E} an. Ein Videominiporttreiber muss die GUID am Anfang der Struktur überprüfen, bevor die Struktur verarbeitet wird.
dwOffset
Ist reserviert und sollte vom Video-Miniporttreiber ignoriert werden.
dwCommand
Gibt die aktion an, die vom Treiber ausgeführt werden soll. Dieser Member kann einer der folgenden Werte sein:
VP_COMMAND_GET
Der Miniporttreiber sollte alle Tv-Connector-Funktionen, aktuelle Tv-Connector-Einstellungen, Kopierschutzfunktionen und aktuelle Kopierschutzeinstellungen des Geräts zurückgeben, indem die entsprechenden Flags in dwFlags festgelegt und die Werte der Member festgelegt werden, die diesen festgelegten Flags entsprechen.
VP_COMMAND_SET
Der Miniporttreiber sollte den TV-Connector und die Kopierschutzhardware entsprechend den Elementen dieser Struktur festlegen, die den in dwFlags festgelegten Flags entsprechen.
dwFlags
Gibt an, welche Member dieser Struktur gültige Daten enthalten. Wenn dwCommand VP_COMMAND_GET ist, sollte der Treiber die entsprechenden Bits in diesem Member festlegen, um anzugeben, in welchen entsprechenden Membern er gültige Daten zurückgegeben hat. Wenn dwCommand VP_COMMAND_SET ist, sollte der Treiber die Funktionalität auf der Hardware entsprechend den Werten in den Membern festlegen, die den in diesem Member festgelegten Bits entsprechen. Dieser Member kann ein bitweiser OR der werte sein, die in der ersten Spalte der folgenden Tabelle aufgeführt sind.
Flag | Entsprechende Mitglieder | Befehle |
---|---|---|
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
Gibt den aktuellen Wiedergabemodus an. Dieser Member ist sowohl für die befehle VP_COMMAND_SET als auch VP_COMMAND_GET gültig und kann einer der folgenden Werte sein:
VP_MODE_TV_PLAYBACK
Beschreibt einen optimalen Satz von Feldern für die Videowiedergabe, wobei der Flimmerfilter ausgeschaltet und die Überscananzeige aktiviert ist.
VP_MODE_WIN_GRAPHICS
Beschreibt die Anzeigeeinstellungen, die für die Windows-Anzeige optimal sind, wobei der maximale Flimmerfilter aktiviert und alle Überscananzeigen deaktiviert sind.
dwTVStandard
Ist der aktuelle Weltfernsehstandard. Dieser Member ist sowohl für die befehle VP_COMMAND_SET als auch VP_COMMAND_GET gültig und kann einer der folgenden Werte sein:
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
Gibt die Wiedergabemodi an, zu der das Gerät in der Lage ist. Dieser Member ist nur für den befehl VP_COMMAND_GET gültig und kann ein bitweiser OR der folgenden Werte sein:
VP_MODE_TV_PLAYBACK
VP_MODE_WIN_GRAPHICS
dwAvailableTVStandard
Gibt alle verfügbaren Weltfernsehstandards an. Dieser Member ist nur für den befehl VP_COMMAND_GET gültig und kann ein bitweiser OR der folgenden Werte sein:
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
Ist ein Wert in zehntel Prozent, der den Flimmerfilterzustand angibt. Dieser Member kann ein Wert zwischen [0,1000] sein und ist sowohl für VP_COMMAND_GET als auch für VP_COMMAND_SET gültig.
dwOverScanX
Ist ein Wert in zehntel Prozent, der die Menge des Überscans in x angibt. Dieser Member kann ein Wert zwischen [0,1000] sein und ist sowohl für VP_COMMAND_GET als auch für VP_COMMAND_SET gültig.
dwOverScanY
Ist ein Wert in zehntel Prozent, der die Menge der Überscans in y angibt. Dieser Member kann ein Wert zwischen [0,1000] sein und ist sowohl für VP_COMMAND_GET als auch für VP_COMMAND_SET gültig.
dwMaxUnscaledX
Ist die maximale x-Auflösung , die der Fernseher anzeigen kann, ohne dass die Hardware das Videobild skalieren muss. Der Miniporttreiber muss einen Wert in diesem Member festlegen, wenn dwCommand VP_COMMAND_GET ist. Dieser Member ist für VP_COMMAND_SET ungültig.
dwMaxUnscaledY
Ist die maximale y-Auflösung , die der Fernseher anzeigen kann, ohne dass die Hardware das Videobild skalieren muss. Der Miniporttreiber muss einen Wert in diesem Member festlegen, wenn dwCommand VP_COMMAND_GET ist. Dieser Member ist für VP_COMMAND_SET ungültig.
dwPositionX
Der Wert, der von der Hardware verwendet wird, um die aktuelle x Position des Bilds auf dem Fernseher zu bestimmen. Dieses Element ist in Pixel angegeben und gilt sowohl für VP_COMMAND_GET als auch für VP_COMMAND_SET.
dwPositionY
Der Wert, der von der Hardware verwendet wird, um die aktuelle y-Position des Bilds auf dem Fernseher zu bestimmen. Dieses Element wird in Scanzeilen angegeben und gilt sowohl für VP_COMMAND_GET als auch für VP_COMMAND_SET.
dwBrightness
Ist ein Prozentwert, der die Helligkeitseinstellung auf dem Fernseher angibt. Dieser Member kann ein Wert zwischen [0,100] sein und ist sowohl für VP_COMMAND_GET als auch für VP_COMMAND_SET gültig.
dwContrast
Ist ein Prozentwert, der die Kontrasteinstellung auf dem Fernseher angibt. Dieser Member kann ein Wert zwischen [0,100] sein und ist sowohl für VP_COMMAND_GET als auch für VP_COMMAND_SET gültig.
dwCPType
Gibt den Typ des Kopierschutzes an, der vom Gerät unterstützt wird. Dieser Member ist sowohl für die befehle VP_COMMAND_SET als auch VP_COMMAND_GET gültig und kann CP_TYPE_APS_TRIGGER werden.
dwCPCommand
Ist der Kopierschutzbefehl. Dieser Member ist nur für den befehl VP_COMMAND_SET gültig und kann einer der folgenden Werte sein:
VP_CP_CMD_ACTIVATE
Der Miniporttreiber sollte den Kopierschutz aktivieren und einen eindeutigen Kopierschutzschlüssel in dwCPKey generieren und zurückgeben.
VP_CP_CMD_CHANGE
Wenn der Kopierschutzschlüssel in dwCPKey gültig ist, sollte der Miniporttreiber den Kopierschutz basierend auf den Triggerdaten in bCP_APSTriggerBits ändern.
VP_CP_CMD_DEACTIVATE
Wenn der Kopierschutzschlüssel in dwCPKey gültig ist, sollte der Miniporttreiber den Kopierschutz deaktivieren.
dwCPStandard
Sind die TV-Standards, für die Kopierschutztypen verfügbar sind. Dieser Member ist nur für den befehl VP_COMMAND_GET gültig und kann ein bitweiser OR der folgenden Werte sein:
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
Ist ein vom Treiber generierter Kopierschutzschlüssel, der für diese instance des Treibers eindeutig ist. Dieser Member ist nur für den Befehl VP_COMMAND_SET gültig. Der Miniporttreiber generiert und gibt diesen Schlüssel zurück, wenn dwCPCommand auf VP_CP_CMD_ACTIVATE festgelegt ist. Der Aufrufer muss diesen Schlüssel festlegen, wenn das DwCPCommand-Feld entweder VP_CP_CMD_DEACTIVATE oder VP_CP_CMD_CHANGE ist. Wenn der Aufrufer einen falschen Schlüssel festlegt, darf der Treiber die aktuellen Kopierschutzeinstellungen nicht ändern.
bCP_APSTriggerBits
Gibt APS-Triggerdaten (DVD Analog Protection System) an. Die Bits null und 1 sind gültig. Dieser Member ist nur für den Befehl VP_COMMAND_SET gültig.
bOEMCopyProtection[256]
OEM-spezifische Kopierschutzdaten. Dieser Member ist sowohl für die befehle VP_COMMAND_SET als auch VP_COMMAND_GET gültig.
Anforderungen
Anforderung | Wert |
---|---|
Header | tvout.h (einschließlich Tvout.h) |