この記事ではMacでニコニコ生放送の配信を行うときに必要になる、音声のルーティングについて解説するよ。
ルーティングというのは、機器やソフトウェアから出力される音声を他の機器やソフトウェアに振り分けることだよ。音声のルートを作っていくからルーティングって言うんだよ。
音声の概念
Mac OS Xの音声の処理について順を追って説明していくよ。
まずは初期状態を確認
一般的なMacの初期状態だね。アプリケーションはまだなにも起動していないよ。入力には内蔵マイク、ライン入力、USBヘッドセットがあるものとするよ。
デフォルト出力っていうのは音を鳴らすアプリケーションが初期設定でどのデバイスに音を出力するかを指定するシステム設定なんだ。同様にデフォルト入力っていうのもあるけど、この記事では割愛するよ。入力を必要とするアプリケーションの多くは入力デバイスを切り替えられるからね。
とにかくまずは放送してみよう
では、生放送を行ってみるよ。
ユーザ生放送のFlashでは入力音源が選べるね。ここでは内蔵マイクを入力として選んでいるよ。
ニコ生Flashが選べる入力音源はひとつだけだね。だから内蔵マイク以外のデバイスからの入力をミックスして放送することはできないね。
また、ここでiTunesを起動したとするよ(iTunesが出力できるのはデフォルト出力だけなんだよ)。今の状態だとiTunesの音を入力音源とすることはできないね。だからiTunesの音楽をBGMとしたトークなんていうのもできないわけだ。スピーカから出てくる音を内蔵マイクで拾うこともできるけど、音質に不利があるね。
秘密兵器 "SoundFlower"の登場
ここでまずSoundFlowerの登場だ。
SoundFlowerは2chと16chの二つの仮想デバイスをMacに追加してくれるよ。
システムのデフォルト出力をまずSoundFlower(2ch)に設定しよう。
この状態でiTunesを再生すると、iTunesの音はまずデフォルト出力であるSoundFlower(2ch)(出力側)にいくね。SoundFlowerはこの音をぐるっと入力に廻してくれるんだ。つまりこの状態でSoundFower(2ch)(入力側)を読み込むとiTunesで鳴らしている音を受け取ることができるんだ。
ニコ生Flashで音声機器をSoundFlower(2ch)に設定すればiTunesの音を放送することができるよ。よかったね。
でもまだ重要な問題が解決されてないんだ。それはニコ生Flashで指定できる音声機器は一つだけっていう問題だ。この状態だとiTunesの音は流せるけど、内蔵マイクの音は流せないね。もちろん放送中に音声機器を切り替えれば両方使えるけどiTunesをBGMにトークをするなんていうことはまだできないんだね。
iTunes を BGM にトークしよう(2種類の音声をミックス)
さて、ここでAU Labの出番だ。と、そのまえにAudio MIDI 設定を使うよ。
Macのアプリケーションでは同時に一つのオーディオハードウェアしか扱えないことがあるんだ。AU Labもそのひとつ。その解決策として、複数のオーディオデバイスをまとめて仮想的にひとつのデバイスとして設定する方法がシステムで提供されているんだ。それを行うのがAudio MIDI 設定なんだ。ここでは入力はSoundFlower(2ch)と内蔵マイク、出力はSoundFlower(16ch)とスピーカ、USBヘッドセットを指定してひとつの機器にまとめるよ。設定方法は割愛するけど「"Audio Midi 設定" 機器セット」で検索すればわかると思うよ。
さて、下準備が済んだらAU Labを立ち上げるよ。AU Labの操作・設定も割愛するけどそのうちAU Labの記事を書くよ。
基本はSoundFlower(2ch)と内蔵マイクの入力、SoundFlower(16ch)とスピーカ、USBヘッドセットを出力としてそれぞれチャンネルを作成するんだ。そしてどの入力をどの出力に流すかを設定すれば完了。ここではとりあえずすべての入力をSoundFlower(16ch)に流そう。必要に応じてスピーカやUSBヘッドセットにも流せば放送している音声がモニタできるよ。自分の声はモニターしたくないなんていうときはSoundFlower(2ch)だけスピーカやUSBヘッドセットに流せばいいんだね。
SoundFlower(2ch)と同様にSoundFlower(16ch)も出力された音声が入力に廻るんだ。だからあとはニコ生Flashで音声機器にSoundFlower(16ch)を設定すれば内蔵マイクとiTunesがミックスされた音声を放送できるよ。
AU LabではエフェクトをかけたりMIDI機器をつないだりもできるから遊んでみるのもいいかもね。
AU Labの操作はちょっと難しいかも知れない。そのときはLadioCastを使うといいよ。柔軟性に欠けるけどAU Labよりも簡単にミキシングができるからね。LadioCastを使う時は機器セットの作成は不要だよ。
設定例を書くよ
設定例1
やりたいことは以下の通りだよ。
手順は以下になるよ。
- システム環境設定のサウンドで出力をSoundFlower(2ch)にするよ。これで普通のアプリケーションの音声の出力先がSoundFlower(2ch)になるんだ。
- LadioCastを立ち上げて、入力に内蔵マイクとSoundFlower(2ch)にするよ。適当に音量を設定してね。MainとAUXの設定でメイン出力とモニタ出力の振り分けができるよ。
- LadioCastでMainとAUXの出力デバイスを設定するよ。MainはSoundFlower(16ch)、AUXはUSBヘッドセットにするよ。内蔵マイクを使ってるからモニタ出力をスピーカーにするとループしちゃうんだ。
- これで音声の設定は終了だよ。
- CamTwistを使ってカメラの設定をするよ。詳細はもうちょっと待ってね。
- あとは生放送の画面で映像入力をCamTwist、音声入力をSoundFlower(16ch)にすればOKだよ。それぞれのドロップダウンメニューが小さいからSoundFlowerの2chと16chの区別がつきにくいから気をつけてね。
設定例2
今度試そうと思ってる設定だよ。
- SoundFlower
- AU Lab
- Neutrino (旧名AudioCodex)
- CamTwist
- 内蔵カメラ/内蔵マイク
- ライン出力
- USBヘッドセット(ただのヘッドホンとして使うよ。マイクは使わないよ)
- MIDIキーボードとMIDIインターフェース、あるいはUSB MIDIキーボード
やりたいことは以下になるよ。
- 映像は主にカメラを使うよ。
- カメラ映像にエフェクトをかけるよ。
- 音声は内蔵マイクとNeutrino (旧名AudioCodex)の音を使うよ。
- 音声にはエフェクトをかけてみようと思うんだ。
- モニタとして内蔵出力のスピーカとUSBヘッドセットを切り替えられるようにするよ。
- MIDIキーボードをつないでソフト音源を使ったライブなんかもできると良いね。
手順は以下になるよ
- Audio MIDI設定で機器セットを作るよ。内蔵マイク・内蔵出力・USBヘッドセットの出力・SoundFlower(2ch)・SoundFlower(16ch)で構成される機器セットを作ろう。
- Audio MIDI設定でMIDIの設定をしておくよ。検索すれば多分わかるよね。機器を全部つなげて適当に操作しても設定できると思うよ。
- Neutrino (旧名AudioCodex)を立ち上げて、Inspector>Adjust>OutputのDeviceポップアップメニューでSoundFlower(2ch)を選ぼう(バグでまだできないよ。修正が待ち遠しいね)。
- AU Labを立ち上げるよ。難しいから後で詳しく書くけど、はじめのダイアログで出力を三つ、入力を二つ作って機器セットをデバイスに指定するんだ。出力を内蔵出力・USBヘッドセット・SoundFlower(16ch)に割り振って、入力は内蔵マイクとSoundFlower(2ch)にしよう。
- Add Audio Unit Instrumentっていうメニューを使えばMacに繋いだMIDIキーボードとかからソフトウェア音源を鳴らしてそれを放送することもできるよ。音色の変更は一般的なMIDIと一緒でキーボードとかからプログラムチェンジコマンドを送ればいいんだ。キーボードとかの説明書を見れば載っていると思うよ。
- カメラについては設定例1といっしょだよ。
Neutrino (旧名AudioCodex)はまだ出力デバイスが変更できないけど、設定例1と同様にシステム環境設定からSoundFlower(2ch)をデフォルトの出力にすれば再生した音声を生放送に使えるよ。ピッチ変更がグラフィカルに行えて便利だね。CamTwistの再生中の楽曲のタイトルをテロップにするエフェクトはiTunesにしか対応してないらしいから一長一短だね。
関連項目
- 3
- 0pt