デフォルトのブロードキャストとストリームの非推奨化に関する移行ガイド

概要

このガイドは、YouTube チャンネルのデフォルトの liveStream リソースと liveBroadcast リソースを使用してライブ コンテンツをストリーミングする API クライアント アプリケーションのデベロッパーを対象としています。このガイドは、デフォルトのブロードキャストとデフォルトのストリームの非推奨化をアプリケーションが適切に処理できるようにすることを目的としています。次のいずれかのステートメントがアプリケーションに該当する場合は、このガイドが参考になります。

  • liveBroadcast リソースの isDefaultBroadcast プロパティの値を確認します。
  • liveStream リソースの isDefaultStream プロパティの値を確認します。
  • liveBroadcasts.list メソッドを呼び出し、broadcastType パラメータの値を persistent に設定します。サポート終了日以降:

    • broadcastType パラメータの値が persistent の場合、liveBroadcasts.list メソッドは結果を返しません。
    • broadcastType パラメータの値が all の場合、liveBroadcasts.list メソッドは、その時間より前に存在していた永続ブロードキャストを返しません。

アプリケーションが影響を受ける場合は、アプリケーションの更新セクションを参照してください。このセクションでは、この非推奨化の結果としてアプリケーションで必要になる可能性のある手続き上の変更について説明しています。このセクションでは、API クライアントが現在デフォルトのブロードキャストとストリームを使用している場合に、通常は実行しない可能性がある ブロードキャストのライフサイクル ガイドの特定の手順について説明します。

移行の影響

2015 年以降、YouTube では、チャンネルでライブ配信が有効になると、デフォルトのストリームとデフォルトのブロードキャストが自動的に作成されるようになりました。デフォルトのストリームは無期限に存在し、削除できませんでした。同様に、デフォルトのブロードキャストは永続的と見なされていました。常に存在し、開始時刻や終了時刻が関連付けられておらず、特定のイベントにバインドされていませんでした。

上記の非推奨日以降、YouTube ではデフォルトのストリームとブロードキャストは作成されなくなります。この変更は、これらのリソースを使用してライブ コンテンツをブロードキャストするクライアント アプリケーションに影響します。また、ユーザー インターフェースがカスタマイズされ、デフォルトのリソースとチャンネル所有者が作成した他のブロードキャストやストリームを区別するアプリにも影響します。

API クライアントは、デフォルトのリソースに依存するのではなく、liveBroadcast リソースと liveStream リソースを作成して管理し、これらのリソースをバインドする必要があります。

アプリケーションの更新

用語を簡単に説明すると、ブロードキャストは YouTube でリアルタイムに視聴できるイベントを表し、ストリームは実際の動画コンテンツを YouTube に送信するメカニズムです。ブロードキャストは、1 つのストリームにバインドできます。また、バインドする必要があります。

デフォルト ブロードキャストからの移行

この非推奨化の前は、API クライアントはチャンネルのデフォルト ブロードキャストを使用するか、イベント固有のブロードキャストを作成するかを選択できました。デフォルトのブロードキャストは複数のイベントで再利用できる永続リソースでしたが、イベント固有のブロードキャスト リソースは 1 回限りのリソースで、1 つの YouTube 動画に正確に対応しています。

クライアント アプリケーションが liveBroadcasts.list メソッドを呼び出し、次のいずれかを行う場合、デフォルトのブロードキャストを使用します。

  • broadcastType パラメータの値を persistent に設定します。このリクエストは、デフォルトのブロードキャストのみを取得します。
  • broadcastType パラメータの値を all に設定し、isDefaultBroadcast プロパティの値が true である API レスポンス内の liveBroadcast リソースを特定します。

サポート終了後は、イベント固有のブロードキャストのみがサポートされます。つまり、クライアント アプリケーションはデフォルトのブロードキャストに依存するのではなく、個々のブロードキャスト イベントごとに liveBroadcast リソースを作成する必要があります。

liveBroadcast リソースを作成するには、liveBroadcasts.insert メソッドを呼び出します。このプロセスについては、「ブロードキャストのライフサイクル」ガイドのステップ 1.1 で説明しています。

また、ユーザー インターフェースでは、今後のイベント固有のブロードキャストをユーザーが区別して選択できるメカニズムも提供する必要があります(まだ提供していない場合)。

