Метод IMiniportAudioSignalProcessing::GetModes (portcls.h)

Метод GetModes извлекает режимы обработки звукового сигнала, поддерживаемые аудиокрепкой.

Синтаксис

NTSTATUS GetModes(
  [in]            ULONG Pin,
  [out, optional] GUID  *SignalProcessingModes,
  [in, out]       ULONG *NumSignalProcessingModes
);

Параметры

[in] Pin

Индекс аудиокрепки.

[out, optional] SignalProcessingModes

Этот параметр является необязательным. Он возвращает массив идентификаторов GUID, определяющих режимы обработки сигналов, поддерживаемые параметром Pin .

[in, out] NumSignalProcessingModes

При использовании в качестве входных данных он указывает количество элементов, которые можно записать в буфер, указанный в SignalProcessingModes. При использовании в качестве выходных данных он возвращает количество элементов, записанных в буфер.

Возвращаемое значение

GetModes возвращает STATUS_SUCCESS, если вызов был выполнен успешно. В противном случае метод возвращает соответствующий код ошибки.

Комментарии

Если SignalProcessingModes имеет значение NULL, то GetModes записывает количество поддерживаемых режимов в NumSignalProcessingModes и возвращает STATUS_SUCCESS. Это позволяет вызывающим абонентам запрашивать количество поддерживаемых режимов для выделения буферов.

Если SignalProcessingModes не имеет значение NULL, getModes проверяет, что numSignalProcessingModes больше или равно числу поддерживаемых режимов. Если это так, то метод записывает поддерживаемые режимы в буфер SignalProcessingModes , записывает фактическое количество поддерживаемых режимов в NumSignalProcessingModes и возвращает STATUS_SUCCESS.

В следующей таблице представлены и объясняются сообщения об ошибках, которые могут быть возвращены GetModes.

Код ошибки Описание
STATUS_BUFFER_TOO_SMALL Буфер, выделенный для NumSignalProcessingModes , слишком мал.
STATUS_INVALID_PARAMETER Значение параметра Pin указывает идентификатор пин-кода, >= количество фабрик контактов в фильтре. Индекс закрепления отсчитывается от нуля, поэтому для n фабрик контактов в фильтре наибольшее значение индекса должно быть n–1.
STATUS_NOT_SUPPORTED Для пин-кода, который не поддерживает режимы обработки сигналов, указан идентификатор пин-кода. Например, если идентификатор пина относится к закреплению звукового замыкания на себя или контакту моста, getModes вернет этот код ошибки.

Требования

Требование Значение
Минимальная версия клиента Windows 8.1
Минимальная версия сервера Windows Server 2012 R2
Целевая платформа Универсальное
Верхняя часть portcls.h

См. также раздел

IMiniportAudioSignalProcessing