KSPROPERTY_CAMERACONTROL_EXTENDED_WHITEBALANCEMODE
A propriedade de modo de equilíbrio de branco especifica se o processamento automático ocorre para o equilíbrio de branco ou se um valor de temperatura manual é usado em vez disso.
Tabela do resumo de uso
Obter | Definir | Destino | Tipo de descritor da propriedade | Tipo de valor de propriedade |
---|---|---|---|---|
Sim | Sim | Filter | KSPROPERTY | KSCAMERA_EXTENDEDPROP_HEADER |
O valor da propriedade (dados de operação) contém uma estrutura KSCAMERA_EXTENDEDPROP_HEADER e uma estrutura KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING.
O tamanho total dos dados da propriedade é sizeof(KSCAMERA_EXTENDEDPROP_HEADER) + sizeof(KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING). O membro Size de KSCAMERA_EXTENDEDPROP_HEADER é definido como esse tamanho total de dados de propriedade.
O membro Capability de KSCAMERA_EXTENDEDPROP_HEADER contém uma combinação OR bit a bit de uma ou mais das opções de processamento de vídeo a seguir.
Modo de processamento | Descrição |
---|---|
KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_AUTO | O driver da câmera usa sua própria lógica de processamento para vídeo. |
KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_MANUAL | O driver da câmera usa um método de processamento predefinido ou um método baseado em temperatura. |
KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_LOCK | O método de processamento de vídeo atual está bloqueado. |
O membro Flags de KSCAMERA_EXTENDEDPROP_HEADER contém o sinalizador de processamento de vídeo definido no momento para a câmera. A configuração KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_AUTO pode ser combinada com KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_LOCK.
Esse controle de propriedade é assíncrono e não cancelável.
Comentários
Modos de processamento
KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_AUTO
Isso indica que o processamento automático é compatível. O driver usará sua lógica interna para otimizar o processamento de vídeo. Para uma solicitação KSPROPERTY_TYPE_GET, o membro VideoProc de KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING deve conter o valor determinado pelo driver atual para o processamento de vídeo. No caso do Equilíbrio de Branco, deve conter a temperatura atual em Kelvin. O membro Mode é ignorado para operação automática.
Esse sinalizador pode ser combinado com KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_LOCK como um valor OR bit a bit. Quando bloqueado, o comportamento esperado do driver da câmera é convergir para o equilíbrio de branco e bloquear o valor do equilíbrio de branco para o valor convergido, não tentando equilibrar o branco de forma automática novamente, até que um novo comando de equilíbrio de branco seja recebido.
Travando, sem combinar o modo Automático, um controle já bloqueado deve ser tratado como um no-op pelo driver da câmera. O bloqueio, em combinação com o modo Automático, um controle já bloqueado deve desencadear uma nova convergência.
KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_MANUAL
Manual indica que, para esse processamento de vídeo, os valores específicos são fornecidos. No caso do equilíbrio de branco, se o membro Mode de KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING indicar KSCAMERA_EXTENDEDPROP_WHITEBALANCE_TEMPERATURE, o VideoProc.Value.ul conterá o valor de temperatura em graus Kelvin.
KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_LOCK O sinalizador de opção de bloqueio indica que o processamento de vídeo atual está bloqueado para qualquer valor programado no momento. Por exemplo, um aplicativo pode solicitar o modo automático até que um equilíbrio de branco específico seja determinado. Nesse ponto, o aplicativo decidirá criar uma sequência de fotos, todas com a mesma definição de equilíbrio de branco. Nesse caso, o aplicativo pode especificar o sinalizador KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_LOCK. O driver da câmera garantirá que as informações de equilíbrio de branco não sejam alteradas nas diferentes fotos.
Como obter a propriedade
Ao responder a uma solicitação KSPROPERTY_TYPE_GET, o driver define os membros de KSCAMERA_EXTENDEDPROP_HEADER como a seguir.
Membro | Valor |
---|---|
Versão | 1 |
PinId | KSCAMERA_EXTENDEDPROP_FILTERSCOPE (0xFFFFFFFF) |
Tamanho | sizeof(KSCAMERA_EXTENDEDPROP_HEADER) + sizeof(KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING) |
Result | 0 |
Funcionalidade | OR KSCAMERA_EXTENDEDPROP_CAPS_ASYNCCONTROL com (modo de processamento de vídeo compatível) |
Sinalizadores | O modo de processamento de vídeo atual. |
Se nenhum modo de equilíbrio de branco tiver sido definido anteriormente, o driver definirá Sinalizadores como KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_AUTO (padrão). Os membros da estrutura KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING que segue KSCAMERA_EXTENDEDPROP_HEADER são definidos de acordo com os requisitos do modo de processamento.
Definição da propriedade
Quando a propriedade é definida, uma solicitação KSPROPERTY_TYPE_SET, o membro Flags de KSCAMERA_EXTENDEDPROP_HEADER conterá o modo de equilíbrio de branco a ser definido. O membro VideoProc.Value de KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING deve ser ignorado quando Sinalizadores contém o sinalizador do modo KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_AUTO.
Requisitos
Versão: disponível a partir do Windows 8.1
Cabeçalho: ksmedia.h (incluir Ksmedia.h)