KSPROPERTY_CAMERACONTROL_EXTENDED_ISO_ADVANCED

KSPROPERTY_CAMERACONTROL_EXTENDED_ISO_ADVANCED é um controle de propriedade estendido que permite mais controle ISO global com mais granularidade.

Tabela de resumo de uso

Escopo Control Tipo

Versão 1

Fixar (Foto)

Assíncronos

O novo sinalizador KSCAMERA_EXTENDEDPROP_ISO_MANUAL é definido em ksmedia_phone.h da seguinte maneira.

#define KSCAMERA_EXTENDEDPROP_ISO_MANUAL          0x0080000000000000

A tabela a seguir contém as descrições e os requisitos para os campos de estrutura KSCAMERA_EXTENDEDPROP_HEADER para o controle KSPROPERTY_CAMERACONTROL_EXTENDED_ISO_ADVANCED.

O Windows 8.1 KS_CAMERACONTROL_EXTENDED_ISO permanece inalterado sem o suporte de ISO manual inteiro. O driver só deve dar suporte ao novo controle KSPROPERTY_CAMERACONTROL_EXTENDED_ISO_ADVANCED. Se ambos os controles tiverem suporte, o pipeline usará como padrão o controle KSPROPERTY_CAMERACONTROL_EXTENDED_ISO_ADVANCED.

Se houver suporte para o controle KSPROPERTY_CAMERACONTROL_EXTENDED_ISO_ADVANCED, os únicos recursos que o driver pode anunciar serão os seguintes.

  • KSCAMERA_EXTENDEDPROP_ISO_AUTO

  • KSCAMERA_EXTENDEDPROP_ISO_MANUAL

  • KSCAMERA_EXTENDEDPROP_CAPS_ASYNCCONTROL

Se o driver anunciar o sinalizador de funcionalidade KSCAMERA_EXTENDEDPROP_ISO_MANUAL, ele também deverá anunciar os intervalos de ISO com suporte no valor Min/Max/Step da propriedade KSCAMERA_EXTENDED_PROP_VIDEOPROCSETTING. Se o driver anunciar um valor Min de 0 e um valor Máximo de 0 ou um valor Step menor que 1, o controle será sinalizado como inutilizável e será rejeitado pelo pipeline.

Se o driver der suporte a KSPROPERTY_CAMERACONTROL_EXTENDED_ISO_ADVANCED e KSPROPERTY_CAMERACONTROL_EXTENDED_ISO, o driver deverá anunciar KSCAMERA_EXTENDEDPROP_ISO_AUTO para KSPROPERTY_CAMERACONTROL_EXTENDED_ISO_ADVANCED e KSPROPERTY_CAMERACONTROL_EXTENDED_ISO. Caso contrário, ambos os controles ISO serão sinalizados como inutilizáveis e rejeitados pelo pipeline do MF.

Se o driver anunciar KSCAMERA_EXTENDEDPROP_ISO_MANUAL em KSPROPERTY_CAMERACONTROL_EXTENDED_ISO_ADVANCED e os valores de KSCAMERA_EXTENDEDPROP_ISO_XXX numéricos em KSPROPERTY_CAMERACONTROL_EXTENDED_ISO, os valores de KSCAMERA_EXTENDEDPROP_ISO_XXX numéricos anunciados em KSPROPERTY_CAMERACONTROL_EXTENDED_ISO devem estar nos intervalos de ISO manuais com suporte anunciados por KSCAMERA_EXTENDEDPROP_ISO_MANUAL. Além disso, todos os valores de KSCAMERA_EXTENDEDPROP_ISO_XXX numéricos nos intervalos manuais com suporte devem ser anunciados por KSPROPERTY_CAMERACONTROL_EXTENDED_ISO. Caso contrário, ambos os controles ISO podem ser sinalizados como inutilizáveis e rejeitados pelo pipeline do MF.

Por exemplo, os recursos de qualquer um dos seguintes podem ser tratados como uma falha catastrófica e o controle pode ser rejeitado pelo pipeline do MF.

  • KSCAMERA_EXTENDEDPROP_ISO_MANUAL (min= 40, max = 240, step = 20), KSCAMERA_EXTENDEDPROP_ISO_50

  • KSCAMERA_EXTENDEDPROP_ISO_MANUAL (min= 40, max = 240, step = 20), KSCAMERA_EXTENDEDPROP_ISO_80

  • KSCAMERA_EXTENDEDPROP_ISO_MANUAL (min= 40, max = 240, step = 20), KSCAMERA_EXTENDEDPROP_ISO_400

