W1チップのBeats XでiPhone, iPad, Macbook Proの切り替えがとてもストレスフリーになってかなり満足しているのだが一つだけどうにも解決しない問題があった。
Duolingoを毎日やっているのだけど、スピーキング問題でマイク入力をする時にサウンドが著しく悪くなる現象に悩まされていた。どうもサウンドが別のものに切り替わっているらしく、音質が悪くなるだけでなく切り替え時のバッファでまともにセンテンスが出力されない、さらにはちょくちょくコネクション自体が切断される問題が出てきた。
少し調べた感じだいたい下記のような状況。
GoogleやTwitterで検索しても同じ症状で悩んでいる人はなかなか出てこない。まあBeats XなのでほとんどiOSユースだし、Macで音声入力バリバリ使う人もそんないないんだろう。
QiitaでBluetoothとマイクで検索するとAndroidの記事だが核心部分っぽいところが出てきた。
Bluetoothマイク使用中はSCOモードになるので音質が低下します(= mono, 16kHz or 8kHz)。音楽や効果音など再生している場合は特に注意、火傷します。 Bluetoothマイクから音声入力する方法@jfsso - Qiita
おー、かなりこれっぽいぞ!SCOで検索すると低レイテンシの音声転送に特化したBluetoothパケットという説明がある。
次にBeats XとSCOで検索するとようやく同じ症状で悩んでいるAppleのフォーラムを見つけた。
Beats X audio issues using Mac OS 10.12.4
ようやく不具合の正体が見えてきた。macOS上でBeats Xで音声入力をしようとした場合、AACコーデックを使用したイヤホンモードからSCOを使用したヘッドセットモードに移行する。そのため、切り替え時にバッファが生じるし、出力もSCOコーデックを使用するので音質も非常に悪い。
フォーラムで挙げられている解決策はMIDI Audio設定.appで出力:Beats X、入力:内部マイク(BeatsX以外ならOK)の機器セットを作成して、出力デバイスにそれを使用することだ。すなわち、Beats Xが入力デバイスに選択されないようにするというわけで、残念ながら現状はBeats Xで音声劣化せずにマイク入力はどうも無理っぽいようだ。
しょうがないので上記の対症療法だけでもやっておく。SpotlightやAlfredでAudio Midi設定を開いて機器セットを作成し、入出力を上記のような感じにしておく。
機器セットでBeatsXを入力、出力をBeatsX以外にする
あとは作成した機器セットをデバイスに指定する。ついでにシステム環境設定 > サウンドの設定項目の下にある「メニューバーに音量を表示」をオンにしておけばメニューバーから変更しやすい。
システム環境設定>サウンド
メニューバーから選択できるようになる
個人的にはMacbookを内部マイク非推奨のクラムシェルモードで使用しているため、できればBeatsXのマイクを使いつつ音質低下を避けられればベストだったんだけど。まあラップトップについては別途入力用のマイクを購入するって感じなのかな。あるいはStudio3でmacはワイヤード接続、iOS機器はBT接続という感じでもいいかも。
あとは、
音声入力は今後重要になると思っているのでできれば改善してほしいし、Beats X固有の問題ならまあ製品コンセプト的にそれも納得なんだけど、もうW1から離れられないので他製品でも同じ状況だとちょっとつらい。