IDirectSoundBuffer8::GetStatus

GetStatus メソッドは、サウンド バッファーのステータスを取得します。

HRESULT 
GetStatus(
  LPDWORD pdwStatus
);

パラメータ

  • pdwStatus
    サウンド バッファーのステータスを受け取る変数のアドレスです。ステータスは、次のフラグの組み合わせです。

    説明
    DSBSTATUS_BUFFERLOSTバッファーは失われており、再生やロックを行う前に復元する必要があります。
    DSBSTATUS_LOOPINGバッファーはループしています。この値が設定されていない場合、バッファーはサウンド データの最後に達すると停止します。この値は、DSBSTATUS_PLAYING との組み合わせでのみ返されます。
    DSBSTATUS_PLAYINGバッファーは再生中です。この値が設定されていない場合、バッファーは停止しています。
    DSBSTATUS_LOCSOFTWAREバッファーはソフトウェアで再生中です。DSBCAPS_LOCDEFER フラグを指定して作成されたバッファーのみに設定されます。
    DSBSTATUS_LOCHARDWAREバッファーはハードウェアで再生中です。DSBCAPS_LOCDEFER フラグを指定して作成されたバッファーのみに設定されます。
    DSBSTATUS_TERMINATEDバッファーはボイス管理によって早めに終了され、停止しています。DSBCAPS_LOCDEFER フラグを指定して作成されたバッファーのみに設定されます。

戻り値

成功した場合は、DS_OK を返します。失敗した場合は、DSERR_INVALIDPARAM を返します。

解説 

DSBSTATUS_PLAYING は、バッファーの音が聞こえている場合に設定されます。遅延が原因で、Play または Stop を呼び出しても、ステータスがすぐに変更されない場合があります。

要件

ヘッダー: DSound.h 宣言

ライブラリ: Dsound3d.dll 内容

関連項目

IDirectSoundBuffer8