KSPROPERTY_CAMERACONTROL_EXTENDED_ISO_ADVANCED
KSPROPERTY_CAMERACONTROL_EXTENDED_ISO_ADVANCED est un contrôle de propriété étendu qui permet un contrôle ISO plus global avec plus de granularité.
Tableau récapitulatif de l’utilisation
Étendue | Control | Type |
---|---|---|
version 1 |
Épingler (Photo) |
Asynchrone |
Le nouvel indicateur KSCAMERA_EXTENDEDPROP_ISO_MANUAL est défini dans ksmedia_phone.h comme suit.
#define KSCAMERA_EXTENDEDPROP_ISO_MANUAL 0x0080000000000000
Le tableau suivant contient les descriptions et les conditions requises pour les champs de structure KSCAMERA_EXTENDEDPROP_HEADER pour le contrôle KSPROPERTY_CAMERACONTROL_EXTENDED_ISO_ADVANCED.
Le Windows 8.1 KS_CAMERACONTROL_EXTENDED_ISO reste inchangé sans la prise en charge de l’ISO manuelle des entiers. Le pilote ne doit prendre en charge que le nouveau contrôle KSPROPERTY_CAMERACONTROL_EXTENDED_ISO_ADVANCED. Si ces deux contrôles sont pris en charge, le pipeline sera par défaut le contrôle KSPROPERTY_CAMERACONTROL_EXTENDED_ISO_ADVANCED.
Si le contrôle KSPROPERTY_CAMERACONTROL_EXTENDED_ISO_ADVANCED est pris en charge, les seules fonctionnalités que le pilote peut publier sont les suivantes.
KSCAMERA_EXTENDEDPROP_ISO_AUTO
KSCAMERA_EXTENDEDPROP_ISO_MANUAL
KSCAMERA_EXTENDEDPROP_CAPS_ASYNCCONTROL
Si le pilote publie l’indicateur de capacité KSCAMERA_EXTENDEDPROP_ISO_MANUAL, il doit également publier les plages ISO prises en charge dans la valeur Min/Max/Step de la propriété KSCAMERA_EXTENDED_PROP_VIDEOPROCSETTING. Si le pilote publie une valeur Min de 0 et une valeur Max de 0, ou une valeur Step inférieure à 1, le contrôle est marqué comme inutilisable et est rejeté par le pipeline.
Si le pilote prend en charge à la fois KSPROPERTY_CAMERACONTROL_EXTENDED_ISO_ADVANCED et KSPROPERTY_CAMERACONTROL_EXTENDED_ISO, il doit publier des KSCAMERA_EXTENDEDPROP_ISO_AUTO pour les KSPROPERTY_CAMERACONTROL_EXTENDED_ISO_ADVANCED et les KSPROPERTY_CAMERACONTROL_EXTENDED_ISO. Sinon, les deux contrôles ISO seront marqués comme inutilisables et rejetés par le pipeline MF.
Si le pilote publie KSCAMERA_EXTENDEDPROP_ISO_MANUAL dans KSPROPERTY_CAMERACONTROL_EXTENDED_ISO_ADVANCED et les valeurs de KSCAMERA_EXTENDEDPROP_ISO_XXX numériques dans KSPROPERTY_CAMERACONTROL_EXTENDED_ISO, les valeurs de KSCAMERA_EXTENDEDPROP_ISO_XXX numériques publiées dans KSPROPERTY_CAMERACONTROL_EXTENDED_ISO doivent se trouver dans les plages ISO manuelles prises en charge publiées par KSCAMERA_EXTENDEDPROP_ISO_MANUAL. En outre, toutes les valeurs numériques KSCAMERA_EXTENDEDPROP_ISO_XXX dans les plages manuelles prises en charge doivent être publiées par KSPROPERTY_CAMERACONTROL_EXTENDED_ISO. Sinon, les deux contrôles ISO peuvent être marqués comme inutilisables et rejetés par le pipeline MF.
Par exemple, les fonctionnalités de l’un des éléments suivants peuvent être traitées comme une défaillance catastrophique et le contrôle peut être rejeté par le pipeline MF.
KSCAMERA_EXTENDEDPROP_ISO_MANUAL (min= 40, max = 240, étape = 20), KSCAMERA_EXTENDEDPROP_ISO_50
KSCAMERA_EXTENDEDPROP_ISO_MANUAL (min= 40, max = 240, étape = 20), KSCAMERA_EXTENDEDPROP_ISO_80
KSCAMERA_EXTENDEDPROP_ISO_MANUAL (min= 40, max = 240, étape = 20), KSCAMERA_EXTENDEDPROP_ISO_400
Les fonctionnalités de l’un des éléments suivants sont acceptées par le pipeline MF.
KSCAMERA_EXTENDEDPROP_ISO_MANUAL (min= 40, max = 240, étape = 20), KSCAMERA_EXTENDEDPROP_ISO_80, KSCAMERA_EXTENDEDPROP_ISO_100, KSCAMERA_EXTENDEDPROP_ISO_200
KSCAMERA_EXTENDEDPROP_ISO_MANUAL (min= 40, max = 240, étape = 20)
KSCAMERA_EXTENDEDPROP_ISO_80, KSCAMERA_EXTENDEDPROP_ISO_200
Membre | Description |
---|---|
Version |
Cela doit être 1, |
PinId |
Il doit s’agir de l’ID de code pin associé à l’épingle photo. |
Taille |
Il doit s’agir de sizeof(KSCAMERA_EXTENDEDPROP_HEADER)+sizeof(KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING), |
Résultats |
Il contient les résultats d’erreur de la dernière opération SET. Si aucune opération SET n’a eu lieu, il doit s’agir de 0. |
Fonctionnalité |
Il doit s’agir d’un OR un peu sage de KSCAMERA_EXTENDEDPROP_ISO_AUTO et\ou KSCAMERA_EXTENDEDPROP_ISO_MANUAL, ainsi que de l’indicateur KSCAMERA_EXTENDEDPROP_CAPS_ASYNCCONTROL. Ce contrôle doit être asynchrone. |
Indicateurs |
Il s’agit d’un champ en lecture/écriture. Il peut s’agir de l’un des indicateurs de KSCAMERA_EXTENDEDPROP_ISO_XXX définis ci-dessus. |
Le tableau suivant contient les descriptions et les exigences pour les champs de structure KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING pour la DDI ISO. Cette structure est définie dans ksmedia.h.
Membre | Description |
---|---|
Mode |
Cette valeur n’est pas utilisée et doit être 0. |
Min/Max/Step |
Le paramètre Min/Max/Step contient le minimum/maximum/incrément de la vitesse ISO manuelle prise en charge par le pilote de la caméra. Le pilote doit les retourner pour les opérations GET si l’ISO manuelle est prise en charge. |
VideoProc |
Si MANUAL est spécifié dans le champ Indicateurs du KSCAMERA_EXTENDEDPROP_HEADER, videoProc.Value.ul doit spécifier la valeur de vitesse ISO actuelle dans la plage décrite par le paramètre Min/Max/Step. Si des indicateurs autres que manuels sont spécifiés, pour les opérations SET, le champ VideoProc est ignoré. Pour les opérations GET, le pilote doit toujours retourner la vitesse ISO actuelle. |
Réservé |
Il n’est pas utilisé. Cela doit être ignoré par le pilote. |
Appel GET
Le pilote doit publier sa capacité dans KSCAMERA_EXTENDEDPROP_HEADER. Fonctionnalité et indicateur ISO actuel au niveau du pilote dans KSCAMERA_EXTENDEDPROP_HEADER. Flags. Si aucun appel SET n’a jamais été émis avant l’appel Get, le pilote doit retourner sa valeur par défaut dans KSCAMERA_EXTENDEDPROP_HEADER. Drapeaux.
Si l’indicateur KSCAMERA_EXTENDEDPROP_ISO_MANUAL est publié dans le champ Capacité, le pilote doit publier davantage les plages prises en charge dans KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING. Min/Max/Step.
Le pilote doit également signaler la vitesse ISO actuelle en cours d’utilisation dans KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING. VideoProc.Value.ul. Si aucun appel SET n’a été émis avant l’appel GET, le pilote doit retourner sa vitesse ISO actuelle dans KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING. VideoProc.Value.ul.
APPEL SET
The KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING. VideoProc.Value.ul contient la vitesse ISO manuelle d’entier souhaitée si KSCAMERA_EXTENDEDPROP_ISO_MANUAL est spécifié dans KSCAMERA_EXTENDEDPROP_HEADER. Drapeaux.
Si l’indicateur KSCAMERA_EXTENDEDPROP_ISO_AUTO est spécifié dans KSCAMERA_EXTENDEDPROP_HEADER. Indicateurs, KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING. VideoProc.Value.ul sera ignoré.
Configuration requise
En-tête |
Ksmedia.h |