Compartir a través de


Propiedad de categoría de pin

Los controladores de audio del Modelo de Controladores de Microsoft Windows (WDM) para dispositivos de audio USB, dispositivos de audio IEEE 1394 y dispositivos de audio en buses internos representan sus dispositivos como filtros KS con pines. Un controlador de audio WDM mantiene una estructura KSPIN_DESCRIPTOR para cada tipo de pin que soporta. Dentro de esta estructura, el controlador almacena las propiedades KSPROPSETID_Pin del tipo de pin. Entre esas propiedades se encuentra la propiedad KSPROPERTY_PIN_CATEGORY . Una solicitud para esta propiedad recupera el GUID de categoría de pin KS del miembro Category de la estructura KSPIN_DESCRIPTOR. Este GUID indica la categoría general de funcionalidad que proporciona el pin. Por ejemplo, un GUID de categoría de pines determinado, KSNODETYPE_HEADPHONES, identifica un pin como una toma de salida para auriculares.

En el caso de un dispositivo de audio de onda en un bus interno (por ejemplo, PCI), el controlador de miniporte PortCls contiene una matriz de descriptores de patillas, cada uno de los cuales describe un tipo de patilla en el filtro que representa el dispositivo. Cada descriptor de pin es una estructura PCPIN_DESCRIPTOR que contiene una estructura KSPIN_DESCRIPTOR incrustada con un GUID de categoría de pin. Al recibir una solicitud de propiedad KSPROPERTY_PIN_CATEGORY de un cliente, el controlador de puerto recupera el GUID de categoría de pin del descriptor de pin del miniport driver para el tipo de pin especificado. Para obtener más información sobre los descriptores de pines, vea Fábricas de Pinos.

Un dispositivo de audio USB tiene cierto número de terminales a través de los cuales las secuencias digitales y las señales analógicas pueden entrar y salir del dispositivo. Al construir un filtro KS para representar un dispositivo de audio USB, el controlador del sistema de controladores de clase USBAudio traduce los terminales del dispositivo en pines del filtro. El archivo de encabezado Ksmedia.h define una asignación para cada identificador de tipo de terminal USB a un GUID de categoría de pin KS. En las seis tablas siguientes se muestran los identificadores de tipo de terminal y sus GUID de categoría de pin correspondientes.

Tipos de terminales de entrada

Id. de terminal USB GUID de categoría de pines KS

0x0201

KSNODETYPE_MICROPHONE

0x0202

KSNODETYPE_DESKTOP_MICROPHONE

0x0203

KSNODETYPE_PERSONAL_MICROPHONE

0x0204

KSNODETYPE_OMNI_DIRECTIONAL_MICROPHONE

0x0205

KSNODETYPE_MICROPHONE_ARRAY

0x0206

KSNODETYPE_PROCESSING_MICROPHONE_ARRAY

Tipos de terminal de salida

Id. de terminal USB GUID de Categoría de Pines KS

0x0301

KSNODETYPE_SPEAKER (altavoz)

0x0302

KSNODETYPE_HEADPHONES

0x0303

KSNODETYPE_HEAD_MOUNTED_DISPLAY_AUDIO

0x0304

KSNODETYPE_DESKTOP_SPEAKER

0x0305

KSNODETYPE_ALTAVOZ_DE_HABITACIÓN

0x0306

KSNODETYPE_COMMUNICATION_SPEAKER

0x0307

KSNODETYPE_ALTAVOZ_DE_EFECTOS_DE_BAJA_FRECUENCIA

Tipos de terminal bidireccionales

Id. de terminal USB Categoría de Pin GUID de KS

0x0401

KSNODETYPE_HANDSET

0x0402

KSNODETYPE_HEADSET

0x0403

KSNODETYPE_ALTAVOZ_SIN_REDUCCIÓN_DE_ECO

0x0404

KSNODETYPE_ECHO_SUPPRESSING_SPEAKERPHONE

0x0405

KSNODETYPE_ECHO_CANCELING_SPEAKERPHONE

Tipos de terminal de telefonía

Id. de terminal USB GUID de categoría de pines KS

0x0501

KSNODETYPE_PHONE_LINE

0x0502

KSNODETYPE_TELÉFONO

0x0503

KSNODETYPE_DOWN_LINE_PHONE

Tipos de terminal externo

Id. de terminal USB GUID de categoría de Pin KS

0x0601

KSNODETYPE_ANALOG_CONNECTOR

0x0602

KSNODETYPE_DIGITAL_AUDIO_INTERFACE

