KSPROPERTY_CAMERACONTROL_EXTENDED_FOCUSMODE

A propriedade do modo de foco controla os modos de foco automático, manual e predefinido da câmera.

Tabela de Resumo de Uso

Get Set Destino Tipo de descritor de propriedade Tipo de valor da propriedade

Yes

Yes

Filtrar

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 da propriedade.

O membro Capability do KSCAMERA_EXTENDEDPROP_HEADER contém uma combinação OR bit a bit de uma ou mais das seguintes opções de processamento de vídeo.

Modo de processamento e foco Descrição
KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_AUTO O driver de câmera usa sua própria lógica de processamento para vídeo.
KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_MANUAL O driver de 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.
KSCAMERA_EXTENDEDPROP_FOCUS_CONTINUOUS Nenhum conjunto de pontos focal convergente.
KSCAMERA_EXTENDEDPROP_FOCUS_RANGE_MACRO Convergência focal do intervalo de macros.
KSCAMERA_EXTENDEDPROP_FOCUS_RANGE_NORMAL Convergência focal de intervalo normal.
KSCAMERA_EXTENDEDPROP_FOCUS_RANGE_FULLRANGE Convergência focal de intervalo completo.
KSCAMERA_EXTENDEDPROP_FOCUS_RANGE_INFINITY Convergência focal de intervalo infinito.
KSCAMERA_EXTENDEDPROP_FOCUS_RANGE_HYPERFOCAL Intervalo hiperfocal.

O membro Flags do KSCAMERA_EXTENDEDPROP_HEADER contém o sinalizador de processamento de vídeo definido atualmente para a câmera. Se KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_AUTO configuração puder ser combinada com KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_LOCK.

Esse controle de propriedade é assíncrono e cancelável.

Comentários

Modos de processamento

KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_AUTO

Esse sinalizador indica que a operação de foco automático convergiu quando o evento de conclusão é disparado. Após a conclusão e quando esse sinalizador não for combinado com KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_LOCK, o foco poderá divergir e o driver da câmera poderá continuar tentando convergência. Se o sinalizador KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_LOCK for incluído, o foco será bloqueado para a primeira convergência e não será alterado até que um novo comando de foco seja recebido.

O bloqueio, sem combinar o modo Automático, um controle já bloqueado deve ser tratado como não operacional pelo driver da câmera. O bloqueio, em combinação com o modo Automático, um controle já bloqueado deve disparar uma nova convergência.

Esse sinalizador é mutuamente exclusivo com os sinalizadores KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_MANUAL e KSCAMERA_EXTENDEDPROP_FOCUS_CONTINUOUS.

KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_MANUAL

Manual indica que, para esse processamento de vídeo, os valores específicos são fornecidos. Valores específicos são fornecidos ao driver.

Esse sinalizador não deve ser combinado com KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_AUTO, KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_LOCK ou KSCAMERA_EXTENDEDPROP_FOCUS_CONTINUOUS.

KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_LOCK

Quando esse sinalizador é definido sem um sinalizador de KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_AUTO correspondente, espera-se que o driver da câmera bloqueie o estado de foco atual e dispare o evento de conclusão depois que o foco estiver bloqueado. O driver da câmera não deve variar o estado de foco até que um novo comando de foco seja recebido. Se KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_AUTO combinado esse sinalizador, o driver da câmera convergirá no foco automático e bloqueará o foco para esse ponto convergido e, em seguida, disparará o evento de conclusão. Esse sinalizador não deve ser combinado com KSCAMERA_EXTENDEDPROP_FOCUS_CONTINUOUS ou KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_MANUAL.

Esse sinalizador pode não ser especificado com um sinalizador de intervalo para o controle de foco, a menos que seja combinado com KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_AUTO. Nesse caso, o foco é executado usando o sinalizador de intervalo para determinar onde tentar a verificação de foco automático. Em seguida, após a convergência, a configuração de foco é bloqueada e o evento de conclusão é acionado.

KSCAMERA_EXTENDEDPROP_FOCUS_CONTINUOUS

