MacのGarageBandでFFT解析(周波数特性測定)

shapeimage_1-9

Macで測定してみよう。1

Mac(OSX)は、音楽制作やオーディオでは一定の評価がありますが、WindowsやiOSには測定ツールがそこそこ出回っているのに、Macだと意外となかったりします。
そんな中、私も半ば意地でMacで測定(FFT解析)してたりします。

ということで、珍しくHowTo物です。

今回はGarageBandでFFT解析してみましょう。
FFT解析に使うツールは、VoxengoのSPAN(フリー)です。
これは単独のアプリケーションではなく、AU(AudioUnit)プラグインになっており、様々なアプリケーションから使うことができます。
逆にいうと、AUプラグインが使えるアプリケーションとセットでないと動きません。。
今回、AUプラグインのホストアプリケーションとして、Apple純正のGaragebandで説明します。

具体的な環境として、
OSX Mavericks(10.6以降でも動くようですが、設定表示等、Mavericksで説明します。)
https://itunes.apple.com/jp/app/os-x-mavericks/id675248567?mt=12&ls=1

GarageBand 10.0.x
Ver10から、表示、操作が大きく変わりました。
https://itunes.apple.com/jp/app/garageband/id682658836?mt=12&ls=1

Voxengo SPAN
下記ページのDownload AudioUnit for Macをクリックするとダウンロードされます。
http://www.voxengo.com/product/span/

これらがインストールされていることを前提に進めます。
インストール方法は省略しますので自己解決をお願いします。

あと、設定変更や確認をするのに、Audio MIDI 設定(アプリケーション→ユーティリティの中にあります)を使うので、ドックのシステム環境設定の隣にでも登録しておくことをお勧めします。
2014-04-13-11-19-34

2014-04-13-11-16-12

その他、ハードウエアとして、
Macで使用可能なオーディオインターフェース(USB、FireWire、Thunderbolt接続など)、
マイク、
測定対象機器、
測定用信号発生器/録音対象音源などを揃えます。