0x0603

KSNODETYPE_LINE_CONNECTOR

0x0604

KSNODETYPE_LEGACY_AUDIO_CONNECTOR

0x0605

KSNODETYPE_SPDIF_INTERFACE

0x0606

KSNODETYPE_1394_DA_STREAM

0x0607

KSNODETYPE_1394_DV_STREAM_SOUNDTRACK

Tipos de terminales de función incrustados

Id. de terminal USB GUID de categoría de pines KS

0x0701

KSNODETYPE_LEVEL_CALIBRATION_NOISE_SOURCE

0x0702

KSNODETYPE_EQUALIZATION_NOISE

0x0703

KSNODETYPE_CD_PLAYER

0x0704

KSNODETYPE_DAT_IO_DIGITAL_AUDIO_TAPE

0x0705

KSNODETYPE_DCC_IO_DIGITAL_COMPACT_CASSETTE

0x0706

KSNODETYPE_MINIDISK

0x0707

KSNODETYPE_ANALOG_TAPE

0x0708

KSNODETYPE_PHONOGRAPH

0x0709

KSNODETYPE_VCR_AUDIO

0x070A

KSNODETYPE_VIDEO_DISC_AUDIO

0x070B

KSNODETYPE_DVD_AUDIO

0x070C

KSNODETYPE_TV_TUNER_AUDIO

0x070D

KSNODETYPE_SATELLITE_RECEIVER_AUDIO

0x070E

KSNODETYPE_CABLE_TUNER_AUDIO

0x070F

KSNODETYPE_DSS_AUDIO

0x0710

KSNODETYPE_RADIO_RECEIVER

0x0711

KSNODETYPE_RADIO_TRANSMITTER

0x0712

KSNODETYPE_MULTITRACK_RECORDER

0x0713

KSNODETYPE_SYNTHESIZER

Para obtener más información sobre los identificadores de tipo de terminal USB, consulte la definición de clase de dispositivo de bus serie universal para los tipos de terminal (versión 1.0), que está disponible en el sitio web del foro de implementadores USB .

Todos los GUID de categoría de pin de las tablas anteriores tienen nombres de parámetro con el formato KSNODETYPE_XXX. Tenga en cuenta que los GUID de tipo de nodo KS también tienen nombres de parámetro KSNODETYPE_XXX . Esta convención de nomenclatura crea potencialmente confusión entre los códigos de identificación únicos (GUID) de categoría de pin y los códigos de identificación únicos (GUID) de tipo de nodo. Afortunadamente, casi todos los parámetros KSNODETYPE_XXX identifican una categoría de patillas o un tipo de nodo, pero no ambos. La única excepción a la regla es KSNODETYPE_SYNTHESIZER, que, en función del contexto, puede identificar una categoría de pines o un tipo de nodo. Para obtener una lista de GUID de tipo nodo, consulte Nodos de topología de audio.

Al crear una instancia de un dispositivo de audio USB, el controlador del sistema de clase USBAudio consulta el dispositivo para su topología interna, incluidos sus terminales. Con esta información, el controlador USBAudio construye un filtro para representar el dispositivo y convierte cada terminal en un pin correspondiente en el filtro. Durante este proceso, el controlador traduce cada identificador de tipo de terminal USB en el GUID de categoría de PIN KS correspondiente, que es uno de los GUID de las tablas anteriores. El controlador construye una estructura KSPIN_DESCRIPTOR para describir el pin y escribe el GUID de categoría del pin en la estructura.

Un controlador de miniporte PortCls no usa necesariamente solo los GUID de categoría que aparecen en las seis tablas anteriores. Por ejemplo, un controlador podría definir y usar un GUID de categoría de patillas personalizado para describir un tipo de patilla cuya categoría funcional se encuentra fuera de las categorías de las tablas. Naturalmente, un GUID de categoría de pines personalizado solo resulta útil para los clientes que reconocen el GUID.

El subsistema de audio mantiene una lista de GUID de categoría de pines y sus nombres amigables asociados en el registro del sistema. El instalador de clase multimedia copia los pares GUID-name en el Registro desde el archivo Ks.inf ubicado en la subcarpeta Inf de la carpeta principal de Windows (por ejemplo, C:\Windows\Inf\Ks.inf).

El sistema operativo usa categorías de pines para asociar nombres amigables a dispositivos de audio de punto final. Para obtener más información sobre cómo asociar nombres descriptivos a dispositivos de punto de conexión de audio, consulte Nombres descriptivos para dispositivos de punto de conexión de audio.