藤本健のDigital Audio Laboratory

第837回

iOSで再生する音はビットパーフェクト出力できる? 実験してみた

先日、「Macの音は問題なくビットパーフェクト出力」は本当なのか? というテーマで、macOS 10.14 Mojave、およびmacOS 10.15 Catalinaでの検証を行なった。その時、読者からのツイートなどで要望が来ていたのが「iOSについても同じ検証をしてほしい」というもの。確かに普段iPhoneで音楽を聴いている人も多いと思うので、チェックしておいたほうが良さそうだ。そこで、Macと同じ実験をiOSでもしてみた。

iPadでビットパーフェクト出力できるのかチェックしてみた

iOSとUSBオーディオインターフェイスを接続……でも問題発生

先日も書いた通り、Macでの音楽再生がビットパーフェクトであるかを検証した背景は、「Windows標準のオーディオエンジン利用時はビットパーフェクトではないため」だ。もちろん、ASIOドライバやWASAPI排他ドライバを使って、foobar2000とかMediaMonkey、MusicBeeといったプレーヤーを使って再生すればビットパーフェクトを実現できるが、標準のプレーヤーでそれができないため、この連載を通じて主張を続けているわけだが、一向に変化の兆しはない。

一方で、Macなら本当に大丈夫なのか……ということで先日MojaveでiTunesを使い、CatalinaでMusicアプリを使って試してみたところ、しっかりビットパーフェクトであることを確認できた。

では、それがiOSだったらどうなのかということで、今回改めて検証してみることにした。iPhoneでもiPadでもいいのだが、オーディオインターフェイスとの相性、電力供給という面で、USB Type-C端子搭載のiPad Pro 11インチを使って試してみることにした。これを使えば、先日Macで行なったのと同じ機材で簡単にできるはずと踏んだからだ。

具体的にはSteinbergのUSB Type-C接続のオーディオインターフェイス「UR816C」をiPadに接続し、そのS/PDIF出力からオーディオ信号を出力。一方、WindowsマシンにRolandのUA-101を接続し、そのS/PDIF入力にUR816Cからの信号を入れ、それをSound Forgeを用いてキャプチャするという方法だ。

簡単にできると思ったのだが、最初からつまずいた。確かにiPadのオーディオ出力先はUR816Cになり、Musicアプリで再生した音をUR816Cのヘッドフォン端子からモニターすることもできるし、アナログ端子から出力することはできる。またS/PDIFオプティカルケーブルを通じて同期信号は行なっているようで、UA-101側もそれに対応してロックしているけれど、音が出ない。iPad側で出力先をS/PDIFに設定できず、ここから出力することができないのだ。

UA-101との接続ではS/PDIFから音が出なかった

そこでSteinbergサイトから、ルーティングのためのユーティリティをダウンロードして使えばいいことを思い出し、dspMixFx UR-Cというアプリをインストールして使ってみたところ、そもそもS/PDIFの端子がここから見ることができない。デモモードで使うとS/PDIFとADAT切り替えなどがあるが、現状のバージョンだとこれがなくどうにも使えなかった。もしかしたらPC側のdspMixFX UR-Cで設定をして使えば動くのでは……と思って試してみたが、この方法もダメ。いきなり壁にぶつかってしまった。

S/PDIFが表示されなかった

もっともiOSのCore Audioの出力をS/PDIFで出せればいいだけの話なので、UR816Cにこだわる必要はない。とはいえ、手元にあったオーディオインターフェイスではS/PDIF出力はできるものの、強制的にリサンプリングがかかってしまうことが判明していたため、これを使ってはビットパーフェクトの検証ができない。それ以外にも探したものの、すぐに使えるS/PDIFを持ったオーディオインターフェイスが見当たらない。何か一つ実験用に買おうかと思っていたところ、ラトックの古い箱が見つかった。開けてみると小さなUSB DACが入っており、ここにS/PDIFの出力があったのだ。箱を見るとUSBオーディオアダプタ自作キット「RP-USBAK01」とある。実は10年前にこの連載の記事で取り上げていたものだ。

ラトック「RP-USBAK01」を使ってデジタル出力

10年間まったく触っていなかったので、動くかどうかも分からなかったが、接続するとすぐに認識し、Musicアプリで再生すると、RP-USBAK01のヘッドフォン端子から音が出る。フロントのLEDランプがつくと思われるところが空洞になっていたのが気になったので、念のためとケースをばらして基板を見てみると、どうやらLEDの取り付けミスをしていたことが発覚。本来であればピンの足を長くして、穴の位置にLEDを合わせるべきところ、足を短く切ってしまっていたのだ。そのため、USB接続すると基板上で緑に光っていたが、本質的な問題ではないので、ここでは無視して、これを使うことにした。

RP-USBAK01のヘッドフォン端子から音が出た
キットのLED取付をミスしていたようだ

このRP-USBAK01のS/PDIF出力を光デジタルケーブルでUA-101に接続してみると、しっかりと同期がロックされることが確認できた。そしてプレーヤーを再生すると、UA-101側から音が出てモニターすることができた。これをさっそくSound Forgeでレコーディングしてみた結果を掲載する。

正しく同期できた
Sound Forgeでレコーディングした結果

元のデータと同じものが再生できているかチェック。結果は……

では、この録音したものと、元のデータは同じなのだろうか? 以前と同様、efu氏開発のオーディオ比較ソフト、WaveCompareを使って比較してみた結果がこちらだ。無音状態を飛ばす設定で比較したところ、完全に一致。つまりビットパーフェクトを実現できていることが証明できたわけだ。

WaveCompareで検証してビットパーフェクトが確認できた

いま試したのは、筆者らの自主レーベルDTMステーションCreativeで出した楽曲の一部を切り出したWAVファイルだったので44.1kHz/16bitの素材。でもiOSおよび、Musicアプリでは48kHz/24bitまで対応しているので、48kHz/24bitのWAVファイルを用意して、まったく同じ実験をしてみた。

WAV 44.1kHz/16bitを使っていた

元のファイルと、転送した結果をWaveCompareで比較してみると、今度は完全不一致。やはり24bitだとうまくいかないのだろうかと、いろいろチェックしてみて、しばらくして分かった。それは、10年前に作ったキットが44.1kHzまたは48kHzの16bit対応であり、24bitに対応していなかっただけの話だったのだ。試しに、48kHz/16bitのデータを用意して実験しなおしてみたところ、今度は完全一致した。

24bitのデータは一致しなかった
48kHz/16bitは一致した

今回の実験はここまで。48kHz/24bitについては試すことができなかったが、iOSでも44.1kHz/16bitおよび48kHz/16bitにおいては専用のアプリを使うまでもなく標準機能だけでビットパーフェクトを実現することが証明できた。また機材が揃ったら、48kHz/24bitでの実験、さらにはアプリを使っての96kHz/24bitなどの実験をしてみてもいいかもしれない。

一方、まだテストしていないのがAndroid。手元には少し古い機材しかないので、最新機種を借りるか買うかするなどして、同様の実験をしてみたいと思っている。

藤本健

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