Partilhar via


IOCTL_SBAUD_GET_DEVICE_DESCRIPTOR IOCTL (sidebandaudio.h)

O driver de áudio emite o IOCTL_SBAUD_GET_DEVICE_DESCRIPTOR para obter informações sobre uma interface de dispositivo de áudio de banda lateral habilitada. Especificamente, isso retorna o número de pontos de extremidade de áudio disponíveis em um dispositivo que dá suporte a Sideband. Essas informações são retornadas em uma estrutura de do descritor de dispositivo de áudio.

Código principal

IRP_MJ_DEVICE_CONTROL

Buffer de entrada

ZERO.

Comprimento do buffer de entrada

Buffer de saída

Um buffer que contém uma estrutura de SIDEBANDAUDIO_DEVICE_DESCRIPTOR.

Comprimento do buffer de saída

O tamanho de uma estrutura SIDEBANDAUDIO_DEVICE_DESCRIPTOR.

Bloco de status

Se a rotina for bem-sucedida, o Status será definido como STATUS_SUCCESS e o membro de Informações do será o número de bytes que a rotina grava no buffer de saída.

Se Status estiver definido como STATUS_BUFFER_TOO_SMALL, o driver de áudio deverá ler o membro Informações para obter o tamanho do buffer que o chamador deve alocar para essa solicitação.

Observações

Esse IOCTL só pode ser chamado do modo kernel.

O driver de áudio envia essa solicitação para obter informações sobre uma interface de dispositivo de sideband de áudio habilitada. As informações não são alteradas enquanto a interface está habilitada, mas podem ser alteradas enquanto a interface está desabilitada. O driver de áudio envia essa solicitação logo após descobrir uma interface de dispositivo de áudio de banda lateral habilitada e usa as informações para determinar quantos pontos de extremidade de áudio de banda lateral estão disponíveis.

O driver de áudio envia essa solicitação uma vez com um tamanho de buffer de saída igual a zero (0) para determinar o tamanho do buffer de saída necessário. Nesse caso, a solicitação será concluída com o Status STATUS_BUFFER_TOO_SMALL e definirá o membro informações para o tamanho do buffer necessário. O driver de áudio aloca o espaço de armazenamento necessário e envia a solicitação novamente. Normalmente, um driver de áudio armazenará um ponteiro para esse local de armazenamento em seu contexto de dispositivo para referência durante a atividade posterior.

O driver de áudio pode determinar iterativamente cada funcionalidade de pontos de extremidade com o IOCTL_SBAUD_GET_ENDPOINT_DESCRIPTORIOCTL.

Requisitos

Requisito Valor
cabeçalho sidebandaudio.h

Consulte também

sidebandaudio.h

introdução aos códigos de controle de E/S