YouTube
Macro Deck に同梱YouTube のライブチャットと配信統計を表示し、タイトルやタグを変更して、スーパーチャットやメンバーに反応します。
YouTube チャットウィジェットと YouTube 配信統計ウィジェット
- YouTube チャットと YouTube 配信統計のウィジェット
- 配信のタイトル、説明、タグを設定
- 配信の開始、終了、広告の挿入
- スーパーチャット、スーパーステッカー、メンバーシップのトリガー
- 自分の Google Cloud プロジェクトとクォータを使用
YouTube 連携は、YouTube チャンネルを Macro Deck に接続します。ライブ配信の状態を変数として表示し、スーパーチャット、スーパーステッカー、メンバーシップでトリガーを発生させ、ライブチャットをウィジェットに表示してそこからモデレーションでき、ボタンから配信を変更できます。
YouTube には、Macro Deck が全員のために使える共通のログインがありません。そのため、自分の Google Cloud プロジェクトを通じて接続します。設定は一度だけで、10 分ほどかかります。プロジェクトは無料で、そのクォータと権限は自分だけのものです。
できること
- 現在の配信のライブチャットにチャットメッセージを送る。
- ライブ中の配信、またはライブでないときは次に予定されている配信のタイトル、説明、タグを変更する。
- 配信を開始 で次に予定されている配信を開始し、配信を終了 で終了する。YouTube に広告の挿入を依頼する。
- YouTube チャット ウィジェットにライブチャットを表示し、そこからメッセージの削除、チャット参加者のタイムアウトや BAN を行う。
- YouTube 配信統計 ウィジェットに、ライブ中かどうか、視聴者数、高評価数、チャンネル登録者数、タイトル、配信時間を表示する。
設定例:
- 次の配信のタイトルとタグを設定する 配信準備 ボタン。
- YouTube に 60 秒の広告の挿入を依頼する 広告 ボタン。
- スーパーチャット で動き、送り主と金額を通知で表示するフロー。
- 新規メンバー で動き、チャットにお礼のメッセージを投稿するフロー。
動作のしくみ
Macro Deck は、ライブ中は配信の状態を約 1 分ごと、チャットを数秒ごとに読み取ります。読み取りや変更のたびに、1 日 10,000 ユニットある Google Cloud プロジェクトのクォータを消費します。Macro Deck は使用量を数えています。クォータがほぼ尽きると、チャットの更新を一時停止し、ライブ状態の読み取り頻度を下げます。クォータを使い切ると、Google がクォータをリセットする太平洋時間の午前 0 時まで、ライブ状態とチャットの更新を一時停止します。
チャット、スーパーチャット、メンバーシップのイベントが届くのは、配信がライブの間だけです。Macro Deck が実行されていない間に起きたイベントは、後から発生しません。複数のチャンネルを接続できます。すべてのアクションに チャンネル 欄があり、すべてのトリガーを 1 つのチャンネルに限定できます。
必要なもの
- インターネットに接続できる Windows、macOS、Linux 上の Macro Deck 3
- ライブ配信ができる YouTube チャンネル
- YouTube Data API v3 を有効にした Google Cloud プロジェクト
- 種類が「TV と限られた入力デバイス」の OAuth クライアント ID と、そのクライアントシークレット
- 「広告の挿入を開始」には、ミッドロール広告を表示できるチャンネルでのライブ配信が必要
セットアップ
ステップ 1: Google Cloud プロジェクトを作成する
チャンネルを所有している Google アカウントで Google Cloud console を開き、プロジェクト (例: Macro Deck) を作成します。API とサービス > ライブラリ で YouTube Data API v3 を検索し、有効にする をクリックします。
ステップ 2: 同意画面を設定する
API とサービス > OAuth 同意画面 (新しいコンソールでは Google Auth Platform) を開きます。外部 を選び、アプリ名とメールアドレスを入力して保存します。対象 (または テストユーザー) で、チャンネルを所有している Google アカウントをテストユーザーとして追加します。
ステップ 3: OAuth クライアント ID を作成する
API とサービス > 認証情報 を開き、認証情報を作成 > OAuth クライアント ID をクリックして、アプリケーションの種類に TV と限られた入力デバイス を選びます。それ以外の種類では、サインイン時に拒否されます。Google が表示するクライアント ID とクライアントシークレットをコピーします。
ステップ 4: Macro Deck にクライアントを入力する
Macro Deck のサイドバーで 連携 をクリックし、YouTube をクリックします。概要 タブの 設定 セクションで 設定を追加 をクリックします。右上のスイッチをオンにしても同じダイアログが開き、セットアップが完了すると連携が有効になります。YouTube チャンネルを接続 ダイアログで クライアント ID と クライアントシークレット を貼り付けます。Google からプロジェクトに追加のクォータが付与されている場合のみ、詳細な設定 をオンにして 1 日のクォータ(単位) に入力します。続行 をクリックします。
ステップ 5: Google でアクセスを承認する
ダイアログに Google で権限を承認 と デバイスコード が表示されます。Google を開いて承認 をクリックし、チャンネルを所有しているアカウントでサインインしてコードを入力し、チャンネルを選んでアクセスを許可します。Google はアプリが確認されていないと警告しますが、自分のプロジェクトなので続行してください。Macro Deck に戻り、続行 をクリックします。設定には、YouTube (My Channel) のようにチャンネルにちなんだ名前が付きます。ダイアログに セットアップが完了しました。 と表示されたら、完了 をクリックします。
ステップ 6: ボタンに YouTube のアクションを追加する
デッキ ページで、使いたいボタンをクリックします。デッキのロックが解除されている必要があります。右上のボタンに ロック と表示されていれば解除されています。エディターが開き、短押し が選択されています。+ アクションを追加 をクリックし、アクションを追加 ダイアログの左側で YouTube を選択して、配信タイトルを設定 などのアクションを選びます。チャンネル を選び、タイトル を入力して、保存 をクリックします。
アクション7
ボタンに設定したり、フローから実行したりできます。
- チャットメッセージを送信
- 現在の配信のライブチャットに、200 文字までのメッセージを投稿します。
- 配信タイトルを設定
- 現在の配信、またはライブでないときは次に予定されている配信のタイトルを変更します。
- 配信の説明を設定
- 現在の配信、または次に予定されている配信の説明を変更します。
- 配信のタグを設定
- 現在の配信、または次に予定されている配信のタグを置き換えます。
- 広告の挿入を開始
- ライブ配信中に、30 秒から 3 分の広告を表示するよう YouTube に依頼します。
- 配信を開始
- 準備ができている次の予定の配信を開始します。先に配信ソフトウェアを起動してください。
- 配信を終了
- 現在のライブ配信を終了します。
トリガー8
ボタンやフローがこれらのイベントに反応できます。
- 配信開始
- チャンネルがライブ配信を開始しました。
- 配信終了
- チャンネルのライブ配信が終了しました。
- スーパーチャット
- 誰かがスーパーチャットを送りました。送り主、金額、通貨、コメントが含まれます。
- スーパーステッカー
- 誰かがスーパーステッカーを送りました。
- 新規メンバー
- 誰かがチャンネルのメンバーになったか、メンバーシップをアップグレードしました。
- メンバーのマイルストーン
- メンバーがチャットでメンバーシップのマイルストーンを共有しました。
- メンバーシップのギフト
- 誰かが他の視聴者にメンバーシップをギフトしました。
- YouTube イベント(詳細)
- この一覧のすべての YouTube イベントを 1 つのトリガーで受け取ります。種類で絞り込むこともできます。
変数8
これらの値をボタンやウィジェットに表示したり、条件に使ったりできます。
youtube_<channel>_display_name- チャンネルの名前です。
youtube_<channel>_is_live- チャンネルがライブ中かどうかです。
youtube_<channel>_stream_title- ライブ配信のタイトルです。
youtube_<channel>_viewer_count- 現在の視聴者数です。視聴者数を非表示にしている場合は空になります。
youtube_<channel>_like_count- ライブ配信の高評価の数です。
youtube_<channel>_subscriber_count- YouTube が丸めた、チャンネルの登録者数です。
youtube_<channel>_uptime_seconds- 配信の経過時間 (秒) です。
youtube_<channel>_stream_thumbnail_url- 配信のサムネイルです。
ウィジェット2
ウィジェットの選択画面からデッキに追加できます。
- YouTube チャット
- スーパーチャットや新規メンバーを含め、現在の配信のライブチャットを表示します。押すと大きな画面が開き、モデレーションできます。
- YouTube 配信統計
- ライブ中かどうか、視聴者数、高評価数、チャンネル登録者数、タイトル、配信時間を、選んだスタイルで表示します。
よくある質問
なぜ自分の Google Cloud プロジェクトが必要なのですか?
YouTube には、Macro Deck が全員のために使える共通のログインがありません。自分のプロジェクトなら、クォータと権限は自分だけのものです。プロジェクトは無料です。
毎週サインインし直す必要があるのはなぜですか?
プロジェクトの同意画面がテスト中の間、Google はサインインを 7 日後に終了させます。その場合、連携 にサインインが期限切れになったと表示されるので、同じクライアント ID とクライアントシークレットで再接続してください。サインインしたままにするには、Google Cloud console で同意画面を公開します。
クォータを使い切るとどうなりますか?
Macro Deck はライブ状態とチャットの更新を一時停止し、連携 の YouTube のページに YouTube のクォータを使い切りました と表示されます。Google は太平洋時間の午前 0 時にクォータをリセットし、そのときに更新が再開します。アクションは、Google が拒否するまで動作し続けます。
「配信を開始」で配信が始まらないのはなぜですか?
配信を開始 は、すでに YouTube にストリームが届いている、次に予定されている配信を開始します。先に配信ソフトウェアを起動してください。自動で始まる配信や、YouTube Studio の 今すぐ配信 は YouTube が開始するもので、このアクションでは開始されません。
チャットウィジェットから BAN を解除できますか?
解除できるのは、現在の配信中に Macro Deck で行った BAN だけで、Macro Deck を再起動するまでに限られます。YouTube はどの BAN があるかを Macro Deck に伝えないため、それ以外の BAN は YouTube Studio で解除してください。
認証情報はどこに保存されますか?
クライアントシークレットとトークンは、Macro Deck を実行しているコンピューター上に暗号化して保存され、Google にだけ送られます。
配信のその他の連携
OBS Studio
Macro Deck に同梱シーンの切り替え、配信、録画、オーディオの操作を行い、OBS Studio での出来事に反応します。
Meld Studio
Macro Deck に同梱Meld Studio でシーンの切り替えと準備、レイヤー、エフェクト、オーディオトラックの操作、配信の開始ができます。
Streamlabs Desktop
Macro Deck に同梱Streamlabs Desktop でシーンの切り替え、配信、録画、音声ソースの操作ができます。
Streamer.bot
Macro Deck に同梱Streamer.bot のアクションの実行、チャットメッセージの送信を行い、Streamer.bot が報告するすべてのイベントに反応します。
Twitch
Macro Deck に同梱Twitch のチャットと配信統計を表示し、モデレーション、投票、広告を行い、フォロー、サブスク、レイドに反応します。