As funcionalidades de qualquer uma das opções a seguir são aceitas pelo pipeline do MF.

  • KSCAMERA_EXTENDEDPROP_ISO_MANUAL (min= 40, max = 240, step = 20), KSCAMERA_EXTENDEDPROP_ISO_80, KSCAMERA_EXTENDEDPROP_ISO_100, KSCAMERA_EXTENDEDPROP_ISO_200

  • KSCAMERA_EXTENDEDPROP_ISO_MANUAL (min= 40, max = 240, step = 20)

  • KSCAMERA_EXTENDEDPROP_ISO_80, KSCAMERA_EXTENDEDPROP_ISO_200

Membro Descrição

Versão

Isso deve ser 1,

PinId

Essa deve ser a ID do Pin associada ao pino de foto.

Tamanho

Isso deve ser sizeof(KSCAMERA_EXTENDEDPROP_HEADER)+sizeof(KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING),

Result

Isso contém os resultados de erro da última operação SET. Se nenhuma operação SET tiver ocorrido, isso deverá ser 0.

Funcionalidade

Isso deve ser um pouco sábio OU de KSCAMERA_EXTENDEDPROP_ISO_AUTO e\ou KSCAMERA_EXTENDEDPROP_ISO_MANUAL, e o sinalizador KSCAMERA_EXTENDEDPROP_CAPS_ASYNCCONTROL. Esse controle deve ser assíncrono.

Flags

Este é um campo de leitura/gravação. Isso pode ser qualquer um dos sinalizadores de KSCAMERA_EXTENDEDPROP_ISO_XXX definidos acima.

A tabela a seguir contém as descrições e os requisitos para os campos de estrutura KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING para o ISO DDI. Essa estrutura é definida em ksmedia.h.

Membro Descrição

Mode

Isso não é utilizado e deve ser 0.

Min/Max/Step

O Min/Max/Step contém o mínimo/máximo/incremento da velocidade iso manual com suporte do driver da câmera. O driver deve devolvê-los para operações GET se houver suporte para ISO manual.

VideoProc

Se MANUAL for especificado no campo Sinalizadores do KSCAMERA_EXTENDEDPROP_HEADER, VideoProc.Value.ul deverá especificar o valor de velocidade ISO atual dentro do intervalo descrito pelo parâmetro Min/Max/Step.

Se Sinalizadores diferentes de Manual for especificado, para operações SET, o campo VideoProc será ignorado. Para operações GET, o driver sempre deve retornar a velocidade ISO atual, independentemente disso.

Reservado

Isso não é utilizado. Isso deve ser ignorado pelo driver.

Chamada GET

O driver deve anunciar sua capacidade em KSCAMERA_EXTENDEDPROP_HEADER. Funcionalidade e o sinalizador ISO atual no driver no KSCAMERA_EXTENDEDPROP_HEADER. Flags. Se nenhuma chamada SET tiver sido emitida antes da chamada Get, o driver deverá retornar seu padrão em KSCAMERA_EXTENDEDPROP_HEADER. Sinalizadores.

Se o sinalizador KSCAMERA_EXTENDEDPROP_ISO_MANUAL for anunciado no campo Funcionalidade, o driver deverá anunciar ainda mais os intervalos com suporte no KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING. Min/Max/Step.

O driver também deve relatar a velocidade iso atual em uso no KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING. VideoProc.Value.ul. Se nenhuma chamada SET tiver sido emitida antes da chamada GET, o driver deverá retornar sua velocidade iso atual em KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING. VideoProc.Value.ul.

Chamada SET

O KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING. VideoProc.Value.ul contém a velocidade iso manual de inteiro desejada se KSCAMERA_EXTENDEDPROP_ISO_MANUAL for especificado em KSCAMERA_EXTENDEDPROP_HEADER. Sinalizadores.

Se o sinalizador KSCAMERA_EXTENDEDPROP_ISO_AUTO for especificado em KSCAMERA_EXTENDEDPROP_HEADER. Sinalizadores, KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING. VideoProc.Value.ul será ignorado.

Requisitos

parâmetro

Ksmedia.h