Esse sinalizador indica que o foco é contínuo. Nesse caso, não há um ponto de convergência único para o controle de foco. O driver deve aceitar essa solicitação e concluir a operação assíncrona imediatamente.

Esse sinalizador não deve ser combinado com KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_AUTO, KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_LOCK ou KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_MANUAL.

Esse modo é necessário para todos os drivers.

KSCAMERA_EXTENDEDPROP_FOCUS_RANGE_MACRO

Esse sinalizador indica que a convergência de foco deve ser executada para o intervalo de macros. O intervalo focal exato é determinado pelo driver. Esse sinalizador pode ser combinado com KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_AUTO e KSCAMERA_EXTENDEDPROP_FOCUS_CONTINUOUS.

KSCAMERA_EXTENDEDPROP_FOCUS_RANGE_NORMAL

Esse sinalizador indica que a convergência de foco deve ser executada para o intervalo normal. O intervalo focal exato é determinado pelo driver. Esse sinalizador pode ser combinado com KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_AUTO e KSCAMERA_EXTENDEDPROP_FOCUS_CONTINUOUS.

KSCAMERA_EXTENDEDPROP_FOCUS_RANGE_FULLRANGE

Esse sinalizador indica que a convergência de foco deve ser executada para o intervalo completo. O intervalo focal exato é determinado pelo driver. Esse sinalizador pode ser combinado com KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_AUTO e KSCAMERA_EXTENDEDPROP_FOCUS_CONTINUOUS.

Esse modo é necessário para todos os drivers.

KSCAMERA_EXTENDEDPROP_FOCUS_RANGE_INFINITY

Esse sinalizador indica que a convergência de foco deve ser executada para o intervalo infinito. O intervalo focal exato é determinado pelo driver. Esse sinalizador pode ser combinado com KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_AUTO e KSCAMERA_EXTENDEDPROP_FOCUS_CONTINUOUS.

KSCAMERA_EXTENDEDPROP_FOCUS_RANGE_HYPERFOCAL

Esse sinalizador indica que a convergência de foco deve ser executada para o intervalo hiperfocal. O intervalo focal exato é determinado pelo driver. Esse sinalizador pode ser combinado com KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_AUTO e KSCAMERA_EXTENDEDPROP_FOCUS_CONTINUOUS.

Obtendo a propriedade

Ao responder a uma solicitação de KSPROPERTY_TYPE_GET, o driver define os membros do KSCAMERA_EXTENDEDPROP_HEADER para o seguinte.

Membro Valor
Versão 1
PinId KSCAMERA_EXTENDEDPROP_FILTERSCOPE (0xFFFFFFFF).
Tamanho

sizeof(KSCAMERA_EXTENDEDPROP_HEADER) + sizeof(KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING)

Result 0
Funcionalidade

KSCAMERA_EXTENDEDPROP_CAPS_ASYNCCONTROL | KSCAMERA_EXTENDEDPROP_CAPS_CANCELLABLE |

(Com suporte para processamento de vídeo e modos de foco)

Flags O processamento de vídeo atual e o modo de foco.

Se nenhum sinalizador de intervalo de foco tiver sido definido anteriormente, o driver definirá Sinalizadores como KSCAMERA_EXTENDEDPROP_FOCUS_RANGE_FULLRANGE juntamente com 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 foco.

O valor VideoProp.Value.ull deve conter a configuração de exposição atual quando o modo é KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_AUTO.

Definindo a propriedade

Quando a propriedade for definida, uma solicitação KSPROPERTY_TYPE_SET, o membro Flags de KSCAMERA_EXTENDEDPROP_HEADER conterá o modo de foco a ser definido. O membro VideoProc.Value de KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING deve ser ignorado quando Flags contém os sinalizadores KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_AUTO, KSCAMERA_EXTENDEDPROP_VIDEOPROCFLAG_LOCK KSCAMERA_EXTENDEDPROP_FOCUS_CONTINUOUS.

Requisitos

Versão

Disponível a partir do Windows 8.1.

parâmetro

Ksmedia.h (inclua Ksmedia.h)

Confira também

KSCAMERA_EXTENDEDPROP_HEADER

KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING