藤本健のDigital Audio Laboratory

第842回

Bluetooth MIDIは本当に遅延が大きい? 測定して比べてみた

2月22日に日米でMIDI 2.0の合意があり、正式にMIDIの新規格がまとまった。ただ、実際にMIDI 2.0対応製品が登場し、われわれ一般ユーザーが利用可能になるまでにはまだしばらく時間がかかりそうだ。その一方で、従来のMIDI 1.0を拡張する規格もいろいろ登場してきており、電子楽器ユーザーはさまざまな形で恩恵を受けている。その一つが2016年にMIDI規格推奨応用事例(RP/Recommended Practice)としてリリースされたMIDI over Bluetooth LEだ。一般的にはBluetooth MIDIとかBLE-MIDIとも呼ばれるもので、要するにBluetoothを利用してMIDIを飛ばす規格である。

MIDI over Bluetooth LE機器の一例

すでに各社からさまざまな製品が登場しており、非常に便利だから、もっと爆発的に広がってもいいように思うものの、今一つ盛り上がりに欠けるというか、いまだに知られていないような気もする。

その広がらない理由の一つが「Bluetoothだからレイテンシーが大きい」と言われている点。確かにBLE-MIDI登場当初は気になる点はいろいろあったが、その後劇的に改善し、現在はワイヤレスであることを忘れてしまうほど違和感がないのも事実。そこで、実際BLE-MIDIを使った際のレイテンシーがどのくらいなのか測定してみることにした。

個人的にはとっても気に入っているBLE-MIDI。最近少しずつさまざまな製品に搭載されるようになってはきているものの、まだまだマイナーな存在だ。今どきは5ピンDINのMIDIケーブルを使うケースはあまりなくなり、一般的にはUSBでMIDI信号を送ることのほうが多くなっているが、やはりケーブルなしのワイヤレスであるのが便利であるのは間違いない。とはいえ、大きなレイテンシーがあるとしたらネックとなるので、実際どのくらいのレイテンシーがあるのか測ってみたいと前々から思ってはいた。

が、実際にどうすれば測定できるのだろうか……。そうした中、キッコサウンドの代表取締役であり、BLE-MIDI規格化以前に、Bluetoothを使ってMIDIを飛ばす製品を何種類も開発してきた廣井真氏に先日相談してみた。そうしたところ、廣井氏自身は、マイコンを使った測定用の機材を開発し、それで自動計測できるようにしていると話していたが、一般の人がするなら、もっとローテクな方法でできるとアドバイスいただいた。

具体的にはMIDI鍵盤を叩く音と、BLE-MIDIで飛ばして出てくる音源の音をそのまま一緒に録音し、その時間差がどのくらいあるかを波形エディタで見て調べるという手法。ただし、BLE-MIDIの仕組み上、レイテンシーにはある程度のバラつきがあるので複数回測定して、その平均値を出すのがいい、というアドバイスも合わせていただいた。廣井氏の自動測定方法では100回の平均を出しているとのことだったが、10回程度試してみても悪くはなさそうだ。

でも、そもそもそんな方法で、うまく測定できるものなのか……。物は試しということで、手元にあったMIDI PLUSというメーカーのMIDI鍵盤、X4 miniに、キッコサウンドのBLE-MIDIアダプタであるmi.1を接続してテストしてみることにした。

BLE-MIDIアダプタのmi.1
MIDI鍵盤X4 miniに接続

ご存知ない方に説明すると、このBLE-MIDIアダプタであるmi.1は楽器のMIDI端子の入出力に接続することで、本来MIDIケーブルに流れるMIDI信号をそのままBluetoothで飛ばしてしまおうというもの。MIDI出力端子から出る微弱な電気をそのまま電源にしてしまうから、電池も不要で使える便利な機材。その後、ヤマハからも同じコンセプトのMD-BT01という製品が出ているが、ここではmi.1で試してみた。

ちなみにmi.1は3世代のリビジョンがリリースされているが、筆者の手元にあるのはRev.1という最初の世代のもの。これのファームウェアをアップデートしたものだが、廣井氏に聞いたところ、Rev.1もRev.3も単音で測定するのであれば、レイテンシーに違いはないとのこと。和音の場合はRev.3だとレイテンシーを小さくする工夫がされているとのことだが、ここでは単音での測定なので、そのまま使うことにしたのだ。

一方、このBluetoothの接続先はコルグが出したiOS用の音源アプリであるModule。このアプリのレイテンシーが非常に小さく感じていたが、廣井氏もModuleのレイテンシーはいろいろあるiOSアプリの中でも抜群にいい、と話していたので、これを使ってみることにした。

コルグのModule

あらかじめmi.1とModuleをBLE-MIDIで接続。そしてセッティングとしては写真のように机の上にMIDIキーボードとiPadを並べ、そのすぐそばにマイクを設置する。爪を立てた形で鍵盤をコツンと弾くとほぼ同時にiPadから音が出るので、それをそのままマイクで録音してしまうという方法だ。

mi.1とModuleをBLE-MIDIで接続
MIDIキーボードとiPadのそばにマイクを設置

音速は340m/secだから逆算すると1m離れると1/340=約3msecのレイテンシーが発生する。そのため、できる限り距離によるレイテンシーをできるだけiPadのスピーカーに近い鍵盤をコツンと弾き、アタックが非常に小さいであろうピアノ音で録ってみた。何回か連続して録音した波形を掲載する。

【訂正】初出時、「1m離れると1/340=約1msecのレイテンシーが発生する」としていましたが、正しくは「約3msecのレイテンシー」のため修正しました(3月27日)

ピアノ音を録った時の波形

録音中の波形を見ると、頭に2つのピークがあるようなので、1つ目のピークが鍵盤をコツンと叩いた音で、2つ目のピークがModuleのピアノ音源が出す頭の部分ということのようだ。ところが、これを拡大していくと、その2つのピークがいま一つよく分からなくなる。

波形を拡大したところ

そこで、改めて、コツンと叩くだけの音、音源からだけの音をそれぞれ個別に録音し、波形を見てみた結果、状況が見えてきた。コツンもピアノ音も、いきなり頭がピークになっているわけではなく、小さな音から立ち上がっていくし、コツンのほうも余韻があり、その余韻とピアノ音の頭が重なっている。

コツンと叩くだけの音
音源からだけの音

先ほどの実験結果の波形を見ると、コツンの余韻の途中からピアノ波形による揺れが加わっていく部分が分かってくる。そこを範囲選択すると、レイテンシーが分かるので、それを1つずつ12回測った結果を表にまとめた。

「コツン」の余韻の途中からピアノ波形による揺れが加わっていく部分
12回測定した結果

これを見ると、コツンと叩いてから音が出るまでに平均30.4msecのレイテンシーがあり、±8msec程度のバラつきがあることが分かる。では、この30.4msecがBLE-MIDIでのレイテンシーなのかというと、そうとは限らない。そもそも鍵盤にストロークがあるから、コツンといった瞬間から、実際に押されてキースイッチがONになるまでに時間がかかるし、MIDIキーボード内部処理でのレイテンシーがある可能性もある。さらにはMIDIの伝送にも規格上31.25kbpsという速度が規定されているからこれによるレイテンシーの可能性もある。そして今回使ったKORGの音源Moduleのレイテンシーがあり、そこからオーディオインターフェイス部分でのレイテンシーもあるので、これらを引き算してみないことにはBLE-MIDIにすることによる影響は測れない。ちなみにModuleからオーディオインターフェイスでのレイテンシーを下げるため、オーディオレイテンシーは最小の64sampleに設定しているので、48kHzで動作していると考えた場合1.3msecのレイテンシーではある。

オーディオレイテンシーは最小の64sampleに設定

この部分をしっかりチェックするため、iPadに接続可能なUSBクラスコンプライアント対応MIDIインターフェイスのローランドUM-ONE mk2を買って接続し、先ほどと同様に12回測って差分をチェックしてみた。その結果、こちらはバラつきはまったくなく、毎回17msecという結果になったので、引き算をするとBLE-MIDIを使うことで13.4msecぶん遅れるということになる。

ローランドのUM-ONE mk2
測定結果

ただ、これだけですべてを結論づけるのは早いと思い、別の機材を使っても同様の実験を2種類行なった。1つ目はコルグの小さな鍵盤、nanoKEY2にヤマハのUD-BT01という機材を使っての実験。UD-BT01はMIDI端子がなくUSB端子からMIDI出力する機材をBLE-MIDI化するというもの。

nanoKEY2にUD-BT01を接続

もうひとつは、あらかじめBLE-MIDI機能を本体に組み込んだキーボードであるコルグのmicroKEY Airだ。

BLE-MIDI機能を組み込んでいるmicroKEY Air

それぞれ、同じ実験を12回ずつ繰り返すとともに、MIDI接続した場合のレイテンシーもチェック。その値を12回の平均から引いた差分を取り出し、先ほどのX4miniとmi.1での結果と並べて表にまとめてみた。

3つの方法の比較

こうやってみると、各組合せで値がそれぞれ違うのがちょっと気になるところだ。nanoKEYの場合、電卓のようなスイッチ鍵盤であるためストロークが浅いからコツンと当たってから信号が出るまでの時間が短いということなのかもしれない。一方でmicroKEY Airがちょっと遅い数値になってしまったのは理由が判然としない。ただ、iOS13になったタイミングでコルグのBLE-MIDI製品がすべて使えなくなり、昨年11月末に公開されたファームウェアのアップデータでようやく利用可能になったということと何らかの関係があるのかもしれない。

そもそも、なぜ値にバラつきがあるのかなど、前出の廣井氏に質問してみたところ、以下のようなコメントをもらった。

「バラつきが生じるのは、iOSの場合、Bluetoothのコネクションインターバルが存在するためです。コネクションインターバルとは、Bluetoothの通信の周期のことで、15msec毎に通信するため、0~15msecの範囲でレイテンシーが発生します。最大15msecですが、7.5±7.5msecと考えるとわかりやすいと思います。ただし、機器同士が離れていたり、2.4GHzが混んでいたりすると、通信に失敗する(CRCエラー)ことがあり再送するため次の通信周期まで15msec待たされることがあります。こうなると7.5 ±7.5msec + 15msecがBluetoothの遅延になります」

機種によって多少の違いはあるものの、BLE-MIDIのレイテンシーはこの程度の数値であり、MIDIケーブルやUSBケーブルで接続した場合と比較すると10msec程度遅れるという結果が得られた。

これをどう捉えるかはユーザー次第。ストリングス系やブラス系などアタックが遅い音源を弾くのならまったく問題にならないが、ピアノ音源などアタックが速い音源だと、普段ピアノを弾いている人にとっては少し気になるかもしれない。もっとも多くの人にとっては、ほとんど気にならないレベルだし、慣れてしまえば、十分使える範囲だと思う。いずれにせよ、ケーブルのないキーボード、楽器はとても快適なので、ぜひ一度試してみてはいかがだろうか?

藤本健

 リクルートに15年勤務した後、2004年に有限会社フラクタル・デザインを設立。リクルート在籍時代からMIDI、オーディオ、レコーディング関連の記事を中心に執筆している。以前にはシーケンスソフトの開発やMIDIインターフェイス、パソコン用音源の開発に携わったこともあるため、現在でも、システム周りの知識は深い。  著書に「コンプリートDTMガイドブック」(リットーミュージック)、「できる初音ミク&鏡音リン・レン 」(インプレスジャパン)、「MASTER OF SONAR」(BNN新社)などがある。またブログ型ニュースサイトDTMステーションを運営するほか、All AboutではDTM・デジタルレコーディング担当ガイドも務めている。Twitterは@kenfujimoto