ページ 11

Windows7でのダイレクトサウンドの件

Posted: 2010年7月09日(金) 20:46
by 爺プログラマー
static LPDIRECTSOUNDCAPTURE pDSC;
static LPDIRECTSOUNDCAPTUREBUFFER pDSCB;
static LPDIRECTSOUNDCAPTUREBUFFER8 ppDSCB8;






HRESULT hres = DirectSoundCaptureCreate8( NULL, &pDSC, NULL );
if(hres != DS_OK)goto NG;




この場合、エラーで録音のキャプチャーが取得できません。

64ビットではこの記述以外に必要な記述があるでしょうか?
お尋ねします。

Re:Windows7でのダイレクトサウンドの件

Posted: 2010年7月09日(金) 20:51
by 爺プログラマー
DSERR_ALLOCATED
DSERR_INVALIDPARAM
DSERR_NOAGGREGATION
DSERR_OUTOFMEMORY

これ以外のエラーになります。

Re:Windows7でのダイレクトサウンドの件

Posted: 2010年7月09日(金) 20:55
by シエル
第二引数の型あってますか?

Re:Windows7でのダイレクトサウンドの件

Posted: 2010年7月09日(金) 21:20
by 爺プログラマー
シエル さん、ありがとうございます。

形宣言はグローバルでこのようになっています。
static LPDIRECTSOUNDCAPTURE pDSC;

ただ、WindowsXP(32Bit)ではエラーは発生しません。

Re:Windows7でのダイレクトサウンドの件

Posted: 2010年7月09日(金) 21:31
by シエル
LPDIRECTSOUNDCAPTURE型って後ろに8って付かないんですかね?

Re:Windows7でのダイレクトサウンドの件

Posted: 2010年7月09日(金) 21:42
by 爺プログラマー
>LPDIRECTSOUNDCAPTURE型って後ろに8って付かないんですかね?
はい、
そうでしたDXバージョンは8でしたが付けなくてもコンパイラエラーにはなりませんでしたのでそのままにしています。
64Bitと関係があるでしょうか?
8をつけた場合OKなのかWin7が今ないので確認取れません。
今後確認してみます。

Re:Windows7でのダイレクトサウンドの件

Posted: 2010年7月09日(金) 22:56
by ISLe
エラーはDSERR_NODRIVER(0x88780078)ではないですか?

サウンドドライバによって違うかもしれませんが、Win7(x64)+Realtek HD Audioの環境ではマイク端子やライン入力端子に実際にケーブルを差さないと録音デバイスが有効になりません。

録音デバイスが有効になっていればDirectSoundCaptureCreate8は成功します。

Re:Windows7でのダイレクトサウンドの件

Posted: 2010年7月09日(金) 23:01
by ISLe
録音デバイスがプラグインで有効化/無効化するのはWindows7なら32ビットでも同じだと思います。

#たぶんVistaも。

Re:Windows7でのダイレクトサウンドの件

Posted: 2010年7月09日(金) 23:07
by 爺プログラマー
ISLe さん、回答ありがとうございます。

DSERR_NODRIVER
これは調べた以外のエラーですので、この可能性が高いです。

ケーブルを挿さない状態でのエラーだと言う事ですので、今度ケーブルを挿して確認してみます。

皆さんありがとうございました。