Soundflowerの構成をカスタマイズしてみる - LadioCast開発記その28
おなじみSoundflowerはLadioCastで音声配信を行う際に大変役立つソフトウェアで、簡単にいうと仮想的な出力デバイスと入力デバイスとの対を作り結線してループバックラインを用意してくれるものですね。
デフォルトの構成では2chライン1本と16chライン1本の構成ですが、プロパティファイル
/System/Library/Extensions/Soundflower.kext/Contents/Info.plist
に変更を加えることでカスタマイズできるようです。ここでは試しに2chラインのみ3本の構成にしてみます。区別するためにデバイス名の後ろにA,B,Cと加えることにしましょう。
変更は難しくありませんが参考のためファイルの変更内容を最後に付けます。形式がdiffコマンドによるファイル差分出力ですので悪しからず。実際の変更には、ユーザーrootが所有者である同ファイルに対しての書き込み権限が必要です。ファイルは念のためバックアップをとっておきましょう。
変更が済んだ後Macを再起動します。意図どおりの構成に変っていれば成功です。
(画像は以上のカスタマイズをした後のシステム環境設定 - サウンド - 出力のスクリーンショットと、作成された全てをLadioCastの入力デバイスに選択してみた様子です。)
ファイル/System/Library/Extensions/Soundflower.kext/Contents/Info.plist差分
35c35
< <string>Soundflower (2ch)</string>
---
> <string>Soundflower (2ch) A</string>
74c74
< <string>Soundflower (16ch)</string>
---
> <string>Soundflower (2ch) B</string>
91c91
< <integer>16</integer>
---
> <integer>2</integer>
108a109,147
> <dict>
> <key>BlockSize</key>
> <integer>8192</integer>
> <key>Description</key>
> <string>Soundflower (2ch) C</string>
> <key>Formats</key>
> <array>
> <dict>
> <key>IOAudioStreamAlignment</key>
> <integer>1</integer>
> <key>IOAudioStreamBitDepth</key>
> <integer>32</integer>
> <key>IOAudioStreamBitWidth</key>
> <integer>32</integer>
> <key>IOAudioStreamByteOrder</key>
> <integer>0</integer>
> <key>IOAudioStreamDriverTag</key>
> <integer>0</integer>
> <key>IOAudioStreamIsMixable</key>
> <integer>1</integer>
> <key>IOAudioStreamNumChannels</key>
> <integer>2</integer>
> <key>IOAudioStreamNumericRepresentation</key>
> <integer>1936289396</integer>
> <key>IOAudioStreamSampleFormat</key>
> <integer>1819304813</integer>
> </dict>
> </array>
> <key>NumBlocks</key>
> <integer>2</integer>
> <key>NumStreams</key>
> <integer>1</integer>
> <key>SampleRates</key>
> <array>
> <integer>44100</integer>
> <integer>48000</integer>
> <integer>96000</integer>
> </array>
> </dict>
コメント
かわうそさんこんばんは。
私は OSX10.5 を使っていますが、どうもこの方法を実行しても、システム環境設定のサウンドにA,B,Cの3つのラインが出てきません。
この方法は OSX10.4 までしか対応していないのでしょうか?
もちろんSoundflowerは1.2.1にしておきました。
もしかすると、Info.plistを上書きしたのが問題だったのでしょうか?
投稿者: 犀 | 2008年11月19日 01:52
犀さんこんな奥地までようこそ^^!
Soundflower 1.2.1がチャンネルを構成しているのはOSのバージョンにかかわらずこのファイルに依っているはずですので、後は見てうまいこと追加・変更してあげるということになりますね。前提知識無くとも見ればなんとなくわかります。
変更後の再起動は必須です。
投稿者: かわうそ | 2008年11月20日 21:47