2012年11月12日

Bluetoothヘッドセットを使うと再生デバイスが勝手に変更されてしまう


SONY ソニーエリクソン Bluetoothワイヤレスヘッドセットマイク付き  ブラック MW600/B
SONY ソニーエリクソン Bluetoothワイヤレスヘッドセットマイク付き ブラック MW600/B
どもども。
自分はたまにSkypeで会話してるんだが、普通のヘッドセット使うのも何だかなーって思って、
Bluetoothのマイクを使おうかって思い立った。
で、いざペアリングするといつものスピーカーから音が出なくなった・・・
ペアリングすると再生デバイスが勝手に変更されるみたい・・・
自分は未だにWindows XPを使ってるんのでVistaや7などでも同様かどうかはわからないが、同じ悩みを持った人もいるかもしれない。
直接的な解決ではないけど、自分の対処方法を掲載してみる。


結論をいうと、色々ググってみたがペアリング時にデバイスが勝手に変更されることを回避する方法は見つけられなかった。
なので、再生デバイスを目的のデバイスに変更する為のスクリプトを作成して、簡単に変更し直せるようにした。

スクリプトの作成方法は「Windows でサウンドの再生デバイスを切り替えるためのスクリプト」でググると出てくると思うが、Windows 7を対象にしているみたい。
英語のフォーラムでWindows XPを対象とした記事も見つけたが、いまいち巧く動きそうにない気がする・・・
まぁ、設定ダイアログを表示してキー操作をエミュレートしているみたいなので、自分で作ってみることにした。

エミュレートのスクリプトを組む前にまずやりたいことを整理する。
やりたいことは「サウンドとオーディオ デバイスのプロパティ」を開き、既定のデバイスから目的のデバイスを選択して確定したい。
今回は「SB X-Fi Audio [EC00]」となる。
audio_property1.png

この画面。最初に選択されているタブが安定しない。
エミュレートするには、巧いこと「オーディオ」タブを開いてやらないといけない。
そのためには現在表示しているタブの把握が必要となり、そのための方法を考えてみた。
で、考えたのが「サウンド」タブの[名前を付けて保存(E)]ボタン。
このボタンを押すと「サウンド設定に名前を付けて保存」というダイアログが表示される。
ボタン名の最後の「(E)」のの部分はニーモニックと呼ばれるショートカットで、例えば Alt + E でアクセスすることができる。今回はこれを利用しようと思う。
audio_property2.png
これを利用して Alt + E をエミュレートして、「サウンド設定に名前を付けて保存」ダイアログが表示されるタブを見つけ、その次のタブを開いてやる(Ctrl + TAB をエミュレート)と目的の「オーディオ」タブを開けることができるということだ。

エミュレート内容を整理するとこうなる。
  1. 「サウンドとオーディオ デバイスのプロパティ」を開く

  2. タブを切り替えながら、Alt+Eを送信して「サウンド」タブを探す

  3. Ctrl+TABを押して「オーディオ」タブを開く

  4. Alt+Dを押して、既定のデバイスにフォーカスを当てる

  5. F4キーを押して、ドロップダウンリストを開く

  6. 目的のデバイスの頭文字キーを押下して、リストからデバイスを選択する

  7. Enterキーを2回押して変更を確定する
で、実際にこれをエミュレートするスクリプトをJScriptで以下の通り作成した。
※JScriptってかJavaScriptはあんまり触ったことないので、慣習的じゃない描き方などあればご容赦を・・・


このスクリプトをテキストファイルに保存して拡張子を .js で保存すれば、あとはそのファイルをダブルクリックすることで再生デバイスを切り替えることができる。
適当に作ったし環境依存性とかあるかもしれないので、このスクリプトを利用したいかなる不利益も責任は負えかねますけどねwwww

まぁ、ぶっちゃけAPI探してプログラム書いた方が良いと思うが、あんまり専門知識無しでできる方法で紹介できるようにJScriptを使ってみた。
少しでも参考になれば幸いです。
iBUFFALO Bluetooth USBアダプター 3.0+EDR対応 class2 ブラック BSHSBD04BK
iBUFFALO Bluetooth USBアダプター 3.0+EDR対応 class2 ブラック BSHSBD04BK
posted by たなん at 00:50| Comment(0) | オタクのパソコン講座 | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。