2009-07-21 4 views
1

マイクジャックが接続されているときに通知を受けたいOSで起動したイベント(特にVista) マイクが接続されていないと、 (ビスタ)。これはXPでは決して起こらなかった。マイクプラグインイベント/マイクアタッチイベントVista

マイクに「Bass Boost」、「Mic Boost(AGC)」などの「アドバンスコントロール」がある場合は、どのようにしてそれを制御するためのミキサーコントロールを得ることができますか?

開発用にMFCを使用しています。 ありがとう

答えて

0

IMMNotificationClientを実装し、OnDeviceAddedイベントを処理したいと考えています。
Vistaのさまざまなコントロールを使用する場合は、Device Topology APIを使用してコントロールを取得する方がよい場合があります(IAudioLoudnessなど)。そうでない場合は、ミキサーデバイスID &を列挙してエンドポイントIDを問い合わせる必要があります。あなたが興味を持っている実際のデバイスを見つけるためのエンドポイントID。

+0

こんにちはEric!返信いただきありがとうございます!今私はXPのために同じことを見つけるのに苦労している。私は、Vista SDKを使用していないが、古いバージョンは、したがって、IMMNotificationClientを取得することはできません。古いSDKでこれを行う方法はありますか?また、マイク/スピーカーが接続されていても(接続されているかどうか)調べることができますか? ありがとう –

+0

XPレベルのAPIにはあまり慣れていないので、あまり助けてはいけません。ごめんなさい。 –

+0

問題はありませんEric!マイクを使用して録音している間にユーザーのパワー/デシベルを検出する方法を知っていますか?私はユーザーの入力に応じてマイクの音量を調整したいと思います。私が使用しているアルゴリズムでは、waveInbuffer値にFFTを適用してパワーレベルを計算します。しかし、別のマシンでは、私は別のパワーレベルを得ています(マイクが接続されていなくても、機密レベルのサウンドカードと同じように、パワーレベルが上がります) 別の方法がありますか?おかげさまで –