Estructura VIDEOPARAMETERS (tvout.h)
El controlador de minipuerto de vídeo recibe un puntero a una estructura VIDEOPARAMETERS en el miembro InputBuffer de un VIDEO_REQUEST_PACKET cuando se IOCTL_VIDEO_HANDLE_VIDEOPARAMETERS la solicitud IOCTL. Según el miembro dwCommand de la estructura VIDEOPARAMETERS, el controlador de minipuerto debe obtener o establecer el conector de televisión y las capacidades de protección de copia del dispositivo.
Sintaxis
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;
Miembros
Guid
Especifica el identificador único global (GUID) de esta estructura {02C62061-1097-11d1-920F-00A024DF156E}. Un controlador de minipuerto de vídeo debe comprobar el GUID al principio de la estructura antes de procesar la estructura.
dwOffset
Está reservado y el controlador de minipuerto de vídeo debe omitirlo.
dwCommand
Indica la acción que va a realizar el controlador. Este miembro puede ser uno de los siguientes valores:
VP_COMMAND_GET
El controlador de minipuerto debe devolver todas las funcionalidades del conector de TV del dispositivo, la configuración actual del conector de TV, las funcionalidades de protección de copia y la configuración de protección de copia actual estableciendo las marcas adecuadas en dwFlags y estableciendo los valores de los miembros que corresponden a esas marcas establecidas.
VP_COMMAND_SET
El controlador de minipuerto debe establecer el conector de TV y copiar el hardware de protección según los miembros de esta estructura que correspondan a las marcas establecidas en dwFlags.
dwFlags
Indica qué miembros de esta estructura contienen datos válidos. Cuando dwCommand es VP_COMMAND_GET, el controlador debe establecer los bits adecuados en este miembro para indicar en qué miembros correspondientes ha devuelto datos válidos. Cuando dwCommand es VP_COMMAND_SET, el controlador debe establecer la funcionalidad en el hardware según los valores de los miembros correspondientes a los bits establecidos en este miembro. Este miembro puede ser un OR bit a bit de los valores enumerados en la primera columna de la tabla siguiente.
Marca | Miembros correspondientes | Comandos |
---|---|---|
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
Especifica el modo de reproducción actual. Este miembro es válido para los comandos VP_COMMAND_SET y VP_COMMAND_GET, y puede ser uno de los siguientes valores:
VP_MODE_TV_PLAYBACK
Describe un conjunto óptimo de campos para la reproducción de vídeo, con el filtro de parpadeo desactivado y la pantalla de sobrescan.
VP_MODE_WIN_GRAPHICS
Describe la configuración de pantalla que es óptima para la pantalla de Windows, con el filtro de parpadeo máximo activado y cualquier pantalla de sobresanscación desactivada.
dwTVStandard
Es el estándar de televisión mundial actual. Este miembro es válido para los comandos VP_COMMAND_SET y VP_COMMAND_GET, y puede ser uno de los siguientes valores:
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
Indica los modos de reproducción de los que es capaz el dispositivo. Este miembro solo es válido para el comando VP_COMMAND_GET y puede ser un OR bit a bit de los siguientes valores:
VP_MODE_TV_PLAYBACK
VP_MODE_WIN_GRAPHICS
dwAvailableTVStandard
Especifica todos los estándares de televisión del mundo disponibles. Este miembro solo es válido para el comando VP_COMMAND_GET y puede ser un OR bit a bit de los siguientes valores:
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
Es un valor en décimas de un porcentaje que indica el estado del filtro parpadeante. Este miembro puede ser un valor entre [0,1000] y es válido para VP_COMMAND_GET y VP_COMMAND_SET.
dwOverScanX
Es un valor en décimo de un porcentaje que indica la cantidad de sobrescscan en x. Este miembro puede ser un valor entre [0,1000] y es válido para VP_COMMAND_GET y VP_COMMAND_SET.
dwOverScanY
Es un valor en décimo de un porcentaje que indica la cantidad de sobrescscan en y. Este miembro puede ser un valor entre [0,1000] y es válido para VP_COMMAND_GET y VP_COMMAND_SET.
dwMaxUnscaledX
Es la resolución x máxima que el televisor puede mostrar sin tener que escalar el hardware la imagen de vídeo. El controlador de minipuerto debe establecer un valor en este miembro cuando dwCommand está VP_COMMAND_GET. Este miembro no es válido para VP_COMMAND_SET.
dwMaxUnscaledY
Es la resolución y máxima que el televisor puede mostrar sin tener la escala de hardware de la imagen de vídeo. El controlador de minipuerto debe establecer un valor en este miembro cuando dwCommand está VP_COMMAND_GET. Este miembro no es válido para VP_COMMAND_SET.
dwPositionX
Es el valor utilizado por el hardware para determinar la posición x actual de la imagen en el televisor. Este miembro se especifica en píxeles y es válido para VP_COMMAND_GET y VP_COMMAND_SET.
dwPositionY
Es el valor utilizado por el hardware para determinar la posición y actual de la imagen en el televisor. Este miembro se especifica en líneas de examen y es válido tanto para VP_COMMAND_GET como para VP_COMMAND_SET.
dwBrightness
Es un valor de porcentaje que indica la configuración de brillo en el televisor. Este miembro puede ser un valor entre [0,100] y es válido para VP_COMMAND_GET y VP_COMMAND_SET.
dwContrast
Es un valor de porcentaje que indica la configuración de contraste en el televisor. Este miembro puede ser un valor entre [0,100] y es válido para VP_COMMAND_GET y VP_COMMAND_SET.
dwCPType
Especifica el tipo de protección de copia compatible con el dispositivo. Este miembro es válido para los comandos VP_COMMAND_SET y VP_COMMAND_GET, y puede ser CP_TYPE_APS_TRIGGER.
dwCPCommand
Es el comando de protección de copia. Este miembro solo es válido para el comando VP_COMMAND_SET y puede ser uno de los siguientes valores:
VP_CP_CMD_ACTIVATE
El controlador de minipuerto debe activar la protección de copia y generar y devolver una clave de protección de copia única en dwCPKey.
VP_CP_CMD_CHANGE
Si la clave de protección de copia de dwCPKey es válida, el controlador de minipuerto debe cambiar la protección de copia en función de los datos del desencadenador en bCP_APSTriggerBits.
VP_CP_CMD_DEACTIVATE
Si la clave de protección de copia de dwCPKey es válida, el controlador de minipuerto debe desactivar la protección de copia.
dwCPStandard
Es los estándares de TV para los que están disponibles los tipos de protección de copia. Este miembro solo es válido para el comando VP_COMMAND_GET y puede ser un OR bit a bit de los siguientes valores:
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
Es una clave de protección de copia generada por el controlador que es única para esta instancia del controlador. Este miembro solo es válido para el comando VP_COMMAND_SET. El controlador de minipuerto genera y devuelve esta clave cuando dwCPCommand está establecido en VP_CP_CMD_ACTIVATE. El autor de la llamada debe establecer esta clave cuando el campo dwCPCommand es VP_CP_CMD_DEACTIVATE o VP_CP_CMD_CHANGE. Si el autor de la llamada establece una clave incorrecta, el controlador no debe cambiar la configuración de protección de copia actual.
bCP_APSTriggerBits
Especifica los datos de bits del desencadenador del sistema de protección analógica de DVD (APS). Los bits cero y 1 son válidos. Este miembro solo es válido para el comando VP_COMMAND_SET.
bOEMCopyProtection[256]
Datos de protección de copia específicos de OEM. Este miembro es válido para los comandos VP_COMMAND_SET y VP_COMMAND_GET.
Requisitos
Requisito | Valor |
---|---|
Header | tvout.h (incluye Tvout.h) |