共用方式為


使用方法:將音訊方法群組為操作集

本主題說明如何將 XAudio2 方法分組在一起,使其同時生效。

將音訊方法分組為作業集

  1. 宣告全域作業集計數器。

    作業集計數器可確保每個作業集都是唯一的。

    UINT32 OperationSetCounter = 0;
    
  2. 遞增全域計數器。

    每次提交新的 作業集時,全域計數器都應該遞增,以確保每個集合是唯一的。

    UINT32 OperationID = UINT32(InterlockedIncrement(LPLONG(&OperationSetCounter)));
    
  3. 藉由設定其 作業集 參數,將方法呼叫分組。

  4. 作業集參數設定 為全域計數器的目前值。

    在此情況下, IXAudio2SourceVoice::Start 的四個呼叫會分組為一個 作業集。 將呼叫分組會導致所有四個音效完全同時開始。

    hr = pSFXSourceVoice1->Start( 0, OperationID );
    hr = pSFXSourceVoice2->Start( 0, OperationID );
    hr = pSFXSourceVoice3->Start( 0, OperationID );
    hr = pSFXSourceVoice4->Start( 0, OperationID );
    
  5. 啟動 作業集

    呼叫集合中的所有方法之後,請使用全域計數器的目前值呼叫 IXAudio2::CommitChanges 來啟動集合。

    pXAudio2->CommitChanges(OperationID);
    

作業集

XAudio2 程式設計指南

XAudio2 作業集