VoiceMeeter Banana+VB Cable+OBSでゲーム、マイク、通話の音を自由自在に操り配信や録画をする

今回はVoiceMeeter BananaとVB Cableを使って、ゲームやマイク、通話音声などの音を選択して複数のデバイスに出す方法と、OBSでそれぞれの音を独立した状態で保存する方法をご紹介します。

 

最近はDiscordなどで通話をしながらゲームをする方や、自分の声とゲーム音声をミックスしてライブ配信する方が増えてきているのではないでしょうか。それだけでなく、手軽にHDMIキャプチャも手に入るのでPS4やSwitchといったゲームの映像とボイスチャットを両方保存したいと考えている方もいるはず。そこでこんな悩みが発生することもしばしばあるかと思います。

  • 配信中に自分だけ聞こえるBGMが欲しい!
  • 通話相手にも配信で寄せられたコメントの読み上げを聞かせたい!
  • 録画した後でゲームとボイスチャットの音量バランスを整えて編集したい!
  • 後で動画が欲しいって言われたけどボイスチャットの音が入ったものは送りたくない!

そんな「音」の悩みをフリーソフトだけで解決するのが今回紹介する方法です。

 

基本的な考え方は、「音声ソース (ゲーム音、通話音声、マイクに入った音、棒読みちゃん、などなど) ごとにデバイス (物理、仮想は問わない) を分ける」です。参考までに、配信・録画ソフトであるOBSの制限のため、利用できる音声ソース数の限界は5 (全ソース統合トラック+ソースごとに独立したトラックの割り当てで6トラック)です。

設定

今回はこちらのような状況を想定します。ちなみにOSはWindowsです。macOSLinuxは知りません。

目的

  • ゲームの音、自分の声、通話音声、棒読みちゃんの4つの音を配信したい。
  • 自分の通話音声として友達に棒読みちゃんが読み上げるコメントも聞かせたい。
  • 後々音量のバランスを整えて編集するために、それぞれの音は分離して保存したい。

入力される音声

  • ゲームの音 (PCゲームを想定)
  • 自分の声
  • Discordの通話音声
  • 棒読みちゃん (コメント読み上げ)

SwitchやPS4といったHDMIで接続する機器の場合は別途HDMIキャプチャとHDMIスプリッタが必要です。ステレオ2入力→ステレオ1出力のオーディオミキサーがあるとラグのない音声が聞こえます。

出力先とそこで再生される音

「+」はミックスされた音を示します。マルチトラックは「、」で区切ります。

 

使用するソフトウェア

VoiceMeeter Banana、VB Cable、OBS Studioの3つを使って実現します。

VoiceMeeter Banana

VoiceMeeter Bananaは外部3+内蔵2の5入力、外部3+内蔵2の5出力の仮想オーディオミキサーソフトウェアです。入力された音の音量を調節して、自由に組み合わせて出力できます。 *1

外部入力はWindowsで認識している「入力デバイス」から音を取り込みます。内蔵入力はWindowsに追加された「VoiceMeeter Input」と「VoiceMeeter Aux Output」の2つの「出力デバイス」から音を取り込みます。

外部出力 (A1-A3) はWindowsで認識している「出力デバイス」に音を出します。内蔵出力はWindowsに追加された「VoiceMeeter Output」と「VoiceMeeter Aux Output」の2つの「入力デバイス」に音を出します。

VoiceMeeter Bananaは外部入力または外部出力として設定したデバイスを専有(?)するみたいなので、直接入力や出力はできなくなります。

ちょっとした短所*2がありますが、基本的に優秀なソフトだと思います。

f:id:takaion:20200805022541p:plain

VoiceMeeter Bananaの図解

www.vb-audio.com

 
VB Cable

VB Cableは仮想オーディオデバイスを提供するソフトウェアです。Windowsの出力デバイス、入力デバイスに仮想デバイスを追加し、出力デバイスに入力された音を入力デバイスの入力として扱うことができます。

f:id:takaion:20200805014426p:plain

VB Cableの図解

 

ちなみに、VoiceMeeter BananaとVB Cableは同じVB-Audio Softwareが提供しています。

www.vb-audio.com

VoiceMeeter Banana+VB CableはVoiceMeeter Potato (VoiceMeeter Bananaの上位版)でも代用可能ですが、ウィンドウが横長になりすぎるのでVoiceMeeter Banana+VB Cableにしています。 *3

 

OBS Studio

