いよいよ春本番ですね。春ということは…そう、Ubuntuの新リリースが明日に迫っています 。筆者は自宅サーバ以外はもう早々とLTSである10.04から11.04に移行してしまいました。それほどまでにNattyは筆者のお気に入りとなっています。
本来ならNattyで刷新された機能などの話題、例えば標準のユーザー・インターフェイスとなった「Unity」を再度話題とする べきかと考えましたが、いざNattyをインストールしてみると、筆者の愛用しているUbuntu StudioはGnomeのクラシック・インターフェイスを使い続けているため、Unityを試すことができません[1] 。そのため、Unintyを含めNattyの解説は他のメンバーにバトンパスすることにしました。そのうちRecipeにおいても取り上げられることでしょう。
今回は、筆者の本分に立ち返り、Ardourを使ったマルチトラック・レコーディングの方法をお届けします。
マルチトラック・レコーディングとは
本連載の第159回 、第160回 、第161回 で、Ubuntuにさまざまなサウンドデバイスを導入する方法を紹介しましたが、サウンドデバイスの中には複数の入出力を扱えるものがあります。マルチトラックレコーディングとは、このようなデバイスを使い複数の音源から取得した音声を同時的に録音していくことです。複数の音源はマイクから取得した音声が主となりますが、入出力にJACKサウンドサーバを用いるため、ソフトウェアが生成した音声も同じように録音できます。
Ardourとは
ArdourはLinuxとMacOS Xで使うことができるデジタル・オーディオ・ワークステーション(DAW)ソフトウェアで、現在の安定版であるバージョン2は以下の特徴を持っています[2] 。
Linux/MacOS Xで利用可能
JACKサウンドサーバが必須
内部的には浮動小数点32ビットサンプル処理が可能
ミックスダウンで様々なフォーマットやオプションが利用可能
オペレーティングシステムによるが、LADSPA/LV2/VST/AUの各プラグインを利用可能
ボリューム・パンやプラグインのパラメータに対してオートメーションを設定可能
JACKトランスポートによる同期
MTC(MIDI Time Code)による同期(マスター/スレーブ)
MMC(MIDI Machine Control)を含む、標準的なMIDIフィジカル・コントローラへの対応
Mackie Controlプロトコルを採用したフィジカル・コントローラーへの対応
OSC(Open Sound Control)への対応
標準的なDAWソフトウェアが備える機能のほとんどが実装されていますが、唯一、MIDIシーケンス機能だけは次期のバージョン3に持ち越しとなっています。そのため現在のところ、いわゆる「打ち込み」用途には向いていません。この場合はRosegarden やMuSE 、Qtractor 、Renoise (プロプライエタリ)といったMIDIシーケンス機能を持つソフトウェアを同期的に併用することになります。
しかし、MIDIシーケンス機能がなくても、音声データを扱う上ではやはりArdourはとても強力なソフトウェアです。
JACKサウンドサーバの起動
それでは、Ardourでマルチトラック・レコーディングをする方法を説明していきます。
ArdourはJACKサウンドサーバを音声の入出力先として利用するため、Ubuntu標準のPulseAudioサウンドサーバでは利用できません。あらかじめQjackctlでJACKサーバを起動しておくのが無難ですが、起動させていない場合は、Ardourが自動的にJACKを起動するようになります。
図1 Ardour起動時のJACKサウンドサーバ設定画面
JACKとQjackctlについては、本連載の第161回 で説明しました。強調しておきたいことは、JACKサウンドサーバはFirewire接続のサウンドデバイス限定ではなく、どんなサウンドデバイスでも扱うことができる点です。
通常ALSAがサウンドドライバとなる、PCIバス/PCI Expressバス/USBバス接続のサウンドデバイスの場合は、Qjackctlの設定ウィンドウで項目「drivers」を「alsa」に切り替えます。この場合、同じく設定の項目「Interface」で、使用するサウンドデバイスをプルダウンリストから選択します。リストの内容はALSAが設定したPCMデバイスのリストとなっているため、慣れていないとよくわからないと思います。その場合、右の鈎ボタン「>」から選択するとわかりやすいでしょう。
JACKサウンドサーバの設定についてもうひとつ強調しておきたいのは、サンプリング周波数です。JACKサウンドサーバ起動時のサンプリング周波数がそのままArdourに適用されます。
どうしてもArdourが起動しない、すなわちJACKサウンドサーバの起動に失敗する場合は、音声を扱う他のソフトウェアが起動していないかどうか確認してみましょう。JACKサウンドサーバ以外のソフトウェアがサウンドデバイスに音声データを出力していると、デバイスが使用中であるとされ、JACKサウンドサーバが起動できなくなっています。
トラックの配置
Ardourを起動した時に表示される画面をEditor画面と呼びます。この画面でトラックやタイムラインの管理を行います。画面左でマウスを右クリックすると、トラックを設けるダイアログが開きます。
図2 Track/Bus追加ウィンドウ
Ardourの設けるトラックには、「 Track」と「Bus」があります。「 Bus」は「Track」とは異なり、録音した音データを配置できません。「 Bus」は「Track」からの出力をまとめて扱う場合に利用します。例えば、複数のトラックに対して同じタイミングで音量の操作を行う場合や、同じプラグインを適用したい場合に用います。
「Track」はさらに、「 Normal」タイプと「Tape」タイプに分けられます。「 Normal」タイプは音データを、時間幅を持つ「Region」という細切れのデータとして扱います。これに対し「Tape」タイプは、テープレコーダーの要領で録音データを順次上書きしていきます。
図3 Track/Bus、Normal/Tapeの違い
ポートの接続
ArdourにはEditor画面の他に、Mixer画面があります。AltキーとMを同時に押すとMixer画面が表示されます。トラックとJACKのポートを接続する操作は、Mixer画面で行います。
図4 Mixer画面
Mixerウィンドウ上部の「Audio 1」などのトラック名が表示されているボタンの上でクリックし、トラックへの入力ポートを指定します。
図5 入力ポート指定
入力ポートを指定した後、次は出力ポートを指定します。各トラックの「Comments」ボタンの上でクリックします。
図6 出力ポート指定
それぞれ、表示されるメニューから項目「Edit」を選択し、その後に表示されるウィンドウから、より詳細なポート選択が可能です。入力ポートも出力ポートもデバイスからの入出力の他、JACKにポートを開いているアプリケーションからの入出力を指定することができます。
図7 ポート設定ウィンドウ
Ardourのトラック自身を指定することもできます。この場合、複数のトラックからの出力を、先述の「Bus」トラックに集め、まとめてプラグインによる効果をつけるといった使い方になるかと思いますが、他にも面白い使い方があるかもしれません。
レベルの調整と録音準備
トラックとポートを接続したら、トラックをRecord状態にします。Editor画面あるいはMixer画面において、各トラックに設けられている「Record」ボタンを押します。これにより、ポートからの入力信号の大小に応じて、レベルメータが上下します。
図8 レベルメータと録音レベル
レベルメーターの動きに応じて、レベルゲインを調整しましょう。レベルゲインの調整は、本連載の題165回 でも簡単に紹介しましたが、デバイス側、Ardour側のどちらからでも設定できます。
質のよい録音をするためには、デバイス側で調整するのが基本です。デバイスにレベルゲインを調整するつまみがない場合は、本連載の第161回 や題165回 で紹介した、alsamixer、gnome-volume-control、ffado-mixerなどを利用してデバイスを操作してください。
内部処理フォーマットの選択
内部処理フォーマットとは、音データをArdourが処理する際のデータフォーマットのことです。もしこのフォーマットの品位が低い場合は、Ardourで処理をすれば音が劣化していきますし、かと言って高すぎる場合はデータ量が大きくなって処理に時間がかかるようになります。内部処理フォーマットの設定は、量子化ビット数とファイルタイプの2つがあります。
量子化ビット数を選択するには、ツールバーの「Options」から項目「Audio File Fotmat」とたどり、以下のオプションを選択します。数字が大きくなればなるほどステップ幅が細かくなり、Ardourの処理による音の歪みを小さくすることができますが、細かいがためにファイルサイズが大きくなります。16ビットでも32ビットでも、その違いは人間の耳ではよほど良質の機材を準備して注意して聞かない限りはわからない程度です。
16-bit integer: 16ビット符合なし整数。
24-bit integet: 24ビット符合なし整数。
32-bit floating point: 32ビット浮動小数点数。
図9 量子化ビット数のオプション
フォーマットを選択するには同じく、ツールバーの「Options」から項目「File Type」とたどり、以下から選択します。それぞれの仕様を見る限り、どれを選択しても大差はありません。この設定の変更は、Ardourの録音データを、そのまま他のデジタル・オーディオ・ワークステーション・ソフトウェアに持っていくことが目的と言えます。
WAVE
Microsoft社が策定したResource Interchange File Format(RIFF) のひとつであるWAVE フォーマット。RIFFのデータチャンクがデータサイズを4バイトで定義しているため、ファイルの上限は4GB程度。
Broadcase WAVE
Microsoft WAVEフォーマットの拡張フォーマット。欧州放送連合(EBU) がBWF Audio File Format で標準化したもの。メタデータを含めることができ、次回で触れるSMPTE 12M-1999のタイムコードを含めることによって放送へ利用できる。ただしファイルの上限はWAVEに準じる。
WAVE-64
元々はSony が提唱したもの。それを2009年に欧州放送連合(EBU) がRF64 Audio File Format として標準化したもの。複数のストリームを含むことができ、ファイルの上限は無制限。4GBを超えなければRIFF WAVEやBroadcast WAVEと下位互換性を持つ。
CAF
2006年にApple社が提唱したCore Audio Format を用いる。複数のストリームを持つことができ、ファイルサイズの上限は無制限。
図10 ファイルフォーマットのオプション
なお、これはあくまでも内部処理フォーマットであるため、レンダリング時は別なフォーマットを指定することになります。
録音の開始と終了
ここまでで録音の準備は整いました。さっそく録音を開始してみましょう。録音したいトラックをRecord状態にしたまま、Editor画面で録音ボタンを押し、スタンバイ状態にします。再生ボタンを押してタイムラインを進めると録音を開始します。録音を終了したい場合は、停止ボタンを押します。このような操作を一般に、トランスポート操作と呼びます。
図11 トランスポート操作
ミックスダウンとオートメーション
録音が成功すると、Editor画面の各トラックにRegionが配置されます。これらトラックをミックスしてファイルに書き出すことで、音楽プレイヤーで再生可能なファイルが作成できます。マルチトラックの音源をそれよりも少ないチャンネル、例えば2チャンネルの音源にすることをミックスダウン、音楽プレイヤーで再生可能なファイルに変換することをレンダリングと言います。
よりよいミックスのために「Bus」トラックを使います。Mixer画面で「Track」トラックの出力先を「Bus」トラックに指定します。ミックスダウンは音を実際に聞きながらの作業となるため、「 Bus」トラックの出力先をサウンドデバイスのスピーカー出力やヘッドフォン出力に接続するのを忘れないでください。
ミックスダウンのために、Mixer画面ではプラグインも利用できます。プラグインと同様の操作でセンドも設けることもできます。プラグインやセンドは音量やパンを調整する前後に挿すことができます。プラグインの適用の仕方は、次回説明する予定です。
図12 プラグインを適用したMixer画面
トラックの音量やパン、プラグインの各パラメータに対してはオートメーションを描くことができます。オートメーションを表示するには、Editor画面でトラックを右クリックし、メニューの中から項目「Automation」 、項目「Show all automation」とたどります。トラックの下にオートメーションが表示されますので、プラグインを適用していればそのパラメータに対するオートメーションを描くこともできます。
図13 オートメーションの表示
図14 プラグインのオートメーション
レンダリング
再生と調整を繰り返し、ちょうどよいミックスができたらレンダリングします。レンダリングはツールバーの「Session」から項目「Export」 、「 Export session to audiofile」と進み、Exportウィンドウから行います。
図15 Exportウィンドウ
WAV/CAF/FLACなど複数のフォーマットから選択できるほか、量子化ビット数やサンプリング周波数などを細かく指定してレンダリングすることができです。トラックを指定してのレンダリングも可能となっています。
今回はArdourの基本的な使い方をひと通り紹介しました。次回はプラグイン、ソフトウェア間の連携、タイムコード、ハードウェア・コントロールなど、デジタル・オーディオ・ワークステーション・ソフトウェア周りの話題を交えて、もう少し突っ込んだ使い方を説明する予定です。