Platform SDK: DirectX

IDirectSoundCaptureBuffer::Unlock

IDirectSoundCaptureBuffer::Unlock メソッドは、バッファをアンロックする。

HRESULT Unlock(
  LPVOID lpvAudioPtr1, 
  DWORD dwAudioBytes1, 
  LPVOID lpvAudioPtr2, 
  DWORD dwAudioBytes2  
);

パラメータ

lpvAudioPtr1
IDirectSoundCaptureBuffer::Lock メソッドの lplpvAudioPtr1 パラメータで取得した値のアドレス。
dwAudioBytes1
lpvAudioPtr1 パラメータから実際に読み込まれたバイト数。IDirectSoundCaptureBuffer::Lock メソッドが返したバイト数以下とすべきである。
lpvAudioPtr2
IDirectSoundCaptureBuffer::Lock メソッドの lplpvAudioPtr2 パラメータで取得した値のアドレス。
dwAudioBytes2
lpvAudioPtr2 パラメータから実際に読み込まれたバイト数。IDirectSoundCaptureBuffer::Lock メソッドが返したバイト数以下とすべきである。

戻り値

成功すれば DS_OK、失敗すれば次のエラー値のいずれかを返す。

DSERR_INVALIDPARAM
DSERR_INVALIDCALL

注意

アプリケーションは、IDirectSoundCaptureBuffer::Lock IDirectSoundCaptureBuffer::Unlock を正しく組み合わせて、IDirectSoundCaptureBuffer::Lock メソッドが返した 2 つのポインタ lpvAudioPtr1 lpvAudioPtr2 の両方を IDirectSoundCaptureBuffer::Unlock に渡さなければならない。たとえ 2 番目のポインタに 0 バイトが書き込まれた場合でも、2 番目のポインタは必要である。

アプリケーションは 2 つのポインタに実際に書き込まれたバイト数を、dwAudioBytes1 dwAudioBytes2 の各パラメータに渡さなければならない。

サウンド キャプチャ バッファのロック状態を長時間維持しないよう注意すること。

動作環境

  Windows NT/2000 : Windows 2000 が必要。
  Windows 95/98 : Windows 95 以降が必要。Windows 95 用に再配布可能な形で使用可能。
  ヘッダー : dsound.h で宣言。
  インポート ライブラリ : dsound.lib を使用。