通称OBS。Open Broadcaster Softwareの略です。 *4

 今回はOBSの「音声入力キャプチャ」、「音声出力キャプチャ」、トラック機能、およびMPEG2-TSによる録画機能を利用します。

「音声入力キャプチャ」
入力デバイスからの音を取り込む機能です。割と普通です。

「音声出力キャプチャ」
出力デバイスからの音を取り込む機能です。いわゆる「ステミキ」(スピーカーに出す音を入力デバイスとして入力する機能) を使わずとも音声を利用できるので素晴らしい!

トラック機能
音声ソースを1~6番までの「トラック」に振り分ける (複数選択可) 機能です。同じトラックに設定された音声ソースはミックスされます。配信には1つのトラックを割り当てることができます。録画には後述のMPEG2-TS (ts) を利用することで複数トラックを同時に保存できます。

MPEG2-TS
動画像 (ここで「動画像」は音声を含まない、画像が高速に切り替わるだけのものを指すことにします。) や音声 *5 を格納する記録形式の1つです。Blu-ray Disc地上デジタル放送なんかで使われています。字幕の表示や音声言語を切り替えられるのはMPEG2-TSのおかげなんです。 *6

 

配信者の間ではかなり有名なソフトウェアだと思います。

少し昔にそこそこ使われていたFlash Live Media Encoderという配信ソフトに近いです。

obsproject.com

 

音の流れの設定

ダウンロードとインストールは公式サイトからぽちぽちするだけなので省略。

使用するソフトウェアが出揃ったらいよいよ具体的な設定です。

まずVoiceMeeter Bananaの入力部分から。

入力部分

マイクは外部入力1に設定します。画像では「ライン」になっていますがマイクの入力です。左か右の片方しか入力されないことがあるので、「mono」スイッチをオンにしておくと良いです。 (結局Discord側でモノラル化されますが)

f:id:takaion:20200805024752p:plain

マイクの設定

VB CableはVoiceMeeter Bananaの外部入力または外部出力として使うことができます。今回は外部入力として使います。WDMとかKSとかMMEとかありますがKSが安定していたのでKSのものを選択します。

f:id:takaion:20200805025446p:plain

VoiceMeeter Bananaの外部入力としてVB Cable Outputを設定

こうすることでアプリケーションは以下の3つのデバイスに出力できるようになります。

  1. VoiceMeeter Banana VAIO Input
  2. VoiceMeeter Banana VAIO AUX Input
  3. VB Cable Input (→VoiceMeeter Bananaの外部入力)

ゲームは基本デフォルトの出力デバイスにしか出力できないので、Windowsの設定から「出力デバイス」をVAIO Input (表示は「VoiceMeeter Input」)にします。

あとはDiscordと棒読みちゃんの設定を変更してそれぞれVAIO AUX Input、VB Cable Inputで音を流すよう設定します。ほかのソフトでわざわざ設定しなければVAIO AUX Input、VB Cable InputはそれぞれDiscordと棒読みちゃん専用になります。

f:id:takaion:20200805023917p:plain

Discordの出力デバイスを「VoiceMeeter Aux Input」に設定

f:id:takaion:20200805024133p:plain

棒読みちゃんの出力デバイスVB Cable Inputに設定 (名前は少し変えてあります)

入力の設定が終わると下の画像のような流れができています。

f:id:takaion:20200805030413p:plain

出力部分: ヘッドホン・Discord編

ヘッドホンへの出力とDiscordへのマイク入力を設定します。配信・録画設定は後で。

ヘッドホンはA1に設定します。WDMのものを選べばOKです。

B1 (VoiceMeeter Output) は後にOBSでマイクだけの入力として使います。

Discordの設定で入力デバイスを「VoiceMeeter Aux Output」に設定します。

f:id:takaion:20200805035842p:plain

Discordの入力デバイス設定

出力部分の設定が終わると下の画像のように構成されています。

f:id:takaion:20200805035559p:plain


あとはVoiceMeeter Bananaでそれぞれの音の出力先を設定します。該当する入力のA1-A3、B1、B2ボタンを押すだけでオンオフできます。

  • マイク: B1, B2
  • 棒読みちゃん: A1, B2
  • ゲームの音: A1
  • Discordの通話音声: A1

それぞれの音の大きさのバランスはお好みで調整してください。

完成です!

f:id:takaion:20200805035730p:plain

VoiceMeeter Banana+VB Cableによる4入力3出力構成


 

OBSの設定

ここでは音声の話だけします。したがって配信ビットレートやゲーム画面のキャプチャ方法などは省略します。

