macOSって結構Bluetooth周りの機能がまぁまぁ良いって思ってたんですけど・・・。

Bluetooth Explorerが動かない

事の発端は、Bluetooth Explorerを使って、繋いでいるワイヤレスイヤホンが何のコーデックを使っているか調べようとしたときです。
Bluetooth ExplorerはXCode 11.5に付属しているユーティリティで、アダプタやデバイスの細かい情報が見れるものです。
自分が調べた時はM1 Macでも使えると書かれていたのでインストールしたのですが、なぜか動きません。何ならエラーメッセージが表示されるんです。

「これもしかしてM2からダメになった?」と疑いながら調べると、macOSのバージョンが関係しているようです。
Enabling AAC (Terminal or Bluetooth Explorer) on Monterey
このページを見ると、同じようにMontereyでBluetooth Explorerが使えないと言ってる人がいました。 Big Surでは使えていたようなので、何かAPIに変更が入ったのかもしれません。

MontereyでBluetoothイヤホンで使われているコーデックを確認する方法

Redditにあった質問の回答では、次の方法で確認できると言われています。

    1. ワイヤレスイヤホンとの接続を解除する
    1. 「コンソール」を開く
    1. 右上の検索バーで「codec」と検索する
    1. 画面中央にある「ストリーミングを開始」をクリック
    1. Macとワイヤレスイヤホンを繋ぐ

ここまでやるとコンソールに「codec」で引っかかるログが流れてきます。

この中から A2DP Configured at...で始まるログを探します。
その実際のログがこれです。

A2DP configured at 44.1 KHz. Codec: AAC-LC, VBR max: 256 kbps. 1 frames * (12+744) bytes = 756 per RTP (max=988) every 23.22 ms

これはソニーのWF-C500を繋いだときのログで、コーデックはAAC、ビットレートは可変(VBR)で256kbpsに設定されていることが分かりました。

こっそりaptXのサポートが削除されている

Twitterで「Montereyにアップデートしたら遅延が大きくなった」「MontereyにしたらaptXで繋がらなくなった」という声を聴きました。
実際に確かめるべく、PulseAudioを改造してLDACやaptXに対応させたPCをクライアントモードにして、繋いでみると…

bluetooth.a2dp_codec = "AAC"

やはりAACで繋がりました。aptXはサポートされなくなったようです。 確かにAACは音質がいいです。aptXはQualcommとのライセンスが必要みたいで、シェアが減るなか、不要と判断されたのでしょうか。