Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Drivers de áudio do Microsoft Windows Driver Model (WDM) para dispositivos de áudio USB, dispositivos de áudio IEEE 1394 e dispositivos de áudio em barramentos internos representam seus dispositivos como filtros KS com pinos. Um driver de áudio WDM mantém uma estrutura KSPIN_DESCRIPTOR para cada tipo de pino compatível. Dentro dessa estrutura, o driver armazena as propriedades KSPROPSETID_Pin do tipo de pino. Entre essas propriedades está a propriedade KSPROPERTY_PIN_CATEGORY . Uma solicitação para essa propriedade recupera o GUID da categoria de pino KS do membro Categoria da estrutura de KSPIN_DESCRIPTOR. Esse GUID indica a categoria geral de funcionalidade que o pino fornece. Por exemplo, um Identificador Globalmente Único (GUID) de categoria de pino específico, KSNODETYPE_HEADPHONES, identifica um pino como um conector de saída para fones de ouvido.
No caso de um dispositivo de áudio de onda em um barramento interno (por exemplo, PCI), o driver de miniporto PortCls contém uma matriz de descritores de pino, cada um deles descreve um tipo de pino no filtro que representa o dispositivo. Cada descritor de pino é uma estrutura PCPIN_DESCRIPTOR que contém uma estrutura KSPIN_DESCRIPTOR inserida com um GUID de categoria de pino. Ao receber uma solicitação de propriedade KSPROPERTY_PIN_CATEGORY de um cliente, o driver de porta recupera o GUID da categoria de pino a partir do descritor de pino do driver de miniporto para o tipo de pino especificado. Para obter mais informações sobre descritores de pin, consulte Pin Factories.
Um dispositivo de áudio USB tem alguns terminais por meio dos quais fluxos digitais e sinais analógicos podem entrar e sair do dispositivo. Ao construir um filtro KS para representar um dispositivo de áudio USB, o driver do sistema de classe USBAudio converte os terminais no dispositivo em pinos no filtro. O arquivo de cabeçalho Ksmedia.h define um mapeamento de cada identificador de tipo de terminal USB para um GUID de categoria de pino KS. As seis tabelas a seguir mostram os identificadores de tipo de terminal e seus GUIDs correspondentes da categoria de pinos.
Tipos de terminal de entrada
| ID do Terminal USB | GUID de categoria de pino 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 saída
| Identificação do Terminal USB | GUID da Categoria de Pino KS |
|---|---|
0x0301 |
KSNODETYPE_SPEAKER |
0x0302 |
KSNODETYPE_HEADPHONES |
0x0303 |
" required because the original translation is suitable as per industry norms. |
0x0304 |
KSNODETYPE_DESKTOP_SPEAKER |
0x0305 |
KSNODETYPE_ROOM_SPEAKER |
0x0306 |
KSNODETYPE_COMMUNICATION_SPEAKER |
0x0307 |
KSNODETYPE_LOW_FREQUENCY_EFFECTS_SPEAKER |
Tipos de terminal bidirecional
| ID de Terminal USB | GUID de categoria de pino KS |
|---|---|
0x0401 |
KSNODETYPE_HANDSET |
0x0402 |
KSNODETYPE_HEADSET |
0x0403 |
KSNODETYPE_SPEAKERPHONE_NO_ECHO_REDUCTION (sem redução de eco) |
0x0404 |
KSNODETYPE_ECHO_SUPPRESSING_SPEAKERPHONE |
0x0405 |
KSNODETYPE_ECHO_CANCELING_SPEAKERPHONE |
Tipos de terminal de telefonia
| Identificação de Terminal USB | Categoria de Pino KS GUID |
|---|---|
0x0501 |
KSNODETYPE_LINHA_TELEFÔNICA |
0x0502 |
KSNODETYPE_TELEPHONE |
0x0503 |
KSNODETYPE_DOWN_LINE_PHONE |
Tipos de terminal externos
| Identificação do Terminal USB | GUID de Categoria de Pino 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 terminal de função inserida
| Identificação do Terminal USB | GUID de categoria de pino KS |
|---|---|
0x0701 |
KSNODETYPE_LEVEL_CALIBRATION_NOISE_SOURCE |
0x0702 |
KSNODETYPE_EQUALIZAÇÃO_RUIDO |
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 obter mais informações sobre identificadores de tipo de terminal USB, consulte a Definição de Classe de Dispositivo de Barramento Serial Universal para Tipos de Terminal (versão 1.0), que está disponível no site do Fórum de Implementadores USB .
Todos os GUIDs de categoria de pino nas tabelas anteriores têm nomes de parâmetro no formato KSNODETYPE_XXX. Observe que guids do tipo de nó KS também têm nomes de parâmetro KSNODETYPE_XXX . Essa convenção de nomenclatura cria algum potencial de confusão entre GUIDs de categoria de pin e GUIDs de tipo de nó. Felizmente, quase todos os parâmetros KSNODETYPE_XXX identificam uma categoria de pino ou um tipo de nó, mas não ambos. A única exceção à regra é KSNODETYPE_SYNTHESIZER, que pode identificar uma categoria de pin ou um tipo de nó, dependendo do contexto. Para obter uma lista de GUIDs de tipo de nó, consulte Nós de Topologia de Áudio.
Ao instanciar um dispositivo de áudio USB, o driver do sistema da classe USBAudio consulta o dispositivo sobre sua topologia interna, incluindo seus terminais. Com essas informações, o driver USBAudio constrói um filtro para representar o dispositivo e converte cada terminal em um pino correspondente no filtro. Durante esse processo, o driver traduz cada identificador de tipo de terminal USB no GUID de categoria de pino KS correspondente, que é um dos GUIDs nas tabelas anteriores. O driver constrói uma estrutura KSPIN_DESCRIPTOR para descrever o pin e grava o GUID de categoria do pin na estrutura.
Um driver de miniporto PortCls não usa necessariamente apenas os GUIDs de categoria que aparecem nas seis tabelas anteriores. Por exemplo, um driver pode definir e usar um GUID de categoria de pino personalizado para descrever um tipo de pino cuja categoria funcional está fora das categorias nas tabelas. Naturalmente, um GUID de categoria de pino personalizado é útil apenas para clientes que reconhecem o GUID.
O subsistema de áudio mantém uma lista de GUIDs de categoria de pino e seus nomes amigáveis associados no registro do sistema. O instalador de classe de mídia copia os pares guid-name no registro do arquivo Ks.inf localizado na subpasta Inf da pasta principal do Windows (por exemplo, C:\Windows\Inf\Ks.inf).
O sistema operacional utiliza categorias de pinos para associar nomes amigáveis a dispositivos de saída de áudio. Para obter mais informações sobre como associar nomes amigáveis a dispositivos de ponto de extremidade de áudio, consulte Nomes Amigáveis para Dispositivos de Ponto de Extremidade de Áudio.