IOCTL_SBAUD_GET_ENDPOINT_DESCRIPTOR IOCTL (sidebandaudio.h)
Звуковой драйвер выдает код элемента управления IOCTL_SBAUD_GET_ENDPOINT_DESCRIPTOR для получения сведений о конечной точке аудио, предоставляемой через интерфейс аудиоустройства боковой полосы.
Основной код
Входной буфер
Значение индекса конечной точки на основе 0 в зависимости от количества конечных точек audio, как сообщается в IOCTL_SBAUD_GET_DEVICE_DESCRIPTOR.
Это значение ULONG от 0 до (N-1), где N — это число конечных точек для устройства.
Длина входного буфера
Размер ULONG.
Выходной буфер
Буфер, содержащий структуру SIDEBANDAUDIO_ENDPOINT_DESCRIPTOR, за которой следует любые другие данные, на которые ссылается структура. Возвращается, если размер выходного буфера достаточно, и запрос выполнен успешно. В частности, буфер включает в себя хранилище строки, на которую ссылается поле FriendlyName структуры SIDEBANDAUDIO_ENDPOINT_DESCRIPTOR.
Длина выходного буфера
Размер структуры SIDEBANDAUDIO_ENDPOINT_DESCRIPTOR и ссылочных данных.
Блок состояния
Если подпрограмма выполнена успешно, то для параметра "Состояние" задано значение STATUS_SUCCESS, а элемент сведений — это количество байтов, которые подпрограмма записывает в выходной буфер.
Если для параметра "Состояние" задано значение STATUS_BUFFER_TOO_SMALL, звуковой драйвер должен прочитать элемент Information, чтобы получить размер буфера, который вызывающий объект должен выделить для этого запроса.
Замечания
Этот IOCTL можно вызывать только из режима ядра.
Звуковой драйвер отправляет этот запрос, чтобы получить сведения о включенной конечной точке звукового канала. Сведения не изменяются во время включения интерфейса, но могут изменяться во время отключения интерфейса. Поэтому звуковой драйвер отправляет этот запрос вскоре после обнаружения включенного интерфейса устройства и использует сведения для создания соответствующей KSFILTER_DESCRIPTOR структуры.
Звуковой драйвер отправляет этот запрос один раз с размером выходного буфера нуля (0), чтобы определить требуемый размер выходного буфера. В этом случае запрос завершится с состоянием STATUS_BUFFER_TOO_SMALL и задайте элементу сведений требуемый размер буфера. Затем звуковой драйвер выделяет необходимое место в хранилище и отправляет запрос еще раз.
Требования
Требование | Ценность |
---|---|
заголовка | sidebandaudio.h |
См. также
SIDEBANDAUDIO_ENDPOINT_DESCRIPTOR