デフォルト ストリームからの移行

ストリームを使用すると、オーディオ動画コンテンツを YouTube に送信できます。また、コンテンツを YouTube にストリーミングする方法の設定も定義できます。ブロードキャストが異なる時間に行われる場合、ブロードキャスト事業者が同じストリームを多くの異なるブロードキャストで再利用することは一般的です。

アプリケーションはデフォルトのストリームを使用できませんが、各ブロードキャストで再利用できる再利用可能なストリームを作成できます。liveStream リソースを作成するには、「ブロードキャストのライフサイクル」ガイドのステップ 1.2 の手順に沿って liveStreams.insert メソッドを呼び出します。デフォルトでは、新しく作成されたストリームは再利用可能です。ただし、必要に応じて contentDetails.isReusable プロパティを false に設定して、1 回限りのストリームを作成し、ブロードキャストとストリームの間に 1 対 1 の関係を持たせることができます。

次のリストは、新しいストリームを作成するときに設定できる 4 つのプロパティ(ストリームのタイトルストリームの説明を除く)を示しています。このリストには、デフォルトのストリームが各プロパティに使用する値が表示されます。デフォルトのストリームの使用から移行する場合は、クライアント アプリケーションで使用する設定として、これらの値を使用することをおすすめします。

ブロードキャストをストリームにバインドする

YouTube でライブブロードキャストを実際に開始する前に、各 liveBroadcast リソースを 1 つのストリームにバインドする必要があります。(ブロードキャストは作成時にストリームにバインドされません)。

バインディング プロセスは、デフォルトのブロードキャスト(デフォルトのストリームと密接に結び付いている)に対して自動的に処理されていました。ただし、非推奨日以降は、クライアント アプリケーションがすべてのブロードキャストのプロセスを管理する必要があります。

ブロードキャストをストリームにバインドするには、「ブロードキャストのライフサイクル」ガイドのステップ 1.3 で説明されているように、liveBroadcasts.bind メソッドを呼び出します。

  • 再利用可能なストリームを使用している場合は、ストリームを 1 回作成して、すべてのブロードキャストをそのストリームにバインドできます。
  • 再利用可能なストリームを使用していない場合は、ブロードキャストとストリームを作成し、それらをバインドする必要があります。

ブロードキャストをテストする

デフォルトのブロードキャストを使用しない場合は、ブロードキャストをテストできます。テストを実施するには、YouTube 視聴者に表示される放送動画をプレビューできるプレーヤーを埋め込みます。この放送は他の視聴者には表示されません。

API クライアントが以前にデフォルトのブロードキャストとストリームを使用しており、ストリーミング プロセスにテスト段階を追加する場合は、「ブロードキャストのライフサイクル」ガイドのステージ 3 をご覧ください。

ストリームをテストする場合は、ブロードキャストを挿入するときに、contentDetails.monitorStream.enableMonitorStream プロパティを true に、contentDetails.enableAutoStart プロパティを false に設定する必要があります。これらは両方のプロパティのデフォルト値です。

自動開始機能と自動停止機能を使用する

デフォルトのブロードキャストは、デフォルトのストリームで動画のストリーミングを開始するたびに自動的に開始されました。同様に、動画のストリーミングを停止すると、デフォルトのブロードキャストが終了します。これらのデフォルト リソースを使用した各ストリーミング セッションは、その後チャンネルの動画になりました。

自動起動と自動停止の機能は、デフォルトのブロードキャストではデフォルトの動作でしたが、他のブロードキャストではオプションであり、有効にする必要があります。これらの機能を使用する場合は、ブロードキャストを挿入するときに、contentDetails.enableAutoStart プロパティと contentDetails.enableAutoStop プロパティの値を true に設定する必要があります。これらの機能は独立しているため、一方のみを使用することもできます。

新しいブロードキャストで自動スタート機能と自動ストップ機能を有効にしていない場合、動画のストリーミングを開始および終了するときに、API クライアントが liveBroadcasts.transition メソッドを呼び出してブロードキャストのステータスを更新する必要があります。「ブロードキャストのライフサイクル」ガイドのステップ 4.3ステップ 5.2 に、ブロードキャストの開始時と終了時にこれらのトランジションを管理する手順が記載されています。