最近、Bluetoothオーディオの「より一般的な課題」は音質では無く、接続の安定性や音飛びといったものにだんだんとなっているんじゃないかと個人的には思っている。
その中でクアルコム社から発表された、Bluetooth新コーデック「aptX Adaptive」は、まさにこの課題に対するアンサーとして出てきたもので、低遅延&接続安定性の改善&高音質を謳っており、実際にこれを搭載した製品が出てくるのはまだ先とは言え、目が離せない対象なんじゃないかと思う。
というわけで、今回はこの「aptX Adaptive」について、既存コーデックの課題を含めて、まとめてみたいと思う。
目次
- 既存コーデックにおける課題
- SBC(SubBand Codec)
- aptX
- aptX-HD(aptX High Definition)
- aptX-LL(aptX Low Latency)
- AAC(Advanced Audio Coding)
- LDAC
- 既存コーデックの問題点を読み解く
- aptX Adaptiveの仕様
- aptX Adaptiveは最適解になりうるか
- Bluetoothオーディオのミライ
既存コーデックにおける課題
新コーデックであるaptX Adaptiveを理解するためには、まず既存のコーデックのそれぞれの特徴と課題について知る必要があると思うので、まず過去にボクが得た知識から、その辺りをざっとまとめてみたいと思う。
さて、既存コーデックとしては、
- Bluetoothオーディオの標準コーデックであるSBC
- クアルコム社の推進しているaptX/aptX-HD/aptX-LL
- アップル社が推進しているAAC
- Sonyの推進しているLDAC
というコーデック達がほぼ、Bluetoothオーディオのコーデックとしては主流を占めていると言って良いだろう。
※なお、余談だけど、これ以外にHWA(High-Res Wireless Audio)というHuaweiが打ち出しているLDACに似たコーデックも存在しているのだけど、具体的にはまだ対応製品がほぼ無いに等しい状態なので、ここでは割愛。ちょっとあまりにLDACと似通っているので今後本当に権利等の問題含めて、このまま出てくるのかはわからないけど。
さて、これらのコーデックの主な特徴と課題について以下の通り。
目次に戻る
SBC(SubBand Codec)
Bluetoothの高音質な音楽伝送を実現するA2DPプロファイルの標準(必須)コーデックで、従来DVDで用いられていた「MPEG-1 Audio Layer 2」という圧縮アルゴリズムをベースに作られている。(なお、MP3が登場する以前の規格なので、MP3に圧縮率は劣る)
特徴としては、接続時に送受信機でネゴシエーションを行って、Bitpool値という値を決定し、それに応じて圧縮に用いるビットレートを変えて通信を行う点。
過去にはBluetooth通信が今よりも不安定だったため、低いBitpool値しか使えず、多くの機器で「Bitpool 32(200kbps以下)」が用いられた結果、「Bluetoothは音が悪い」の元凶となったが、現在の多くの機器では、最高のBitPool 53(328kbps)に対応しているので、規格上限の328kbpsで伝送を行っており、そこそこSBCが高音質に聴こえるという逆転現象が起こっている。
(なお、一部の機器では通信状況等によってBitPool値を可変で決定する、eSBCという亜流コーデックが用いられているとの情報もあり)
遅延については「220msec(±50msec)」と0.2秒程度の遅延があるため、動画を見る際にはこの遅延により「口と声がずれる」リップシンク問題が発生し、これもまた、Bluetoothオーディオが使いにくい印象を与えた元凶となっている。
現在は、特に使用料がフリーで使用できる点と、標準コーデックとしての互換性の高さ、BitPool 53を用いれば、リップシンクの問題はあるとは言え、音質面でもそこそこは担保できるところから、ある意味で「ちょうど良いコーデック」として広く根強く使用されている印象を持つコーデックとなっている。
目次に戻る
aptX
クアルコム(Qualcomm)社が保有する旧・英CSR社が開発した上記のSBCでの音質および遅延を解決するための新しいコーデック。
特徴としては、まず音質面では、アルゴリズムとしてはMP3で用いられている「MPEG-1 Audio Layer 3」を流用してSBCより圧縮効率を改善している点が挙げられる。
また、データ圧縮比を元の非圧縮音源から「4:1」としていて、44.1kHz/16bitのステレオ音源の場合で「352kbps」という固定ビットレートを用いており、こちらも音質面では重要なポイントとなるだろう。(44.1kHz×16bit×2÷4=352Kbps、48kHzのとき48kHz×16bit×2÷4=384Kbps)
遅延については、こちらはaptXの大きな特徴となっていて、「70ms(±10ms)」とSBCと比較して、3分の1程度になっていて、大きくリップシンク問題が解決されている。
aptXに関してはエンコード側については最近オープンソース化され、送信機に実装する場合には無料で使えるが、デコードは有料のため、受信機で実装する場合にはクアルコム社に対してライセンス料の支払いが必要となる。
目次に戻る
aptX-HD(aptX High Definition)
こちらもクアルコム社が提供しているコーデックとなり、aptXでは48kHz/16bitまでのサポートだったのに対して、aptX-HDではハイレゾの規定の下限である48kHz/24bitまで拡張した規格となっている。
なお、圧縮率についてはaptXと同様になっているので、48kHz/24bitのステレオ音源の場合で「576kbps」という固定ビットレートを用いる。(48kHz×24bit×2÷4=576kbps)
遅延については、公表されている値が無いので不明だけど、単純にビットレートがaptXに比べて、1.5倍になっているので、遅延もその分増えている(単純計算でも105msec以上)と考えた方が良いだろう。
aptX-HDもエンコード無料、デコード有料となり、aptXの拡張規格みたいなものなので、従来のaptXと差別化するブランド名と考えても良いかもしれない。
目次に戻る
aptX-LL(aptX Low Latency)
さて、aptX-LLはボクのブログでもさんざん紹介している&オススメしているコーデックとなる。
特に、その低遅延性能が売りで、その遅延量は「40msec(0.04秒)以下」とaptXと比較しても半分程度に抑えられていて、動画やゲーム等の用途に強いコーデックとなっている。
このaptX-LLについてはボクもさんざん仕様を調べているのだけど、仕様がほぼ非公開であり、断片的な情報でボクも理解しているのだけど、
- aptXのアルゴリズムにFastStreamというコーデック技術を適用
- A2DP Vender Specific(ベンダ拡張)によって実現している
という事で、他のコーデックとは異なり、A2DPの拡張という事で独自の実装を行っているものと想像している。
特に、クアルコム社のaptX Adaptiveのインタビューの中でも、「aptX LLの課題はWi-Fiアンテナとの共存が困難」と言っているので、aptX-LLではおそらく帯域の多重化を行っているんじゃないかと予想している。
上記の通り、かなり魅力的なコーデックではある物の、Bluetoothのオーディオコーデックとしては少し特殊な実装があるために、対応機器も少なめ&汎用コーデックとはなりえない、そんなコーデックとなっている。
なお、ボクの愛用しているAvantreeのAudition ProもaptX-LL対応で遅延が少ないので、PCでの動画視聴やゲームなどの用途で、かなり役立っているのでお勧めしておきたい。(ちなみに技適を気にする人がいるかもしれないけど、技適も取得してます。)
目次に戻る
AAC(Advanced Audio Coding)
AACはiPhoneやiPadにおける、ほぼ標準コーデックとして採用されている音声コーデックとなっており、その字面の通り、音楽配信などで用いられている「AAC」という圧縮コーデックを用いたコーデックとなっている。
音質に影響する転送ビットレートについては「VBR256kbps(平均256kbpsの可変ビットレート)」という事で、iTunesで配信されている音源と同じビットレートとなっているのだけど、iPhoneやiPadでは、システム音とミックスするために、デコード&再デコードを必ず行うので、実際の音質はそれよりも落ちてしまうと言われている。
なお、特にAACの大きな課題はその遅延で、公称値は無い物の最大で「800ms(0.8秒)」という大きな遅延が発生すると広く言われている。(余談だけど、120msecという情報を見かけることがあるかもしれないけど、これは「CBR128kbps(固定ビットレート128kbps)」を用いた場合。昔のiPhoneは128kbpsを用いていたのでその名残の情報だと思う。)
なお、実際にiPhoneを使っている人は「リップシンクは感じない」とも言っているので、AACの遅延に合わせて映像側の再生を遅らせるような、ソフトウェア側での調整を行っているのだと理解している。(Bluetoothでの公開情報は見た事が無いけど、AirPlayの技術では同様の事をやっているのを確認済み。なお、動画再生時の音声転送をCBR128kbpsでやってる、というのも可能性としてはあるんじゃないかと思っていたり。いずれにせよ、公開情報が無いのでこの辺りはあくまで個人の推測扱いでお願いします。)
以上、今やアップル社がほぼ単独で採用しているようなコーデックとなっているのだけど、多量の対応製品を出してしまった今、少なくともアップル社の標準コーデックとして今後とも使用されていくであろう、ある意味でガラパゴス的な位置づけのコーデックとなっている現状がある。
目次に戻る
LDAC
LDACはソニーが「ハイレゾ」を推進していく中で出してきた新しいコーデックで、多くのソニー製品が採用しており、特に高音質を売りとしているコーデックとなっている。
こちらも最近、エンコード側がオープンソース化され、送信機への実装については無料で実装ができるようになっている。(当然、受信機等のデコード側は有料)
特徴的なのがやはり、対応しているビットレートの幅で、通信環境に合わせて3段階が準備されているのだけど、「330kbps、660kbps、990kbps」の3つのデータ伝送速度に対応しており、最高の990kbsだとほぼSBCの3倍の帯域を確保できる。
また、サンプリングレートやビット深度についても「96kHz/24bit」まで対応しており、ハイレゾ音源をサンプリングレートやビット深度の変換なしに伝送できる点はかなり音質的にメリットがある。
上記のように良い事ずくめな気もするかもしれないけど、その一方でこちらも公表されていないけど、遅延の問題があり、動画視聴には適さない(かつこちらはアップルのようにOS側で誤魔化すこともできない)という課題が残る。
また、Bluetoothの実質的に伝送可能な帯域幅が1Mbps強程度のため、990kbpsというビットレートはこの上限に近くなっているので、屋外等の通信環境の悪いところではほぼ使い物にならず、実質的には330kbps/660kbpsを用いる事になる点も要注意となっている。
なお、遅延や通信環境の問題が気にならない「屋内における音楽鑑賞」ではかなりメリットがあるコーデックとなっているので、個人的にも採用が進んでほしいコーデックとなっている。
一点、SONY独自のコーデックとして、これまで普及が鈍化している傾向があったのだけど、Android8以降で標準コーデックとして準備される&SONY製品の多くはこのコーデックに対応しており、毎年新製品を発表しているので、これまでよりもずっと導入しやすい状況になっている点も要注目ポイントとなっている。
目次に戻る
既存コーデックの問題点を読み解く
さて、これまで、既存コーデックの仕様について書いて、さて「ここから課題を書くぞ」と思ったらaptX Adaptiveのプレスリリース用資料にきれいにまとまっていたので、こちらを参照して書いてみたいと思う(笑)
SBCから始まったとも言えるBluetoothオーディオには「音質」と「遅延」という2つの課題があり、多くのコーデックはSBCの改善として、以下のような対応を行っている。
- 音質改善のためにより圧縮効率の高いアルゴリズムを採用
- ビットレートを上げ、圧縮率を下げる事で音質改善を図る
- ハイレゾに対応するためにも、ビットレート拡張を行う
- aptXに関しては低遅延化を実現するためにパケット伝送等のアルゴリズムを改善
- アップル社はAACの激しい遅延を改善するため、音声遅延に合わせた一定量のディレイを挿入などソフトウェア的対策を実施
上記の改善の結果、
- 通信が安定した環境においてはLDACやaptX-HDにて高音質な音楽鑑賞が可能
- aptX-LLやAACを用いれば、コーデック性能もしくはソフトウェア調整にてリップシンク問題の発生しない動画視聴が可能
- aptX-LLを用いればゲーム等、タイミングがシビアな用途でもワイヤレスを実現
といった利点が産まれ、ある一定の用途では大きく改善された状況と言える。
しかし、一方で現在のBluetoothオーディオを取り巻く要求事項としては、過去の「高音質化」から変遷してきており、
- スマートフォンがイヤホンジャックを廃止した事により、スマートフォンにおける利用がメインのユーザー層になってきている。
- 動画&音楽といったマルチメディアを楽しむため、高音質と低遅延の両立が重要となっている。
- スマートフォンでゲームをする需要が高まっており、低遅延の欲求が高まっている。
という風に、「通信環境が悪い屋外でも通信が安定しており、高音質と低遅延に最適化されたコーデック」が求められる状況となっている。
特に屋外は他の無線機器との干渉もあり、通信環境が劣悪な状況で、既存の高音質コーデックと呼ばれるコーデックでは音飛びが酷く、使い物にならないという状況も発生しており、無線に移行した多くのユーザーが感じていることかとも思う。
これは、例えるならば、これまでのコーデックが「整地された道を速く走れるようにチューニングされてきた」のに対し、「荒れた道をそこそこ速く走れるようにチューニングしなおす必要が出てきた」という状況であり、スポーツカーからオフロードバイクへニーズが変化したようなイメージとでも言えばわかりやすいんじゃないだろうか。
目次に戻る
aptX Adaptiveの仕様
さて、上記の他のコーデック仕様&課題を踏まえた上で、クアルコムが提唱する新コーデック「aptX Adaptive」の仕様について確認していこう。
まずはその基本仕様を以下にまとめよう。
- オーディオフォーマットは最大24bit 48kHzでaptX HDと同等。
- ビットレートは276kbpsから420kbpsの可変ビットレートを用いる。
- 上記のビットレートは通信状況に合わせて自動&動的に調節される。
- aptX/aptX-HDとの互換性を確保。aptX接続時は276kbps、aptX-HD接続時は420kbpsの固定ビットレートを使用。
- 動画視聴&ゲーム用途を意識した低遅延モードを有し、50-80msec(0.05秒~0.08秒)の低遅延を実現。
この仕様を見てもらうとわかる通り、ビットレートは大胆にも下限を276kbpsと「より低いビットレートで音質的にギリギリのところ」を攻めている事がわかってもらえるかと思う。
その上で、これを動的にパラメータ調整し、通信状況の良い場合は最高の420kbpsで音質を担保し、通信状況が悪くなってくるとこれを下限の276kbpsまで下げて可能な限り「音飛びを回避する」実装となっている事がわかるだろう。
さらに、実装等はまだ詳細が明かされていないので不明だけど、低遅延モードという50-80msecというaptX-LLに比べれば大きな遅延となるが、aptX-LLのような独自実装なしにより低遅延化を実現しており、これも「ギリギリ遅れていないと人間が感じる下限」あたりを狙っていることがわかるだろう。
目次に戻る
aptX Adaptiveは最適解になりうるか
aptX Adaptiveはこの通り、色々と妥協を積み重ねてコーデックを組み立てているようにも思える。
だが、一方でこのように仕様を整理してみると、「現時点の技術で実現できる最適解」を目指した仕様のようにだんだんと思えてくる。
多くの人にとって、幾ら個々の音が高音質であっても、「音飛びが発生した時点で低音質」と感じる方が正しいんじゃないだろうか。そして、もっと言ってしまうとハイレゾや高音質なんて、多くの人は不要と思っているんじゃないだろうか。
なお、これを端的に表している話があると思っていて、それはボクを含めた多くの人がYoutubeの音楽動画を楽しんでいるという事だ。
Youtubeの音声ビットレートの上限はたかだか192kbpsにしか過ぎない。だけどまあ、ぶっちゃけ、結構聴けるという印象が皆さまも強いんじゃないだろうか。オーディオ好きはあまり言っちゃいけないんだけどね(笑)
そして、aptX Adaptiveの下限である276kbpsは、それよりもずっと高いビットレートを確保している。ならば、「Youtubeですら満足している。いわんやaptX Adaptiveをや」という話になるんじゃないだろうか(笑)
そして、遅延についても「50-80msec」という事であれば、例えば地上デジタル放送のフレームレートが 29.97fps(1秒間に29.97コマ)という事で、「1000msec(1秒)÷29.97=33msec」と1コマ33msecになっているので、秒間2-3コマ程度遅れるという話になるんだけど、これも多くの人が脳内で補完できるレベルの遅延と思って良いんじゃないだろうか。
特に小さなモバイル機器では、BluetoothとWiFiのアンテナ共用が難しくなるaptX-LLの採用はやはり難しいと思われるので、これがおそらく現時点のベストなんじゃないかと思う。
以上の通り、「考えれば考える程、多くの人にとってaptX Adaptiveは必要な仕様を備えた最適解という印象が強い」、そんなコーデックとなっていると皆さんも納得していただけるんじゃないだろうか。
目次に戻る
Bluetoothオーディオのミライ
さて、今回はaptX Adaptiveを通じて、ボクの知識の棚卸も兼ねた(笑)話題について書いてみたけど、繰り返しになるけど、「クアルコムもなかなか良いところ突いてきたなあ」というのがボクの印象だ。
ただし、言うなればaptX AdaptiveはaptXの正当なる後継と考えても良さそうで、LDACやaptX-LLのようにより高音質、より低遅延なその他のコーデックを駆逐するものとはならない気はしている。
おそらくだけど、現在のように併用された形で、ただ、屋外ではaptX Adaptiveを使用する、といった普及の仕方をするんじゃないだろうか。
- 通勤・通学時には音飛びに強いaptX Adaptiveを使用
- 自宅でのゲームでの利用には低遅延なaptX-LLを使用
- 自宅での音楽鑑賞時にはLDACを使用
うん、ボクならこうするなあ。ボクの愛用しているaptX-LLは何とか継続してほしいところなんだけど(笑)
「AAC Adaptive」とか「AAC-VBR512kbps」とか出てくると面白いんだけどねえ。
最後に、この魅力的なaptX Adaptiveが使えるようになる時期について。
クアルコムによると、9月以降に出荷するBluetooth 5.0オーディオ受信チップ(CSRA68100およびQCC5100シリーズ)にaptX Adaptiveデコーダーを含むのと、スマートフォンなどに搭載するエンコーダーについては、12月からAndroid P向けに提供が開始されるとの事なので、2019年の頭頃には何かしら試せる状況になっているんじゃないか、というところとなっている。
具体的な使い勝手等はたぶんボクもすぐに試すので、年明け以降にまた何か書きたいかと。
というわけで今回の話は以上となります。長々と読了いただき、ありがとうございました!
スポンサーリンク
スポンサーリンク