Share via


IOCTL_SBAUD_GET_ENDPOINT_DESCRIPTOR2 IOCTL (sidebandaudio.h)

El controlador de audio emite el código de control de IOCTL_SBAUD_GET_ENDPOINT_DESCRIPTOR2 para obtener información sobre un punto de conexión de audio expuesto a través de la interfaz del dispositivo de audio de banda lateral. La versión 2 de este IOCTL permite al controlador proporcionar propiedades de dispositivo personalizadas para agregar a la interfaz del dispositivo de audio.

Código principal

IRP_MJ_DEVICE_CONTROL

Búfer de entrada

Valor de índice de punto de conexión basado en 0 en función del número de puntos de conexión de audio notificados por el IOCTL_SBAUD_GET_DEVICE_DESCRIPTOR.

Se trata de un valor de ULONG comprendido entre 0 y (N-1), donde N es el número de puntos de conexión del dispositivo.

Longitud del búfer de entrada

Tamaño de ULONG.

Búfer de salida

Búfer que contiene una estructura de SIDEBANDAUDIO_ENDPOINT_DESCRIPTOR2 seguida de cualquier otro dato al que hace referencia la estructura. Esto se devuelve, si el tamaño del búfer de salida es suficiente y la solicitud se realiza correctamente. En concreto, el búfer incluye almacenamiento para la cadena a la que hace referencia el campo FriendlyName de la estructura SIDEBANDAUDIO_ENDPOINT_DESCRIPTOR2 .

Longitud del búfer de salida

Tamaño de una estructura de SIDEBANDAUDIO_ENDPOINT_DESCRIPTOR2 y datos a los que se hace referencia.

Bloque de estado

Si la rutina se realiza correctamente, Status se establece en STATUS_SUCCESS y el miembro Information es el número de bytes que escribe la rutina en el búfer de salida.

Nota Puede ser mayor que el tamaño de la estructura de SIDEBANDAUDIO_ENDPOINT_DESCRIPTOR2 , ya que el búfer de salida puede contener otros datos a los que hace referencia la estructura.

Si Status está establecido en STATUS_BUFFER_TOO_SMALL, el controlador de audio debe leer el miembro Information para obtener el tamaño del búfer que el autor de la llamada debe asignar para esta solicitud.

Comentarios

Solo se puede llamar a este IOCTL desde el modo kernel.

El controlador de audio envía esta solicitud para obtener información sobre un punto de conexión de banda lateral de audio habilitado. La información no cambia mientras la interfaz está habilitada, pero puede cambiar mientras la interfaz está deshabilitada. Por lo tanto, el controlador de audio envía esta solicitud poco después de detectar una interfaz de dispositivo habilitada y usa la información para crear una estructura de KSFILTER_DESCRIPTOR adecuada.

El controlador de audio envía esta solicitud una vez con un tamaño de búfer de salida de cero (0) para determinar el tamaño del búfer de salida necesario. En este caso, la solicitud se completará con Status STATUS_BUFFER_TOO_SMALL y establecerá el miembro Information en el tamaño de búfer necesario. A continuación, el controlador de audio asigna el espacio de almacenamiento necesario y envía la solicitud de nuevo.

Requisitos

Requisito Valor
Header sidebandaudio.h

Consulte también

SIDEBANDAUDIO_ENDPOINT_DESCRIPTOR2

Introducción a los códigos de control de E/S

sidebandaudio.h