Windows PC の音を一時期 Bluetooth イヤホンで聴いていたが、どうにも遅延が大きくてリップシンクがずれすぎ、動画視聴は無理だったので、結局有線イヤホンに戻っていた。
しかし有線だと、イヤホンをはめていることを忘れて立ち上がった拍子にケーブルを強く引っぱってしまい、内部が少しずつ断線する事故が多発しがち。なので、改めて無線化することにし、BT イヤホンの遅延の件を何とかしようと決意した。
PC の USB 端子には BT オーディオトランスミッター (Creative BT-W2) を付けている。イヤホンと BT-W2 の間は BT 接続になり、Windows 上では USB オーディオ扱いになる。コーデックは SBC/aptX/aptX Low Latency。しかし BT-W2 にもイヤホン側にも、使用中のコーデックを表示する機能がないので、何がどう遅れているのか、これまでは切り分けが不可能だった。
なので、改めて BT-W3 を買いました。Bluetooth 2.1+EDR だったのが、Bluetooth 5.0 になった。コーデックは SBC/aptX/aptX HD/aptX LL の4つ使えるようになった。プッシュボタンでコーデックを切り替えることができ、何のコーデックを使っているかが LED の色で表示されるので精神衛生に非常に良い。
ということで、これを使ってコーデックごとの遅延を測定してみた。BT イヤホンも、これまで使ってきた AVIOT TE-D01d(SBC/aptX 対応)に加えて、オーム電機の AudioComm HP-W250N というのを買った。え、オーム電機のイヤホンですか、という感じだが、aptX LL が使えるイヤホンでは2番目くらいに安い(kakaku.com 調べ)。
測定には YouTube の遅延テスト用動画を使う。クリック音に合わせて動画を一時停止すると、何 ms 遅れているかが分かる。ブラウザは Firefox。YouTube の遅延補正をする拡張とかは入っていない。
クリック音の間隔は一定なので、音を聴いてから一時停止を押すまでの身体の反応時間については、「音が来るタイミングを知った上での反応時間」ということになる。各イヤホンの各コーデックごとに10回測定して平均をとった。比較のために有線イヤホンでも測定した。
結果は以下の通り。エラーバーは10回の測定の標準偏差を示す。
同じコーデックでも、TE-D01d は HP-W250N よりなんか遅いですね。完全ワイヤレスとネックバンド型の違いとか、オーディオ SoC の性能差とか、何かいろいろあるのだろう。
感動したのは aptX LL の遅延の小ささ。平均60ms という結果で、動画を見ても口パクのずれはほぼまったく気にならないレベル。
意外だったのは aptX の遅延。SBC よりは少ないが、さほど変わらない。公称値では SBC が200-250ms、aptX が 32ms とか謳っているようなのだが、測定結果は全然違う。この公称値を信じて、「あれー、トランスミッターもイヤホンも aptX 対応なのに何でこんなにずれるんだろう」と長らく疑問だったが、実は aptX でも 200ms 以上遅れていた。うちの環境だけこうなのかは不明。
ということで、断線のリスクがなく、音ズレもない快適な動画視聴ライフを送れるようになった。素晴らしい。