Метод IXAudio2SourceVoice::Stop (xaudio2.h)

Прекращает потребление звука текущим голосом.

Синтаксис

HRESULT Stop(
  [in] UINT32 Flags,
  [in] UINT32 OperationSet
);

Параметры

[in] Flags

Флаги, управляющие остановкой голоса. Может иметь значение 0 или следующее:

Значение Описание
XAUDIO2_PLAY_TAILS Продолжайте выводить эффект после остановки голоса. 

[in] OperationSet

Определяет этот вызов как часть отложенного пакета. Дополнительные сведения см. в обзоре наборов операций XAudio2 .

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

Возвращает S_OK в случае успешного выполнения, в противном случае — код ошибки. Описание кодов ошибок XAudio2 см. в разделе Коды ошибок XAudio2 .

Комментарии

Все исходные буферы, помещенные в очередь в голосе, и текущее положение курсора сохраняются. Это позволяет голосу продолжать работу с того места, где он был выключен, при перезапуске. Метод IXAudio2SourceVoice::FlushSourceBuffers можно использовать для очистки буферов источника в очереди.

По умолчанию все ожидающие выходные данные голосовых эффектов, например реверберации, не воспроизводится. Вместо этого голос сразу же становится беззвучным. Флаг XAUDIO2_PLAY_TAILS можно использовать для продолжения вывода эффекта после остановки голоса.

Голос, остановленный флагом XAUDIO2_PLAY_TAILS, перестает потреблять исходные буферы, но продолжает обрабатывать свои эффекты и отправлять звук в целевые голоса. Позже голос в этом состоянии можно полностью остановить, вызвав stop еще раз с аргументом Flags равным 0. Это позволяет остановить голос с помощью XAUDIO2_PLAY_TAILS, дождаться достаточного времени для завершения любого звука, создаваемого его эффектами, а затем полностью остановить голос, вызывая stop again без XAUDIO2_PLAY_TAILS. Этот метод позволяет корректно останавливать голоса с эффектами, гарантируя, что бездействующие голоса не будут продолжать обрабатываться после завершения производства звука.

Остановка всегда является асинхронной, даже если она вызывается в рамках обратного вызова.

Примечание XAudio2 никогда не вызывает голосовые обратные вызовы для голоса, если голос остановлен (даже если он был остановлен с помощью XAUDIO2_PLAY_TAILS).
 

Требования к платформе

Windows 10 (XAudio2.9); Windows 8, Windows Phone 8 (XAudio 2.8); Пакет SDK для DirectX (XAudio 2.7)

Требования

   
Целевая платформа Windows
Header xaudio2.h

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

IXAudio2SourceVoice

Обзор протокола XAPO