IOCTL_SBAUD_GET_DEVICE_DESCRIPTOR IOCTL (sidebandaudio.h)
Le pilote audio émet le IOCTL_SBAUD_GET_DEVICE_DESCRIPTOR pour obtenir des informations sur une interface de périphérique audio à bande latérale activée. Plus précisément, cela retourne le nombre de points de terminaison audio disponibles sur un appareil qui prend en charge sideband. Ces informations sont retournées dans une structure de descripteur d’appareil audio .
Code principal
Mémoire tampon d’entrée
ZÉRO.
Longueur de la mémoire tampon d’entrée
Mémoire tampon de sortie
Mémoire tampon contenant une structure SIDEBANDAUDIO_DEVICE_DESCRIPTOR.
Longueur de la mémoire tampon de sortie
Taille d’une structure SIDEBANDAUDIO_DEVICE_DESCRIPTOR.
Bloc d’état
Si la routine réussit, l’état est défini sur STATUS_SUCCESS et le membre Informations est le nombre d’octets que la routine écrit dans la mémoire tampon de sortie.
Si l’état est défini sur STATUS_BUFFER_TOO_SMALL, le pilote audio doit lire le membre Informations pour obtenir la taille de la mémoire tampon que l’appelant doit allouer pour cette demande.
Remarques
Cette IOCTL ne peut être appelée qu’à partir du mode noyau.
Le pilote audio envoie cette requête pour obtenir des informations sur une interface de périphérique de bande latérale Audio activée. Les informations ne changent pas lorsque l’interface est activée, mais peuvent changer pendant la désactivation de l’interface. Le pilote audio envoie cette requête peu après avoir découvert une interface d’appareil audio de bande latérale activée et utilise les informations pour déterminer le nombre de points de terminaison audio de bande latérale disponibles.
Le pilote audio envoie cette requête une fois avec une taille de mémoire tampon de sortie de zéro (0) afin de déterminer la taille de mémoire tampon de sortie requise. Dans ce cas, la demande se termine par status STATUS_BUFFER_TOO_SMALL et définit l'Informations membre sur la taille de mémoire tampon requise. Le pilote audio alloue ensuite l’espace de stockage nécessaire et envoie à nouveau la requête. En règle générale, un pilote audio stocke un pointeur vers cet emplacement de stockage dans son contexte d’appareil pour référence pendant l’activité ultérieure.
Le pilote audio peut ensuite déterminer de manière itérative chaque fonctionnalité de point de terminaison avec la IOCTL_SBAUD_GET_ENDPOINT_DESCRIPTORIOCTL.
Exigences
Exigence | Valeur |
---|---|
d’en-tête | sidebandaudio.h |