Teams会議をYouTube Liveで配信する方法 — HCCJP 2021年2月版

この記事の内容

  • Microsoft Teamsの会議をOBSを使ってYouTube Liveへ配信する手順を紹介します
  • 配信用にAzure上のVMを活用する構成を解説します
  • NDIを使ったTeamsとOBSの連携方法と、よくあるトラブルの回避策を説明します
  • 配信アカウントの分離や複数ディスプレイを使った運用環境の構成を紹介します
  • BGMシーンの切り替えなど、ライブ配信をより安全に行うための工夫も取り上げます

配信環境の全体構成

HCCJP(Hokkaido Cloud Computing User Group Japan)の勉強会では、Microsoft TeamsとOBS(Open Broadcaster Software)を組み合わせてYouTube Liveへの配信を行っています。

配信用の仮想マシン(VM)はAzure上に配置しており、配信当日はそのVMをRDP接続で操作する構成です。


Azure VMのセットアップ

VMサイズの選択

GPU認識の問題が発生した経験から、VMサイズには NV6シリーズ を選択しています。一部のVMサイズと適用ドライバーの組み合わせでGPUが正常認識されないケースがあるため、動作実績のあるNV6を使用することで問題を回避しています。

RDP接続時のオーディオ設定

RDP接続する際は、ローカルリソースの設定でリモートオーディオの再生を 「このコンピューターで再生する」(リモート側で再生) に設定しておくことが重要です。

手元(ローカル)でも音声が聞こえる状態にしてしまうと、音がループしたり二重に聞こえてしまうトラブルが発生します。リモート側(Azure VM側)でのみ音声が再生され、それがそのまま配信に乗る形が正しい構成です。


TeamsアカウントとAADの構成

配信専用アカウントの利用

HCCJPでは独自のAzure Active Directoryが存在しており、その配下に配信専用のTeamsアカウントを用意しています。

同一アカウントで複数箇所からTeams会議に参加すると、どちらのデバイスで音声を出すか確認を求められるほか、ゲスト参加のケースでは片方が突然切断されてしまうことがありました。こうしたトラブルを避けるため、配信用には専用アカウントを使用しています。

Teams会議への参加方法

  • HCCJPのAADに存在する配信専用アカウントでTeamsに参加
  • 自分自身(司会進行役)は個人メールアカウントで外部ゲストとして参加
  • 手元のTeamsクライアントとAzure VM上のTeamsクライアントをそれぞれ使い分ける

OBSのセットアップとNDIの設定

NDIを使ったTeams映像の取り込み

OBSにTeamsの映像・音声を取り込むために NDI(Network Device Interface) を使用します。Teams側でNDIブロードキャストを有効にし、OBS側でNDIソースとして取得します。

Teamsで「NDIブロードキャスト」ボタンを押して有効化することを毎回忘れがちなので注意が必要です。

「NDI not supported」エラーの回避策

TeamsでNDIを有効化しようとすると「NDI not supported」と表示されて有効化できないことがあります。現時点では以下の手順で毎回回避しています。

  1. Teamsの設定(Settings → Permissions)を開く
  2. 「GPUのハードウェアアクセラレーション」を無効化する
  3. Teamsを一度終了して再起動する
  4. 再度NDIを有効化してみる

この設定を有効・無効と切り替えることで、NDIが有効化できるようになるケースがあります。ただし、有効にした状態のまま再起動すると再び使えなくなることもあるため、毎回この手順を試す運用としています。再現性はありますが、根本的な原因は不明です。

OBSのソース設定

OBSでは以下のソースを組み合わせてシーンを構成しています。

  • NDIソース:Teamsのアクティブスピーカー映像
  • ディスプレイキャプチャ:画面共有の映像
  • ロゴ画像
  • オーディオソース:VB-Audio Virtual Cable(仮想オーディオデバイス)

音声については、Teams側のオーディオデバイスとOBS側のオーディオソースの両方を VB-Audio Virtual Cable に合わせることで、Teamsの音声をOBSに取り込んでいます。


BGMシーンと場面切り替えの設定

シーンの構成

配信では大きく2つのシーンを使い分けています。

  • 待機シーン(BGMシーン):配信開始前や休憩中にBGMを流す
  • 本編シーン(NDIブロードキャストシーン):Teamsの映像・音声をそのまま配信する

シーン切り替えの運用

スピーカーが非公開の内容を話す場面(打ち合わせ等)では、BGMシーンへトランジションしてYouTube Live視聴者には音声が届かないようにします。本編に戻る際は「NDIブロードキャストシーン」へトランジションします。

現状はこの切り替えを手動で行っています。シーン切り替えに合わせてミキサーの音声入力も自動で切り替わるような設定ができると理想的ですが、現時点では手動での対応としています。


YouTube Liveへの配信設定

ストリームキーの設定

OBSの「設定 → 配信」からYouTube LiveのストリームキーをOBSに入力します。YouTubeのライブ管理画面でイベントを作成するたびにストリームキーが変わるため、毎回忘れずに更新する必要があります。

配信開始前の確認手順は以下のとおりです。

  1. YouTubeのライブ管理画面でイベントを作成・編集する
  2. ストリームキーをコピーし、OBSに貼り付ける
  3. OBSで「配信開始」をクリックする
  4. YouTubeの管理画面でプレビューを確認する(「Go Live」ボタンは本番直前まで押さない)

イベントの公開設定

HCCJPでは参加登録の有無に関わらず視聴できるよう、イベントをパブリック公開に設定しています。


複数ディスプレイを使った運用環境

配信当日は3面ディスプレイで以下のように画面を分けています。

ディスプレイ用途
1面目OBSの操作画面 + Azure VMへのRDP接続
2面目手元のTeamsクライアント(自分の登壇・司会進行)
3面目YouTubeライブ管理画面 + Mentimeterなど

Mentimeterは質問の表示や司会進行のサポートに使用しています。


本番前の確認作業(イベント1時間前)

本番の1時間前に関係者にTeamsへ集まってもらい、以下を確認しています。

  • 各登壇者の音声・カメラが正常に動作しているか
  • YouTubeのプレビュー画面で映像・音声が正しく届いているか(「Go Live」は押さずにプレビューで確認)
  • OBSのシーン切り替えが正常に機能するか

YouTubeのプレビューを確認する際は「Go Live」ボタンは絶対に押さず、プレビュー表示のみで確認します。誤って押してしまうと一般公開の配信が始まってしまいます。


まとめ

TeamsをYouTube Liveで配信するには、Azure VM上にOBSとTeamsを組み合わせた環境を構築し、NDIを使って映像・音声を連携させる方法が有効です。

主なポイントは以下のとおりです。

  • Azure VM(NV6シリーズ) を配信専用マシンとして使うことで安定した配信が実現できる
  • RDP接続時のオーディオ設定 に注意し、音のループを防ぐ
  • 配信専用のTeamsアカウント を用意することで、複数デバイスからの接続トラブルを回避できる
  • NDIの「not supported」エラー はGPUハードウェアアクセラレーションのオン/オフ切り替えで回避する
  • BGMシーンと本編シーンの切り替え で、視聴者に聞かせたくない音声を遮断できる
  • ストリームキーはイベントごとに変わる ため、毎回OBSへの再設定が必要

配信担当者が司会進行も兼ねる場合は操作が多くなるため、可能であれば配信専任の担当者を置くとトラブル発生時のリスクを大幅に軽減できます。