トラブルシューティング
Bluetoothでキーボードの音が遅れる理由と、その直し方
キーはすぐにアプリへ届きます。音のほうは、耳に届く前にワイヤレスのオーディオバッファの中で待たされることがあります。
キーボードのイベント自体はすぐに処理されていても、キーボードの音が遅れて感じられることがあります。画面上の文字と耳に届くクリック音が、それぞれ別の経路を通るからです。
文字はキーボードからmacOSを経て、アクティブなアプリケーションへ届きます。TypeLouderはそのイベントのリッスン専用のコピーを受け取り、あらかじめ読み込んだサンプルを鳴らし始めます。出力がBluetoothの場合、音声はそのあとエンコードされ、バッファに溜められ、無線で送られ、デコードされてから、ようやくヘッドフォンで再生されます。
音楽では、その遅延が問題になることはまずありません。しかし指先に結びついた0.2秒ほどのキーのサンプルでは、はっきり分かります。
30秒のテストを走らせる #
- TypeLouderでBluetoothヘッドフォンを選びます。
- 普段の速さで1文打ちます。
- 開くのは 設定 → サウンド → オーディオ出力.
- TypeLouderをMacの内蔵スピーカーに切り替えます。
- 同じ文をもう一度打ちます。
内蔵スピーカーで即座に感じられるなら、キーの検出は正しく動いていて、違いはBluetoothの経路にあります。アプリを入れ直したり、入力監視をリセットしたり、速いMacを買ったりする必要はありません。
映像が同じように遅れて見えない理由 #
動画プレーヤーは、これから提示する映像と音声を前もって把握しています。だからBluetoothのバッファに合わせて映像を遅らせられます。その場の打鍵は予測できません。TypeLouderは指がキーを押す前にクリック音を鳴らし始めることができないので、動画のような補正はできません。
リズムゲームや生の楽器がワイヤレス出力に敏感なのも同じ理由です。大事なのは音質ではなく、予測できない動作とその反応との間の時間です。
最もきびきび感じられる出力 #
同期が何より大事なときは、これらを使ってください:
- Macの内蔵スピーカー: 経路が短く、MacBookでは特に説得力のある位置から鳴ります。
- 有線ヘッドフォン: Bluetoothの無線とコーデックの段階を挟まずに、自分だけで聴けます。
- USBまたはThunderboltのオーディオインターフェイス: 実用的なバッファサイズに設定すれば、机まわりの良い選択肢になります。
- 有線ディスプレイの音声: たいていは許容できますが、HDMIやディスプレイ自体が処理を加えることがあります。
AirPodsなどのBluetoothヘッドフォンでも、オフィスではやはり正解になりえます。完全な同期よりプライバシーのほうが大事なこともあるからです。音量は低めにして、柔らかめのパックを選んでください。丸みのある低い音のほうが、鋭いクリックより小さな遅れが目立ちにくくなります。
押すたびにファイル処理をしていないか確かめる #
きちんと作られたキーボードサウンドアプリは、入力が始まる前にサンプルを読み込んでおきます。キーを押すたびに音声ファイルを開いてデコードしていては、遅延がばらつき、特に一息ついたあとの最初の1打がひどいことになります。
TypeLouderはサンプルをあらかじめ読み込み、オーディオプレーヤーやデコード済みのバッファを再利用します。イベントタップはリッスン専用なので、執筆中のアプリへ送られる打鍵を遅らせたり飲み込んだりすることはできません。残るのは出力側の経路で、耳が判断しているのはそちらです。
効果の大きい順の対処 #
- 内蔵スピーカーで試して、Bluetoothの影響を切り分けます。
- プライバシーと正確なタイミングの両方が必要なときは、有線のヘッドフォンを使ってください。
- キー音の音量を下げてください。大きな立ち上がりの音ほど、タイミングのずれが目立ちます。
- 鋭いFrost Clickの代わりに、Ruby ThockかMidnight Thockを試してみてください。
- 必要がないかぎり、ワイヤレスや仮想オーディオの経路を余分に挟まないでください。
- 遅れが急にいつもよりひどくなった場合は、デバイスを接続し直してください。
サウンドパックを変えても伝送による遅延そのものはなくなりませんが、音の形が変わると遅れの感じ方も変わります。アタックの違いを比べられるのが 無料のサウンドラボ です。いま使っている出力のままで確かめられます。
関連する読み物 #
よくある質問
AirPodsだとキーボードの音が遅れるのはなぜですか?
Bluetoothの音声は、再生されるまでにエンコード、バッファリング、送信、デコードを経ます。この経路で加わる遅延は、短いクリック音を目の前の実際の動作に合わせようとすると、はっきり分かってしまいます。
キーボードサウンドアプリはタイピングを遅くしますか?
TypeLouderのような受信専用のアプリは、キーイベントのコピーを受け取るだけで、キーボードとアクティブなアプリの間に入ることはありません。文字と音声は別々の経路をたどります。
体感の遅れが最も小さい出力はどれですか?
Macの内蔵スピーカー、有線ヘッドフォン、有線のオーディオインターフェイスは、Bluetoothのエンコードとバッファリングを通らないため、おおむねきびきび感じられます。