kazasiki's blog

プログラミングとかVRゲームとか

Elgato Sound Capture(ミキサー)はどのように動いているのか?

最近こんな記事を見ました。

note.com

物理的なミキサーを使わずに、パソコン上で音を混ぜる(ミックスする)のは複雑で、ゲーム実況のときなどにも結構混乱します。

さて、ここでは一つのミキサーソフトの例としてElgato Sound CaptureのPC Gaming機能を紹介します。基本的にはElgato Game Captureを使用する人向けのソフトですし、 Windows専用ですが、なにかの参考までに聞いていただけると幸いです。少なくともZoomに効果音を入れる参考にはなりません。

また、Elgato Game Captureを使用されている方は理解の一助になればと思います。ちなみに公式のマニュアルはこちらです。

help.elgato.com

Elgato Sound CaptureのPC Gaming機能は何をするのか

Elgato Sound Captureはまず、仮想の音声出力デバイスを構築します。

f:id:kazasiki:20200517183527p:plain:w300

これを勝手に自動でWindowsの音声出力の規定のデバイスにします。なのでWindowsから見れば普段の出力デバイス(スピーカーとか)と別のデバイスに出力を向けることになります。

この時点でユーザは混乱します。マニュアルには上記のことは一言も書いてません。Windowsは出力デバイス毎にミキサー設定(アプリ毎の音量の設定)が保存されてます。なので、必然的にいつもの音量で音が出なくなります。スピーカー(Elgato Sound Capture)向けの音量を必要に応じて設定しましょう。

次にElgato Sound Captureの設定を見に行きます。

f:id:kazasiki:20200517184058p:plain:w300

ここにある2つの質問は言葉のとおりです。Elgato Sound Capture ここで選択された出力デバイススピーカー(Elgato Sound Capture) の入ってきた音をそのまま流します。

つまりこういうことです。

f:id:kazasiki:20200517185733j:plain:w500

ゲーム以外にBGM再生やその他なアプリケーション(棒読みちゃんなど)を動かしても同じように動作します。

ミュージック機能について

一旦上の画像のイメージが持てれば他の機能もわかってきます。要するに仮想デバイスを置いて、ほしい音をそこに取り込み、いい具合に振り分けてるのです。

例えばミュージック機能は、BGMをPCで再生し、ゲームが別の環境(PS4など)で動いてキャプチャしている前提です。上の図からゲームとElgato Game Captureデバイスを外した状態になっています。音声はデバイスには出さずに録画時にElgato Game Captureソフトウェア上でミキシングされます。コメンタリーと似たような扱いです。もちろん録画画面上では別に音量設定やミュート設定ができます。

f:id:kazasiki:20200517191431p:plain:w300

(チームチャット機能は使ったことがないのでよくわかりません。。。少なくとも音声通話の出力をミュージック機能と同じ要領で録画に取り込んでるんだとは思います。マイク入力も指定できるのですが、コメンタリーよりもElgato Sound Captureの設定が優先されるんでしょうか?)

おまけ話

前述したとおりElgato Sound Captureは勝手に規定のデバイス設定を奪うのですが、これの理由を簡単に説明すると、WindowsMacも基本的にはアプリケーションごとに音声を入出力するデバイスを選ぶ機能がないからです。なので、全部まとめて奪うというのが基本スタンスになります。

以上です。結論として、音声のミキシングは色々面倒くさい。