Compartir a través de


KSPROPERTY_CAMERACONTROL_EXTENDED_BACKGROUNDSEGMENTATION

KSPROPERTY_CAMERACONTROL_EXTENDED_BACKGROUNDSEGMENTATION es un identificador de propiedad que se usa para controlar el desenfoque de fondo en el controlador.

Esta propiedad controla una corrección en secuencia que un controlador puede realizar para habilitar la corrección de imágenes de alta calidad para su uso con imágenes en vista previa y grabadas. La corrección en secuencia debe habilitarse y deshabilitarse en el controlador de forma uniforme, de modo que las características se puedan controlar mediante Windows o una aplicación.

Puede encontrar ejemplos de configuración de controles KSPROPERTY en avStream Camera Sample Driver en GitHub.

Actualizar al control KSPROPERTY_CAMERACONTROL_EXTENDED_BACKGROUNDSEGMENTATION

A partir de Windows 11, versión 22H2, el modo de enfoque superficial se ha introducido en el control de segmentación en segundo plano existente como una funcionalidad opcional.

KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_SHALLOWFOCUS es una nueva marca agregada al control KSPROPERTY_CAMERACONTROL_EXTENDED_BACKGROUNDSEGMENTATION que se usa para controlar el Bokeh (modo de enfoque superficial) en el controlador. Se trata de una versión de desenfoque de fondo KSPROPERTY_CAMERACONTROL_EXTENDED_BACKGROUNDSEGMENTATION, donde el énfasis es menor en la privacidad y mucho más en hacer que el fondo del usuario parezca de una cámara de mayor calidad con profundidad de efecto de campo. Esto hará visualmente que el tema en primer plano destaque, similar a la forma en que la fotografía en modo vertical en muchos teléfonos móviles se ha vuelto popular.

Tabla de resumen de uso

Ámbito Control Tipo
versión 1 Filtrar Sincrónico

Las marcas siguientes se pueden colocar en el KSCAMERA_EXTENDEDPROP_HEADER. Marca el campo para controlar el modo de enfoque superficial.

#define KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_OFF          0x0000000000000000
#define KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_BLUR         0x0000000000000001
#define KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_MASK         0x0000000000000002
#define KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_SHALLOWFOCUS 0x0000000000000004

Si el controlador admite este control, debe admitir BACKGROUNDSEMENTATION_OFF y una o varias de las otras marcas.

Si el controlador no admite la segmentación en segundo plano, el controlador no debe implementar este control.

La llamada SET de este control surtirá efecto incluso cuando el pin de vídeo o foto esté en estado de KSSTATE_RUN. En una llamada GET, el controlador debe devolver la configuración actual en el campo Marcas.

En la tabla siguiente se describen las funcionalidades de marca.

Marca Descripción
KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_OFF Se trata de una funcionalidad obligatoria. Cuando se especifica, la segmentación en segundo plano se deshabilita en el controlador. Este es el valor predeterminado.
KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_BLUR Se trata de una funcionalidad opcional. Cuando se especifica, el desenfoque de fondo está habilitado en el controlador y se aplica al marco si es posible.
KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_MASK Se trata de una funcionalidad opcional. Cuando se especifica, la producción de metadatos de máscara en segundo plano está habilitada en el controlador (si es posible, dado el mediaType utilizado como expresado a través del conjunto de KSPROPERTY_CAMERACONTROL_EXTENDED_ BACKGROUNDSEGMENTATION_CONFIGCAPS devuelto en el campo Tamaño del KSCAMERA_EXTENDEDPROP_HEADER). Tenga en cuenta que esto puede admitirse no solo para cámaras de color, sino también para cámaras de profundidad e IR.
KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_SHALLOWFOCUS Se trata de una funcionalidad opcional. Cuando se especifica junto con KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_BLUR , el foco superficial se habilita en el controlador.

Nota

Desde una perspectiva SET, es necesario agregar KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_SHALLOWFOCUS junto con KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_BLUR para surtir efecto; También se pueden establecer junto con KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_MASK.

La tabla siguiente contiene las descripciones y los requisitos de los campos de estructura de KSCAMERA_EXTENDEDPROP_HEADER cuando se usa el control .

Miembro Descripción
Versión Debe ser 1.
PinId Debe ser KSCAMERA_EXTENDEDPROP_FILTERSCOPE (0xFFFFFFFF).
Size Debe ser sizeof(KSCAMERA_EXTENDEDPROP_HEADER) + sizeof(KSCAMERA_EXTENDEDPROP_VALUE)).
Resultado Sin usar, debe ser 0.
Capacidad Debe ser un OR bit a bit del KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION marcas _* admitidas definidas anteriormente.
Marcas Se trata de un campo de lectura y escritura. Puede ser cualquiera de los KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION marcas _* definidas anteriormente excepto SHALLOWFOCUS (que debe establecerse junto con BLUR para que surta efecto) o combinaciones válidas de los bits. Desde una perspectiva SET, el modo de enfoque superficial solo se habilitará cuando TANTO SHALLOWFOCUS como BLUR se establezcan al mismo tiempo, se pueden establecer junto con MASK.

Requisitos

Cliente mínimo admitido: Windows 11, versión 22H2

Encabezado: ksmedia.h (incluya Ksmedia.h)

Consulte también

Muestra de controlador del modo vertical de segmentación de fondo y del modo de mirada con ojos

KSPROPERTY_CAMERACONTROL_EXTENDED_EYEGAZECORRECTION

KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_CONFIGCAPS

KSCAMERA_EXTENDEDPROP_HEADER