共用方式為


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旗標停止的語音會停止取用來源緩衝區,但會繼續處理其效果,並將音訊傳送至其目的地語音。 稍後可以透過將 Flags 引數設定為 0 的 Flags 引數再次呼叫 Stop ,以完全停止此狀態的語音。 這可讓停止具有XAUDIO2_PLAY_TAILS的語音、等候足夠的時間讓其效果產生的任何音訊完成,然後在不需XAUDIO2_PLAY_TAILS的情況下再次呼叫 Stop 來完全停止語音。 這項技術可讓具有效果的語音正常停止,同時確保閒置的語音在完成產生音訊之後不會繼續處理。

即使在回呼內呼叫,Stop一律是非同步。

注意 如果語音停止,XAudio2 永遠不會呼叫語音的任何語音回呼 (即使已停止XAUDIO2_PLAY_TAILS) 也一樣。
 

平臺需求

Windows 10 (XAudio2.9) ;Windows 8,Windows Phone 8 (XAudio 2.8) ;DirectX SDK (XAudio 2.7)

規格需求

   
目標平台 Windows
標頭 xaudio2.h

另請參閱

IXAudio2SourceVoice

XAPO 概觀