IOCTL_SBAUD_GET_ENDPOINT_DESCRIPTOR IOCTL (sidebandaudio.h)
Il driver audio rilascia il codice di controllo IOCTL_SBAUD_GET_ENDPOINT_DESCRIPTOR per ottenere informazioni su un endpoint audio esposto tramite l'interfaccia del dispositivo audio sideband.
Codice principale
Buffer di input
Valore dell'indice dell'endpoint basato su 0 in base al numero di endpoint audio come segnalato dal IOCTL_SBAUD_GET_DEVICE_DESCRIPTOR.
Si tratta di un valore ULONG compreso tra 0 e (N-1), dove N è il numero di endpoint per il dispositivo.
Lunghezza del buffer di input
Dimensioni di ULONG.
Buffer di output
Buffer contenente una struttura SIDEBANDAUDIO_ENDPOINT_DESCRIPTOR seguita da tutti gli altri dati a cui fa riferimento la struttura. Questo viene restituito, se la dimensione del buffer di output è sufficiente e la richiesta ha esito positivo. In particolare, il buffer include l'archiviazione per la stringa a cui fa riferimento il campo FriendlyName della struttura SIDEBANDAUDIO_ENDPOINT_DESCRIPTOR.
Lunghezza del buffer di output
Dimensioni di una struttura di SIDEBANDAUDIO_ENDPOINT_DESCRIPTOR e dati a cui si fa riferimento.
Blocco di stato
Se la routine ha esito positivo, status viene impostato su STATUS_SUCCESS e il membro Information è il numero di byte che la routine scrive nel buffer di output.
Se Status è impostato su STATUS_BUFFER_TOO_SMALL, il driver audio deve leggere il membro Information per ottenere le dimensioni del buffer che il chiamante deve allocare per questa richiesta.
Osservazioni
Questo IOCTL può essere chiamato solo dalla modalità kernel.
Il driver audio invia questa richiesta per ottenere informazioni su un endpoint audio sideband abilitato. Le informazioni non cambiano mentre l'interfaccia è abilitata, ma possono cambiare mentre l'interfaccia è disabilitata. Pertanto, il driver audio invia questa richiesta poco dopo l'individuazione di un'interfaccia del dispositivo abilitata e usa le informazioni per creare una struttura di KSFILTER_DESCRIPTOR appropriata.
Il driver audio invia questa richiesta una volta con una dimensione del buffer di output pari a zero (0) per determinare le dimensioni necessarie del buffer di output. In questo caso, la richiesta verrà completata con status STATUS_BUFFER_TOO_SMALL e imposta il membro information sulla dimensione del buffer richiesta. Il driver audio alloca quindi lo spazio di archiviazione necessario e invia nuovamente la richiesta.
Fabbisogno
Requisito | Valore |
---|---|
intestazione | sidebandaudio.h |
Vedere anche
SIDEBANDAUDIO_ENDPOINT_DESCRIPTOR