概要
このガイドは、YouTube チャンネルのデフォルトの liveStream
リソースと liveBroadcast
リソースを使用してライブ コンテンツをストリーミングする API クライアント アプリケーションのデベロッパーを対象としています。これは、アプリがデフォルトのブロードキャストとデフォルト ストリームのサポート終了を適切に処理できるようにすることを目的としています。また、次のいずれかのステートメントが当てはまる場合にも関係します。
liveBroadcast
リソースのisDefaultBroadcast
プロパティの値を確認します。liveStream
リソースのisDefaultStream
プロパティの値を確認します。liveBroadcasts.list
メソッドを呼び出し、broadcastType
パラメータ値をpersistent
に設定します。非推奨日現在:broadcastType
パラメータの値がpersistent
の場合、liveBroadcasts.list
メソッドは結果を返しません。- また、
broadcastType
パラメータの値がall
の場合、liveBroadcasts.list
メソッドは、この時間の前に存在していた永続ブロードキャストを返しません。
アプリケーションが影響を受ける場合は、アプリケーションの更新をご覧ください。このセクションでは、このサポート終了の結果としてアプリケーションで必要になる手順の変更について説明しています。 このセクションでは、API クライアントがデフォルトのブロードキャストとストリームを現在使用している場合に、API クライアントが一般的に従わない可能性のあるブロードキャストのライフサイクル ガイドの手順について説明します。
何が起こっているか
YouTube で 2015 年以降、チャンネルでライブ ストリーミングが有効になっている場合、そのチャンネル用のデフォルト ストリームとデフォルト ブロードキャストが自動的に作成されていました。デフォルトのストリームが無期限に存在していたため、削除できませんでした。同様に、デフォルトのブロードキャストは「永続的」と見なされました。常に存在し、開始時間または終了時間は関連付けられておらず、特定のイベントにバインドされていませんでした。
上記のサポート終了日をもって、デフォルトのストリームとブロードキャストは作成されなくなります。この変更は、それらのリソースに依存してライブ コンテンツをブロードキャストするクライアント アプリケーションに影響します。また、ユーザー インターフェースがカスタマイズされて、チャンネル オーナーが作成したデフォルトのリソースと他のブロードキャストおよびストリームを区別するアプリにも適用されます。
API クライアントは、デフォルトのリソースに依存するのではなく、liveBroadcast
リソースと liveStream
リソースを作成して管理し、それらのリソースをまとめてバインドする必要があります。
アプリケーションを更新する
用語をすばやく確認するために、ブロードキャストは YouTube で実際に視聴できるイベントを表します。ストリームは、実際の動画コンテンツを YouTube に送信するメカニズムです。ブロードキャストは 1 つのストリームにのみバインドできます(バインドする必要があります)。
デフォルト ブロードキャストからの移行
サポートが終了する前に、API クライアントはチャンネルのデフォルトのブロードキャストを使用するか、イベント固有のブロードキャストを作成するかを選択できました。デフォルトのブロードキャストは、複数のイベントで再利用できる永続的なリソースでしたが、イベント固有のブロードキャスト リソースは、厳密に 1 つの YouTube 動画に対応する 1 回限りのリソースです。
クライアント アプリが liveBroadcasts.list
メソッドを呼び出し、次のいずれかを行います。
broadcastType
パラメータ値をpersistent
に設定します。このリクエストは、デフォルトのブロードキャストのみを取得します。broadcastType
パラメータ値をall
に設定し、API レスポンスでisDefaultBroadcast
プロパティの値がtrue
のliveBroadcast
リソースを識別します。
サポート終了後は、YouTube でイベント固有のブロードキャストのみがサポートされます。
つまり、クライアント アプリは、デフォルトのブロードキャストに依存するのではなく、個々のブロードキャスト イベントごとに liveBroadcast
リソースを作成する必要があります。
liveBroadcast
リソースを作成するには、liveBroadcasts.insert
メソッドを呼び出します。このプロセスについては、「ブロードキャストのライフサイクル」ガイドのステップ 1.1 で説明されています。
まだ機能していない場合は、今後のイベント固有のブロードキャストを区別して選択するためのメカニズムを、ユーザー インターフェースで提供する必要があります。
デフォルト ストリームからの移行
ストリームを使用すると、音声動画コンテンツを YouTube に転送できます。ストリーミングでは、コンテンツを YouTube にストリーミングする方法の設定を定義します。ブロードキャストが異なるタイミングで行われる場合、多数のブロードキャストに対して同じストリームを再利用するのが一般的です。
アプリはデフォルトのストリームを使用できませんが、ブロードキャストごとに再利用できる再利用可能なストリームを作成できます。liveStream
リソースを作成するには、ブロードキャストのライフサイクル ガイドliveStreams.insert
のステップ 1.2 の手順に沿って liveStreams.insert
メソッドを呼び出します。デフォルトでは、新しく作成されたストリームは再利用できます。ただし、必要に応じて contentDetails.isReusable
プロパティを false
に設定して、1 回限りのストリームを作成し、ブロードキャストとストリームを 1 対 1 の関係にすることができます。
次のリストには、ストリームのタイトルとストリームの説明に加えて、新しいストリームの作成時に設定できる 4 つのプロパティが含まれています。このリストには、デフォルト ストリームがプロパティごとに使用する値が表示されます。これは、デフォルト ストリームの使用から移行する場合、おそらくクライアント アプリケーションで使用する設定になります。
cdn.frameRate
~variable
cdn.ingestionType
~rtmp
cdn.resolution
~variable
contentDetails.isReusable
~true
ブロードキャストをストリームにバインドする
YouTube でライブ配信を開始する前に、各 liveBroadcast
リソースを 1 つのストリームにバインドする必要があります。(ブロードキャストは作成時に作成されたストリームにバインドされません)。
バインディング プロセスは、デフォルト ストリームに不可逆的にバインドされたデフォルト ブロードキャストに対して自動的に処理されました。ただし、サポート終了日以降は、すべてのブロードキャストについて、クライアント アプリがそのプロセスを管理する必要があります。
ブロードキャストをストリームにバインドするには、「ブロードキャストのライフサイクル」ガイドのステップ 1.3 で説明されているように liveBroadcasts.bind
メソッドを呼び出します。
- 再利用可能なストリームを使用している場合は、ストリームを 1 回作成し、すべてのブロードキャストをそのストリームにバインドできます。
- 再利用可能なストリームを使用していない場合は、ブロードキャストとストリームを作成してから、この 2 つをバインドする必要があります。
ブロードキャストのテスト
デフォルトのブロードキャストを使用しない場合は、ブロードキャストをテストできます。テストを実施するには、プレーヤーを埋め込む必要があります。このプレーヤーでは、YouTube の視聴者に表示されるブロードキャスト動画をプレビューできますが、他の視聴者にはブロードキャストが表示されません。
API クライアントが以前にデフォルトのブロードキャストとストリームを使用していて、ストリーミング プロセスにテストフェーズを追加する場合は、「ブロードキャストのライフサイクル」ガイドのステージ 3 をご覧ください。
ストリームをテストする場合は、ブロードキャストを挿入するときに、contentDetails.monitorStream.enableMonitorStream プロパティを true
に、contentDetails.enableAutoStart プロパティを false
に設定する必要があります。これらは、両方のプロパティのデフォルト値です。
自動スタートと自動ストップ機能を使用する
デフォルトの配信で動画のストリーミングを開始すると、デフォルトの配信が自動的に開始されます。同様に、動画のストリーミングを停止した後でデフォルトのブロードキャストが終了しました。これらのデフォルト リソースを使用する各ストリーミング セッションは、その後、チャンネルの動画になります。
自動ブロードキャストと自動ストップの機能はデフォルトのブロードキャストのデフォルト動作でしたが、これらの機能はオプションであり、他のブロードキャストで有効にする必要があります。これらの機能を使用する場合は、ブロードキャストを挿入するときに、contentDetails.enableAutoStart と contentDetails.enableAutoStop プロパティ値を true
に設定する必要があります。これらの機能は独立しているため、どちらか一方を使用できます。
新しいブロードキャストの自動スタートと自動ストップ機能を有効にしていない場合、API クライアントは liveBroadcasts.Transition メソッドを呼び出して、動画のストリーミングの開始と終了時にブロードキャストのステータスを更新する必要があります。「ブロードキャストのライフサイクル」ガイドで、ブロードキャストの開始時と終了時に遷移を管理する手順については、ステップ 4.3 とステップ 5.2 をご覧ください。