OBSで流してる映像+rekordboxで流してる音声をDiscordで配信するトライ
概要
- 家族が「Discord で DJ 配信するぞ!」となったときに設定でなかなか沼った
- 結論として、理想形で配信することはできなかった が、妥協案は2つ 見つかった
- 次回また沼でもがくことのないよう、ここにまとめておく
目指すゴール
- Discord のボイスチャンネルで VJ(映像)+ DJ(音声) の配信をする
- 自分以外のユーザーは「配信を見る」ボタンクリックで視聴開始ができるとよい
- 参考:Go Liveと画面共有 – Discord(公式リファレンス)
今回試した環境
- Windows11 を利用
- Voicemeeter Banana(または Potato)を使って、音声のルートは切り分けている
- デスクトップ音声: Input
- rekordbox: AUX Input
- Discord 通話: VAIO3 Input
- 音声のモニターは VM 上の HARDWARE OUTPUT に割り当てたオーディオインターフェイス上で行う
- A1: Line (AG06/AG03)
- A2~5: 設定なし
やってみたけど駄目だった方法
パターンA:アプリ(OBSウィンドウプロジェクター)を画面共有する
OBS
-
ソースに映像・音声をつっこんですべて完成させる(YouTube配信するときの状態)
-
シーン > ウィンドウプロジェクターで出力
Discord
-
画面を共有する > アプリ > ウィンドウプロジェクター を選択
結果
映像は飛ぶが音声が出ないという状態になった
- 原因はおそらく Voicemeeter で音声の出し分け管理をしているため
- あらゆる音をチャンネルに振り分けてしまっているので、OBS上では実体として鳴っている音がない状態になっており、Discord 側が「アプリケーションの音声」として拾えていないと思われる
力技で解決する方法
パターンB:デスクトップ全画面を共有する
前提条件
- モニターが2枚以上ある、かつ、1枚が操作不能な状態になってもよい
- あらゆる通知を無効状態にしてもよい
- 不慮の事故が起きてもよい
- デスクトップなどVJ映像以外のものを配信してしまう可能性がある
OBS
- ソースにVJ映像素材だけつっこんでおく
-
シーン > 全画面プロジェクター > モニターを選択
Discord
-
画面を共有する > 画面> 全画面プロジェクター で選択した投影先のモニターを選択
-
次の画面で「音声も共有する」にチェックを入れて [Go Live] で実行
システム設定(サウンド)
-
タスクトレイのスピーカーアイコンを右クリック > 音量ミキサーを開く
-
「アプリ」の一覧で rekordbox 以外はすべてミュート状態にする(スピーカーアイコンをクリックする)
システム設定(通知)
-
タスクトレイのベルアイコンを右クリック > 通知設定
-
通知を「オフ」状態にする
パターンC:カメラにVJ映像、マイクにDJ音源を割り当てる
前提条件
- Discord での視聴体験として、「配信を見る」の選択肢が出なくてもよい
- 通話のカメラ/マイクと「配信」を分離できなくてもよい
Voicemeeter Banana/Potato
-
自分の環境では Potato を使ってるので、全景はこんな感じ
-
VIRTUAL INPUTS のうち、rekordbox の出力先に割り当てているチャンネル(今回は Voicemeeter AUX Input)の
B1
ボタンをアクティブにする
OBS
- ソースにVJ映像素材だけつっこんでおく
-
コントロール > [仮想カメラ開始] をクリック
Discord
-
カメラをオン > OBS Virtual Camera を選択
-
マイクアイコン右下の矢印をクリックし、入力デバイスを
Voicemeeter Out B1
に切り替える -
カメラにVJ、マイクに音源があたった状態になるので、ずっと映像のまわりに緑の縁がついてまわる
-
ほかのVC参加者は、該当ユーザーを右クリックして「ミュート」と「動画の無効化」にチェックをいれると、音声と映像を止めることができる