Поделиться через


Метод ISpatialAudioObjectRenderStream::ActivateSpatialAudioObject (spatialaudioclient.h)

Активирует ISpatialAudioObject для отрисовки звука.

Синтаксис

HRESULT ActivateSpatialAudioObject(
  [in]  AudioObjectType     type,
  [out] ISpatialAudioObject **audioObject
);

Параметры

[in] type

Тип активируемого звукового объекта. Для динамических звуковых объектов это значение должно быть AudioObjectType_Dynamic. Для статических звуковых объектов укажите одно из значений статического звукового канала из перечисления . При указании AudioObjectType_None будет получен звуковой объект, который не является пространственным.

[out] audioObject

Получает указатель на активированный интерфейс.

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

Если метод завершается успешно, возвращает значение S_OK. В случае сбоя возможные коды возврата включают, помимо прочего, значения, показанные в следующей таблице.

Код возврата Описание
SPTLAUDCLNT_E_NO_MORE_OBJECTS
В системе достигнуто максимальное число одновременных звуковых объектов.
SPTLAUDCLNT_E_DESTROYED
ISpatialAudioClient, связанный с пространственным аудиопотоком, был уничтожен.
AUDCLNT_E_DEVICE_INVALIDATED
Устройство конечной точки аудио отключено, звуковое оборудование или связанные аппаратные ресурсы были перенастроены, отключены, удалены или иным образом недоступны для использования.
SPTLAUDCLNT_E_INTERNAL
Произошла внутренняя ошибка.
AUDCLNT_E_UNSUPPORTED_FORMAT
Носитель, связанный с пространственным аудиопотоком, использует неподдерживаемый формат.

Комментарии

Динамический ISpatialAudioObject активируется путем установки для параметра type метода ActivateSpatialAudioObjectзначения AudioObjectType_Dynamic. Клиент имеет ограничение на максимальное количество динамических пространственных звуковых объектов, которые могут быть активированы одновременно. После достижения ограничения попытка активировать дополнительные звуковые объекты приведет к тому, что этот метод вернет ошибку SPTLAUDCLNT_E_NO_MORE_OBJECTS. Чтобы избежать этого, вызовите Release для каждого динамического объекта ISpatialAudioObject после того, как он больше не используется для освобождения ресурса, чтобы его можно было перераспределить. Дополнительные сведения об управлении временем существования пространственных звуковых объектов см. в разделах ISpatialAudioObject::SetEndOfStream: IsActive и ISpatialAudioObject::SetEndOfStream.

Требования

Требование Значение
Целевая платформа Windows
Header spatialaudioclient.h

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

ISpatialAudioObjectRenderStream