今回、OBSの扱える6つの音声トラックはそれぞれ次の用途で使用します。

  1. 配信用
  2. ゲームの音専用
  3. マイクの音専用
  4. Discordの通話音声専用
  5. 棒読みちゃん専用
  6. ボイスチャット (マイクの音+Discordの通話音声) (編集には必要ないのでお好みで)
音声の取り込みとトラックへの振り分け

それぞれの音声ソースは次の機能を使って「ソース」に取り込みます。名前はわかりやすければ特に問いません。

  • マイク: 「音声入力キャプチャ」で「VoiceMeeter Output」
  • ゲームの音: 「音声出力キャプチャ」で「VoiceMeeter Input」
  • Discordの通話音声: 「音声出力キャプチャ」で「VoiceMeeter Aux Input」
  • 棒読みちゃんの音: 「音声出力キャプチャ」または「音声出力キャプチャ」でVB Cable

次にトラックへの振り分けを行います。音声ミキサーに表示されている音声ソースごとに表示されている歯車アイコン (どれでもいいです) から「オーディオの詳細プロパティ」を開きます。

f:id:takaion:20200805040538p:plain

OBSの「オーディオの詳細プロパティ」(チェックがバラバラになっているのは気にしないでください)

オーディオの詳細プロパティではモノラル化の設定や左右のバランス (パンともいいます。「音声入力キャプチャ」で追加した音声ソース専用です) の設定などがありますが、ここでは「トラック」に注目してください。

上で挙げたトラックの用途に従って、チェックをつけたり外したりします。

  • マイクの音: 1, 3, 6
  • ゲームの音: 1, 2
  • Discordの通話音声: 1, 4, 6
  • 棒読みちゃん: 1, 5
配信の設定

音声に関してやることは何もありません。

録画の設定

全部の音をミックスしたものと4つの独立した入力の合計5トラックを含む動画を保存するよう設定します。

「設定」→「出力」の「出力モード」を「詳細」にするといろいろ出てきます。

「録画」タブで以下の設定を行います。

  • 録画ファイルのパス: 録画ファイルが生成されるフォルダ。お好みで。
  • 録画フォーマット: 「ts」
  • 音声トラック: 1~6すべてにチェック

あとは通常通り録画するだけでMPEG2-TSを利用したマルチ音声トラックの動画ファイルが生成されます。 *7

さいごに

今回はマイク、ゲーム、Discord、棒読みちゃんの4つの入力を組み合わせてヘッドホン、Discord、配信、録画に使う方法を紹介しました。若干やりすぎな気もしますが、かなり柔軟な構成になっているので、配信ではボイスチャットの音を切りたいとか、Discordに棒読みちゃんの音を入れないとかも簡単にできます。

それでは。

 

*1:

内蔵入力はWindowsでは出力デバイスとして認識され、スピーカーから音を出すときと同様に扱えます。一方の内蔵出力は入力デバイスとして認識され、配信や音声編集ソフトでの録音に使えます。

外部の3入力3出力はそれぞれ、Windowsで認識される入力デバイス (マイク入力、ライン入力など)、出力デバイス (スピーカー、ヘッドホンなど) を割り当てることができます。

*2:

  • VoiceMeeter Bananaが常に起動ししている必要があります。タスクトレイにじっとしていてもらいましょう。
  • 追加されたデバイスの名前が再起動するたびに「VoiceMeeter Input」や「VoiceMeeter Aux Input」、「VoiceMeeter Output」、「VoiceMeeter Aux Output」に強制的に戻されます。 
  • Windows標準の「音量ミキサー」も効かなくなります。Potatoなら設定できるかもしれませんが…

*3: VoiceMeeter Potatoは外部5+内蔵3の8入力、外部5+内蔵3の8出力を備えますが、今回の設定では4入力3出力あれば十分なので使わない入出力が多くなりすぎます。

*4: Broadcasterという名前から配信専用かと思うかもしれませんが、これ1本で配信や録画ができます。リプレイバッファも備えるのでいざというときに直前のプレイを保存、なんてこともできます。詳しくは調べてみてください。

*5: 動画像や音声だけでなく、文字情報なども入れることができるそうです。

*6: ややこしいので物好き向けの情報ですが、動画像の圧縮方式であるMPEG2-Videoと、動画像や音声を格納するコンテナシステムとしてのMPEG2-TSは別物です。

*7: MPC-BEのようなマルチトラックに対応したプレイヤーで再生すれば音声が切り換えられることが確認できます。