オーディオインターフェースはMac内蔵のライン入出力ポートを使う手もありますが、最近のMacにはライン入力のないものもありますし、品質の良い状態で録音、測定するには、可能な限り良質な外部インターフェースが必要です。
今回は(古の)ローランドUA-3FX (http://www.roland.co.jp/products/jp/UA-3FX/)を使います。
なお、UA-3FXが可能な限り良質か?という突込みはこの際受付けません。(笑)
これでも24bit時に120dB位のダイナミックレンジが取れ、普通に使うには充分なはずです。

音源はラインレベルとして、フォノイコライザーの出力を用意して、アナログレコードを解析しながらデジタル化しちゃいます。

・オーディオインターフェースの準備
UA-3FXは、48kHz/24bitステレオの入出力が可能なUSBバスパワーのインターフェースです。
このインターフェースはサンプリング周波数と内部ルーティングを本体のスイッチで設定する必要があります。MASTERING、44.1kHz、ANALOGにしておき、USBポートに接続します。
(48kHzを使わない理由は後述します。)
img_9515

なお、インターフェースによっては、専用のドライバーソフトが必要だったり、内部ルーティングをソフトウエアで制御するものがあります。
また、多チャンネルインターフェースの場合、物理ポートとOS側に表示されるインターフェース名やチャンネル名もソフトで設定しておく必要があるものもあります。

・OSX(CoreAudio)設定
インターフェースを接続したら、AudioMIDI設定を開きます。
UA-3FXを選択します。
入力/出力のビットレートを24bit整数にします。
2014-04-13-11-27-40

UA-3FXの場合は、入力と出力のビットレートは連動する様です。
サンプリング周波数が、UA-3FXの本体側で設定した44.1kHzであることを確認します。
UA-3FXは同期転送なので、クロックソースがデフォルト(Mac側)と表示されています。
2014-04-13-11-29-05

なお、サンプリング周波数がソフト制御になっているインターフェース場合、ここの表示が選択式になります。
アシンクロナス(非同期)転送の装置の場合は、クロックソースに装置の名前が表示されます。
下記はUSB AudioClass2.0 対応のDDCの例です。
この装置の場合、サンプルレートが変えられるようになっていますが、ビットレートは24bit整数で固定です。
2014-04-13-11-30-14

・GarageBand設定
GarageBandは無料で使いやすい半面、機能的にはサンプリングレートが44.1kHz固定です。
このため、オーディオインターフェースのサンプリングレートがソフト制御のものは、AudioMIDI設定で違う周波数にしていても、GarageBandに接続したとき強制的に44.1kHzに変更されます。
サンプルレートが固定式で44.1kHz以外の周波数のインターフェースを使ったときは、CoreAudioで自動的にサンプルレートが変換されます。
ビットレートは16bitと24bitに対応しています。
ちなみに24bit時はJEITA基準では「ハイレゾ」を名乗れます。
インターフェース(UA-3FX)本体のサンプルレートを44.1kHzにしたのは、このGarageBandの仕様に合わせるためです。

GarageBandを起動します。
録音するので、新規プロジェクトを作ります。
詳細を開き、
テンポ:120(1拍0.5秒)
オーディオ入力:UA-3FX(入力するインターフェースを指定)
2014-04-13-11-45-16

オーディオ出力:内蔵出力(モニター出力する装置を指定)
2014-04-13-11-42-13

選択ボタンを押すと、新規トラック画面になり、トラック設定を訊かれますので、
オーディオ(マイクまたはライン)
入力:1+2(ステレオ)
演奏や録音中に自分の音源の音を聴くにチェックを入れ、
作成ボタンを押します。
2014-04-13-12-04-00

環境設定を開きます。
オーディオ/MIDI環境設定ペイン
出力デバイス:内蔵出力(モニターする装置)
入力デバイス:UA-3FX(入力装置)
エフェクト:Audio Unitsにチェック(これ入れないと始まらない。)
2014-04-13-12-57-24

続いて、詳細環境設定ペイン
オーディオ録音レゾリューション:24ビットにチェック(ハイレゾ)
自動ノーマライズ:チェックを外す(勝手にコンプリミッターが効いちゃうのを防止)
2014-04-13-13-02-10

環境設定を閉じてトラック画面に戻ります。
2014-04-13-13-07-10

SmartControlをON
2014-04-13-13-07-52

カウントインとメトロノームをOFF
2014-04-13-13-14-12

標準のエフェクトスイッチをOFF
2014-04-13-13-34-49

マスターのエフェクトスイッチもOFF
2014-04-13-13-37-49

戻ってインスペクタを表示
自動レベルコントロールのチェックを外す
フィードバック保護のチェックを外す
2014-04-13-13-39-30

Audio UnitsのAudio FXウインドウをクリックしてプラグインSPANを追加
2014-04-13-13-43-42

SPANが起動しました。

・SPAN設定
標準の表示では、雰囲気は伝わりますが測定には向かないため、設定を変え、プリセットで呼び出すようにします。

Modeの右側にあるEDITボタンを押すとSpectrumModeEditorが開きます。
2014-04-13-20-30-56

ここの設定で一番重要なのが、SLOPEです。
標準では4.5になっていますが、大きすぎます。(高域が上がりすぎな表示になります。)
ピンクノイズ、演奏を見るときは、3(+3dB/octで補正)
ホワイトノイズ、定電圧シングルトーン、ゆっくり(周波数ステップがリニア)で定電圧のスイープを見るときは、0(補正なし)にします。
その他の設定は、マシンスペックやお好みで変えていただいて構いません。
いろいろ弄って使いやすい設定を見つけてください。

SpectrumModeEditorのSpectrumModePresetsボタンを押すと、プリセット設定画面が開きます。
その他の設定は、マシンスペックやお好みで変えていただいて構いません。
ちなみに私はこんな感じで使っています。
2014-04-14-0-03-29

これで、リアルタイムにFFT解析ができます。
録音しておけば、後から見直すこともできます。
2014-04-14-0-08-21

GarageBandでの録音のコツやら、編集方法などは割愛します。

と、ここまで書いておいてなんですが、どうも、メインのiMac(Mid2010 Corei7)では、GarageBandとSPANの相性が極端によろしくないようで、突然Macの電源が落ちたりします。
古いiMac(Late2006,Mid2008)では発生しません。
元々、このiMacは突然落ちる現象持ちだったりしますのでハード的な要因かもしれませんが、もし同じような症状が出るようでしたら、GarageBand以外のソフトと組み合わせると大丈夫だったりします。

と言う訳で、次回は同じAppleのフリーツール AU Labを使った方法を紹介予定です。

ーー追記ーー
★知恵袋からお越しの方へ★
GarageBandは、
サンプリング周波数:44.1kHz固定
量子化ビット:16bitまたは24bit
です。
回答者さんがどこを読まれて裏技的に変えられると勘違いされたのか不明ですが、これ以外のサンプリングレートに変えることはできません。

オーディオインターフェースのサンプリング周波数、量子化ビット数は、MacOS(CoreAudio)が変換しているだけで、GaregeBandの機能ではありません。