MacBookの内蔵スピーカーと外部スピーカーに、まったく同じ音を流す必要はありません。MultiSpeakerは内蔵側に中高域、外部側に低域を担当させ、遅延とゲインで両者を調整するツールです。
CoreAudio、BlackHole、CamillaDSPを組み合わせたSwiftUIアプリです。本稿は2026年10月19日公開のv1.1.0の文書とソースに基づきます。公式ZIPと公開チェックサムは確認しましたが、実機の音質、遅延、機器の互換性は測定していません。
音声を2系統に分ける仕組み
システム音声は、既定出力に設定されたBlackHole 2chに入ります。CamillaDSPが仮想入力から読み取り、ハイパスとローパスを適用して、MultiSpeakerという4チャンネルの機器セットへ渡します。
一方のステレオペアは内蔵スピーカー、もう一方は外部出力へ送られます。設計は4次Linkwitz–Riley方式で、初期値は分周点200 Hz、高域側の遅延8 msです。部屋を測定して得た補正値ではなく、調整の出発点です。
対応Macと追加コンポーネント
配布版はmacOS 14 Sonoma以降とApple Siliconが必要です。上流にはIntel向けの自前ビルドも記載されていますが、確認したZIPはarm64です。Intel Mac向けの完成済み配布版とは扱えません。
CamillaDSP 4.1.3はアプリに同梱されています。一方、BlackHole 2chは別途導入するシステム音声ドライバです。設定画面から公式パッケージ経由で導入できますが、管理者の承認や再起動が必要な場合があります。構成全体が依存なしで動くわけではありません。
公式リリースをインストールする
MultiSpeaker v1.1.0 ZIPを入手し、リリースノートを確認します。展開したMultiSpeaker.appをアプリケーションフォルダへ移動してください。ZIPにはアプリ本体とCamillaDSP実行ファイルが含まれています。
作者によるとAppleの公証は受けていません。配布元を確認し、macOS標準のセキュリティ承認手順で開くか判断してください。チェックサムは同一ファイルの確認であり、安全性の保証ではありません。対象版のダウンロードと展開には次を使えます。
curl -fL 'https://github.com/peterxulove/multispeaker-macos/releases/download/v1.1.0/MultiSpeaker.zip' -o MultiSpeaker.zip
unzip MultiSpeaker.zip初期設定と必要な権限
内蔵出力を高域側、外部出力を低域側に指定します。設定処理は機器セットを作成し、既定出力をBlackHoleへ変更してCamillaDSPを起動します。内蔵出力をクロック源とし、外部出力にはドリフト補正を設定します。
マイクへのアクセスを求められたら許可が必要です。説明によると、BlackHoleの入力機能を読み取る際にこの権限が要求され、拒否すると再生中でも無音になります。拒否済みの場合はシステム設定のプライバシーとセキュリティからマイクを開き、MultiSpeakerを許可して再起動します。
音量を上げる前に2系統を整える
最初は控えめな音量にします。外部スピーカーの物理音量を決め、個別ゲインでバランスを取り、その後に分周点と遅延を調整します。分周点は80〜320 Hz、高域の遅延は0〜40 ms。バッファを大きくすると途切れが減る場合がありますが、遅延も増えます。
v1.1.0では音量とミュートをCamillaDSPのWebSocket経由で即時反映し、エンジンを再起動しません。分周点や遅延などの変更は一定時間まとめた後に再起動します。最大+12 dBのデジタルゲインはクリッピングを起こす可能性があり、スピーカーの出力能力そのものを増やす機能ではありません。
メニューバーと実際の画面
メインウィンドウを閉じてもメニューバーに残し、音量、ミュート、エンジンの開始と停止、画面の再表示を操作できます。ログイン時起動と自動再生は任意です。表示言語は中国語と英語で、システムに合わせるかアプリ内で切り替えられます。
公式ミキサー画面では調整項目を、設定画面では機器の設定手順を確認できます。本稿の表紙はコンセプトイラストで、アプリ画面や音響性能の測定結果ではありません。
無音や音切れを調べる
再生が進むのに音が出ない場合は、エンジンの動作とログ、システム出力のBlackHole設定、マイク権限、ミュート、全体音量を順に確認します。片側しか鳴らない場合は、音源を疑う前に設定画面から機器セットを作り直します。
ノイズや途切れには、文書ではバッファを1024から2048へ増やす方法が挙げられています。機器変更やドライバ導入後には再起動が必要なこともあります。終了時は既定出力を内蔵などの物理出力へ戻してください。処理を止めたままBlackHoleを選択すると通常再生も無音になる場合があります。
改善できることと保証できないこと
macOSの通常の複数出力装置は同じ信号を複数の出力へ流しますが、MultiSpeakerは異なる帯域を割り当てます。その役割分担が機器に合う場合に役立つ仕組みで、家中のスピーカーへ同じフルレンジ音声を配信する用途とは異なります。
自動のルーム補正でもありません。設置位置、周波数特性、部屋の音響、機器の遅延で結果は変わります。すべてのBluetoothやAirPlay構成で同期する保証は示されておらず、本稿でも検証していません。遅延スライダがあらゆる組み合わせを解決するとは考えないでください。
2つのライセンスを区別する
アプリのライセンスはMITです。必要な表示を残す条件で、アプリ自身のコードを調査、変更、再利用できます。同じファイルには、同梱CamillaDSPのバイナリがGPL-3.0であることも明記されています。
ZIPの再配布や派生パッケージを作る場合、アプリがMITであることはGPLの義務をなくしません。別途インストールするBlackHoleもGPL-3.0です。スタック全体がMITなのではなく、第三者コンポーネントを組み合わせたオープンソースアプリです。
MultiSpeakerが合う人
対応するApple Silicon Macと低域を担当できる外部スピーカーがあり、2系統を手動で調整したい人には試す価値があります。公式配布版から始め、試行中は元の出力へ戻せるようにしておくとよいでしょう。
ドライバ不要のプレーヤー、検証済みIntel配布版、自動音響校正、保証されたマルチルーム同期を求める場合には向きません。参考資料はリポジトリ、英語の利用ガイド、リリースノートです。
プロジェクト情報
- ライセンス
- MIT (app); GPL-3.0 (CamillaDSP)
- 対応環境
- macOS 14+; Apple Silicon (arm64)
- 実装言語
- Swift 6 / SwiftUI
- 確認したバージョン
- v1.1.0 (2026-10-19)
インストール
curl -fL 'https://github.com/peterxulove/multispeaker-macos/releases/download/v1.1.0/MultiSpeaker.zip' -o MultiSpeaker.zip
unzip MultiSpeaker.zipデモ

ライセンスの概要
アプリのソースはMIT。同梱のCamillaDSPはGPL-3.0で、再配布にはその条件も適用されます。BlackHoleは別途インストールします。



