Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Func.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
1.58 Mб
Скачать

IDirectSound::GetSpeakerConfig

HRESULT GetSpeakerConfig( LPDWORD lpdwSpeakerConfig );

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

В случае успешного завершения возвращает значение DS_OK. В противном случае возвращаемое значение может принимать одно из следующих значений:

  • DSERR_INVALIDPARAM — один или несколько аргументов метода имеют недопустимые значения.

  • DSERR_UNINITIALIZED — перед вызовом данной функции не был вызван метод IDirectSound::Initialize или его выполнение завершилось с ошибкой.

Аргументы

  1. lpdwSpeakerConfig — указатель на переменную, в которую будет записана конфигурация звукового выхода объекта DirectSound. Эта переменная может принимать одно из следующих значений:

  • DSSPEAKER_HEADPHONE — аудио информация выводится на наушники.

  • DSSPEAKER_MONO — аудио информация выводится в монофоническом режиме.

  • DSSPEAKER_QUAD — аудио информация выводится в квадрофоническом режиме.

  • DSSPEAKER_STEREO — аудио информация выводится в стереофоническом режиме (режим, используемый по умолчанию). Данный режим может комбинироваться со следующими подрежимами:

  • DSSPEAKER_SURROUND — аудио информация выводится через динамики, обеспечивающие объёмное звучание.

  • DSSPEAKER_GEOMETRY_WIDE — оси динамиков повёрнуты на 20 градусов.

  • DSSPEAKER_GEOMETRY_NARROW — оси динамиков повёрнуты на 10 градусов.

  • DSSPEAKER_GEOMETRY_MIN — оси динамиков повёрнуты на 5 градусов.

  • DSSPEAKER_GEOMETRY_MAX — оси динамиков повёрнуты на 180 градусов.

Примечание

Метод IDirectSound::GetSpeakerConfig позволяет получить конфигурацию звукоизлучающих устройств, установленную для объекта DirectSound.

Величина, возвращаемая в аргументе lpdwSpeakerConfig, может представлять собой упакованное двойное слово (DWORD), содержащее информацию как о конфигурации, так и о геометрии звукоизлучающих устройств. Для распаковки двойного слова применяются макросы DSSPEAKER_CONFIG и DSSPEAKER_GEOMETRY. Ниже приведён пример использования этих макросов:

if (DSSPEAKER_CONFIG(dwSpeakerConfig) == DSSPEAKER_STEREO)

{

if (DSSPEAKER_GEOMETRY(dwSpeakerConfig) ==

DSSPEAKER_GEOMETRY_WIDE)

{...}

}

IDirectSound::Initialize

HRESULT Initialize( LPGUID lpGuid );

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

В случае успешного завершения возвращает значение DS_OK. В противном случае возвращаемое значение может принимать одно из следующих значений:

  • DSERR_ALREADYINITIALIZED — объект уже инициализирован.

  • DSERR_GENERIC — в подсистеме DirectSound возникла неопознанная ошибка.

  • DSERR_INVALIDPARAM — один или несколько аргументов метода имеют недопустимые значения.

  • DSERR_NODRIVER — отсутствует драйвер аудио устройства.

Аргументы

  1. lpGuid — указатель на глобально уникальный идентификатор (GUID), определяющий драйвер аудио устройства с которым связан объект DirectSound. Нулевое значение данного аргумента означает использование первичного драйвера аудио устройства.

Примечание

Метод IDirectSound::Initialize инициализирует объект DirectSound, созданный с использованием функции CoCreateInstance.

Этот метод совместим с протоколом модели многокомпонентных объектов (COM). Если для создания объекта DirectSound использовалась функция DirectSoundCreate, этот метод возвращает значение DSERR_ALREADYINITIALIZED. Если же объект DirectSound был создан с использованием функции CoCreateInstance и для него не был вызван метод IDirectSound::Initialize, то любой другой метод возвратит значение DSERR_UNINITIALIZED.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]