Compartilhar via


Estrutura VIDEOPARAMETERS (tvout.h)

O driver de miniporto de vídeo recebe um ponteiro para uma estrutura VIDEOPARAMETERS no membro InputBuffer de um VIDEO_REQUEST_PACKET quando a solicitação IOCTL é IOCTL_VIDEO_HANDLE_VIDEOPARAMETERS. Dependendo do membro dwCommand da estrutura VIDEOPARAMETERS, o driver de miniport deve obter ou definir os recursos de proteção de cópia e conector de televisão do dispositivo.

Sintaxe

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;

Membros

Guid

Especifica o GUID (identificador global exclusivo) para essa estrutura {02C62061-1097-11d1-920F-00A024DF156E}. Um driver de miniporto de vídeo deve verificar o GUID no início da estrutura antes de processar a estrutura.

dwOffset

É reservado e deve ser ignorado pelo driver de miniporto de vídeo.

dwCommand

Indica a ação a ser executada pelo driver. Esse membro pode ser um dos seguintes valores:

VP_COMMAND_GET

O driver de miniporte deve retornar todos os recursos do conector de TV do dispositivo, as configurações atuais do conector de TV, os recursos de proteção de cópia e as configurações atuais de proteção de cópia definindo os sinalizadores apropriados em dwFlags e definindo os valores dos membros que correspondem a esses sinalizadores definidos.

VP_COMMAND_SET

O driver de miniporte deve definir o conector de TV e copiar o hardware de proteção de acordo com os membros dessa estrutura que correspondem aos sinalizadores definidos em dwFlags.

dwFlags

Indica quais membros dessa estrutura contêm dados válidos. Quando dwCommand é VP_COMMAND_GET, o driver deve definir os bits apropriados neste membro para indicar em quais membros correspondentes ele retornou dados válidos. Quando dwCommand é VP_COMMAND_SET, o driver deve definir a funcionalidade no hardware de acordo com os valores nos membros que correspondem aos bits definidos neste membro. Esse membro pode ser um OR bit a bit dos valores listados na primeira coluna da tabela a seguir.

Sinalizador Membros correspondentes 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 o modo de reprodução atual. Esse membro é válido para os comandos VP_COMMAND_SET e VP_COMMAND_GET e pode ser um dos seguintes valores:

VP_MODE_TV_PLAYBACK

Descreve um conjunto ideal de campos para reprodução de vídeo, com o filtro de cintilação desativado e a exibição overscan ativada.

VP_MODE_WIN_GRAPHICS

Descreve as configurações de exibição ideais para exibição do Windows, com o filtro máximo de cintilação ativado e qualquer exibição overscan desativada.

dwTVStandard

É o atual padrão mundial de televisão. Esse membro é válido para os comandos VP_COMMAND_SET e VP_COMMAND_GET e pode ser um dos seguintes 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 os modos de reprodução dos quais o dispositivo é capaz. Esse membro só é válido para o comando VP_COMMAND_GET e pode ser um OR bit a bit dos seguintes valores:

VP_MODE_TV_PLAYBACK

VP_MODE_WIN_GRAPHICS

dwAvailableTVStandard

Especifica todos os padrões de televisão mundiais disponíveis. Esse membro só é válido para o comando VP_COMMAND_GET e pode ser um OR bit a bit dos seguintes 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

É um valor em décimos de uma porcentagem que indica o estado do filtro de cintilação. Esse membro pode ser um valor entre [0.1000] e é válido para VP_COMMAND_GET e VP_COMMAND_SET.

dwOverScanX

É um valor em décimos de um percentual que indica a quantidade de overscan em x. Esse membro pode ser um valor entre [0.1000] e é válido para VP_COMMAND_GET e VP_COMMAND_SET.

dwOverScanY

É um valor em décimos de um percentual que indica a quantidade de overscan em y. Esse membro pode ser um valor entre [0.1000] e é válido para VP_COMMAND_GET e VP_COMMAND_SET.

dwMaxUnscaledX

É a resolução x máxima que a TV pode exibir sem que o hardware dimensione a imagem de vídeo. O driver de miniporta deve definir um valor nesse membro quando dwCommand é VP_COMMAND_GET. Esse membro é inválido para VP_COMMAND_SET.

dwMaxUnscaledY

É a resolução máxima y que a TV pode exibir sem que o hardware dimensione a imagem de vídeo. O driver de miniporta deve definir um valor nesse membro quando dwCommand é VP_COMMAND_GET. Esse membro é inválido para VP_COMMAND_SET.

dwPositionX

É o valor usado pelo hardware para determinar a posição x atual da imagem na TV. Esse membro é especificado em pixels e é válido para VP_COMMAND_GET e VP_COMMAND_SET.

dwPositionY

É o valor usado pelo hardware para determinar a posição y atual da imagem na TV. Esse membro é especificado em linhas de verificação e é válido para VP_COMMAND_GET e VP_COMMAND_SET.

dwBrightness

É um valor percentual que indica a configuração de brilho na TV. Esse membro pode ser um valor entre [0,100] e é válido para VP_COMMAND_GET e VP_COMMAND_SET.

dwContrast

É um valor percentual que indica a configuração de contraste na TV. Esse membro pode ser um valor entre [0,100] e é válido para VP_COMMAND_GET e VP_COMMAND_SET.

dwCPType

Especifica o tipo de proteção de cópia compatível com o dispositivo. Esse membro é válido para os comandos VP_COMMAND_SET e VP_COMMAND_GET e pode ser CP_TYPE_APS_TRIGGER.

dwCPCommand

É o comando de proteção de cópia. Esse membro só é válido para o comando VP_COMMAND_SET e pode ser um dos seguintes valores:

VP_CP_CMD_ACTIVATE

O driver de miniporta deve ativar a proteção de cópia e gerar e retornar uma chave de proteção de cópia exclusiva em dwCPKey.

VP_CP_CMD_CHANGE

Se a chave de proteção de cópia em dwCPKey for válida, o driver de miniporte deverá alterar a proteção de cópia com base nos dados de gatilho no bCP_APSTriggerBits.

VP_CP_CMD_DEACTIVATE

Se a chave de proteção de cópia em dwCPKey for válida, o driver de miniporte deverá desativar a proteção de cópia.

dwCPStandard

São os padrões de TV para os quais os tipos de proteção de cópia estão disponíveis. Esse membro só é válido para o comando VP_COMMAND_GET e pode ser um OR bit a bit dos seguintes 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

É uma chave de proteção de cópia gerada pelo driver que é exclusiva para essa instância do driver. Esse membro é válido somente para o comando VP_COMMAND_SET. O driver de miniporta gera e retorna essa chave quando dwCPCommand é definido como VP_CP_CMD_ACTIVATE. O chamador deve definir essa chave quando o campo dwCPCommand for VP_CP_CMD_DEACTIVATE ou VP_CP_CMD_CHANGE. Se o chamador definir uma chave incorreta, o driver não deverá alterar as configurações atuais de proteção de cópia.

bCP_APSTriggerBits

Especifica dados de bits de gatilho do APS (sistema de proteção analógico) de DVD. Os bits zero e 1 são válidos. Esse membro é válido somente para o comando VP_COMMAND_SET.

bOEMCopyProtection[256]

Dados de proteção de cópia específicos do OEM. Esse membro é válido para os comandos VP_COMMAND_SET e VP_COMMAND_GET.

Requisitos

Requisito Valor
Cabeçalho tvout.h (inclua Tvout.h)

Confira também

IOCTL_VIDEO_HANDLE_VIDEOPARAMETERS

VIDEO_REQUEST_PACKET