YouTube Live Streaming API - ブロードキャストとストリームについて
コレクションでコンテンツを整理
必要に応じて、コンテンツの保存と分類を行います。
このガイドでは、ブロードキャストとストリームの概要について説明します。また、放送局が YouTube Live Streaming API を使用してこれらのリソースを作成、管理する方法を示すユースケースについても説明します。
-
ブロードキャスト: YouTube 上でライブ視聴できるイベントを表します。各ブロードキャストは個別の YouTube 動画です。ブロードキャストは 1 つのストリームにのみバインドでき、バインドする必要があります。
-
ストリームでは、音声動画コンテンツを YouTube に送信することができます。ストリームによって、YouTube へのコンテンツのストリーミング方法の設定を定義できます。同じストリームは最大 3 つのライブ配信にバインドできます。また、放送局が時刻が異なる複数のブロードキャストで同じストリームを再利用することもよくあります。
残りのセクションでは、API ユーザーがブロードキャストとストリームを通常どのように使用するかを説明する 3 つのユースケースを紹介します。
単一のエンコーダを構成する
最も一般的な API ユースケースでは、YouTube チャンネルに一連のライブイベントや定期的なライブイベントがあります。チャンネル所有者はエンコーダが 1 つで、そのエンコーダを 1 回だけ設定したいと考えています。そのため、次の手順を行います。
- API で
liveStream
リソースを 1 つ作成します。
- そのリソースのコンテンツ配信設定を使用して、チャンネルのエンコーダを構成します。
チャンネルが複数ある場合は、チャンネルごとに異なるストリームを作成する必要があります。
- API で
liveBroadcast
リソースを作成し、それらのリソースをすべて liveStream
リソースにバインドします。このシナリオでは、チャンネルでスケジュールしたすべてのライブイベントで同じストリーミング設定が使用されます。ただし、一度に配信できるイベントは 1 つのみです。また、各配信の動画コンテンツは一意です。
- イベントが発生したら、ブロードキャストのステータスを
testing
または live
に更新して、YouTube でそのイベントのブロードキャストに進みます。
ブロードキャストごとに 1 つのストリームを作成する
もう 1 つの一般的な方法は、ブロードキャストごとに個別のストリームを作成することです。このシナリオでは、liveBroadcast
リソースごとに個別の liveStream
リソースを作成し、配信ごとに適切な設定を使用するようにストリーミング エンコーダを設定します。
この方法は、チャンネルに繰り返しの複数のブロードキャストがあり、2 つのブロードキャストが同時に発生する可能性があるため、両方のブロードキャストで同じストリーミング設定を使用できない場合に理にかなっています。実際、チャンネルは定期的な放送を 1 つの番組として扱い、番組ごとに 1 つの liveStream
リソースを作成するだけです。そうすれば、同じ番組の各エピソードが 1 つのブロードキャストを表し、同じ番組のすべてのブロードキャストが同じストリームにバインドされます。
1 つのストリームで同時ブロードキャストを作成する
このシナリオでは、ライブ配信を複数の同時配信に分割する必要があります。そのため、1 つの liveStream
リソースが、同時に live
ステータスの 2 つ(または複数)の liveBroadcast
リソースにバインドされていることになります。
たとえば、チャンネルで 24 時間 365 日のライブフィードを配信する一方で、その配信中に行われるインタビュー用に別の動画を作成する必要があるとします。この場合、インタビューの内容は、24 時間 365 日放送のコンテンツのサブセットです。
このような場合は、2 つの liveBroadcast
リソースを作成し、両方のブロードキャストを同じストリームにバインドします。24 時間 365 日ブロードキャストが進行中で、そのリソースは、インタビューが開始されるかなり前に live
ステータスになります。インタビューが開始されると、24 時間 365 日ブロードキャストのリソースを変更せずに、インタビューに関連付けられているリソースのステータスを live
に更新します。つまり、同じコンテンツを 2 つの異なる動画に同時にストリーミングすることになります。
インタビューが終了したら、インタビュー ブロードキャストのリソースを再度更新しますが、今回はステータスを complete
に設定します。ただし、24 時間 365 日ブロードキャストは継続するため、動画のストリーミングは停止しません。
特に記載のない限り、このページのコンテンツはクリエイティブ・コモンズの表示 4.0 ライセンスにより使用許諾されます。コードサンプルは Apache 2.0 ライセンスにより使用許諾されます。詳しくは、Google Developers サイトのポリシーをご覧ください。Java は Oracle および関連会社の登録商標です。
最終更新日 2024-08-15 UTC。
[null,null,["最終更新日 2024-08-15 UTC。"],[[["\u003cp\u003eA broadcast represents a live event on YouTube, functioning as a distinct video, and it must be linked to one stream.\u003c/p\u003e\n"],["\u003cp\u003eA stream is used to send audio-video content to YouTube, defining the settings for that stream, and one stream can be connected to up to three live broadcasts.\u003c/p\u003e\n"],["\u003cp\u003eBroadcasters often use the same stream for numerous broadcasts that occur at different times, reusing stream settings and reducing redundant setup.\u003c/p\u003e\n"],["\u003cp\u003eThe API can be used in multiple ways, whether it be one stream for multiple broadcasts, one stream per broadcast, or a single stream being split into multiple simultaneous broadcasts.\u003c/p\u003e\n"],["\u003cp\u003eChannels can use the API to schedule recurring live events with a single encoder, configuring it just once for multiple broadcasts.\u003c/p\u003e\n"]]],["Broadcasts represent distinct YouTube live events, each bound to one stream. Streams transmit audio-video content to YouTube and define streaming settings. Broadcasters often reuse streams for multiple broadcasts at different times. Common use cases include: configuring one stream for multiple scheduled broadcasts, creating a unique stream per broadcast, or using a single stream for simultaneous broadcasts. For the last case, one stream can be used to have up to 3 simultaneous live broadcasts. API users create and bind these resources.\n"],null,["# YouTube Live Streaming API - Understanding Broadcasts and Streams\n\nThis guide provides a brief overview of **broadcasts** and **streams**. It also discusses use cases that show how broadcasters use the YouTube Live Streaming API to create and manage those resources.\n\n- A **broadcast** represents an event that can be watched on YouTube as it happens. Each broadcast is a distinct YouTube video. A broadcast can be and needs to be bound to exactly one stream.\n\n- A **stream** enables you to transmit audio-video content to YouTube, and it defines the settings for how you stream your content to YouTube. The same stream can be bound to up to three live broadcasts. It is also common for broadcasters to reuse the same stream for many different broadcasts if those broadcasts occur at different times.\n\nThe remaining sections present three use cases that explain how API users typically use broadcasts and streams.\n\nConfigure a single encoder\n--------------------------\n\nIn the most common API use case, your YouTube channel has a series of scheduled or recurring live events. As the channel owner, you have a single encoder and only want to configure the encoder one time. So, you perform the following steps:\n\n1. Create one [liveStream](/youtube/v3/live/docs/liveStreams) resource in the API.\n2. Use the content delivery settings from that resource to configure the encoder for the channel.\n3. Note that, if you have multiple channels, you must create a different stream for each channel.\n4. Create [liveBroadcast](/youtube/v3/live/docs/liveBroadcasts) resources in the API and [bind](/youtube/v3/live/docs/liveBroadcasts/bind) all of those resources to the [liveStream](/youtube/v3/live/docs/liveStreams) resource. In this scenario, every live event that you schedule for your channel uses the same streaming settings. However, only one event is live at any given time, and the video content for each broadcast is unique.\n5. Any time an event occurs, update the broadcast's status to either `testing` or `live` and proceed to broadcast that event on YouTube.\n\nCreate one stream per broadcast\n-------------------------------\n\nAnother common approach is to create a separate stream for each broadcast. In this scenario, you would create a distinct [liveStream](/youtube/v3/live/docs/liveStreams) resource for each [liveBroadcast](/youtube/v3/live/docs/liveBroadcasts) resource and then configure your streaming encoder to use the appropriate settings for each broadcast.\n\nThis approach might make sense if your channel has multiple recurring broadcasts such that two broadcasts might occur simultaneously, making it infeasible for both broadcasts to use the same streaming settings. In fact, your channel might treat each recurring broadcast as a show and just create one [liveStream](/youtube/v3/live/docs/liveStreams) resource per show. Then, each episode of the same show would represent a broadcast, and all broadcasts of the same show could be bound to the same stream.\n\nUse one stream to create simultaneous broadcasts\n------------------------------------------------\n\nIn this scenario, you want to split a live stream into multiple, simultaneous broadcasts. As such, you have one [liveStream](/youtube/v3/live/docs/liveStreams) resource that is bound to two (or more) [liveBroadcast](/youtube/v3/live/docs/liveBroadcasts) resources that have a `live` status at the same time.\n\nFor example, suppose your channel broadcasts a 24/7 live feed, but you also want to create a separate video for an interview that occurs during that broadcast. In this case, the interview content is a subset of the 24/7 broadcast's content.\n\nTo handle this case, you create two `liveBroadcast` resources and bind both broadcasts to the same stream. The 24/7 broadcast is ongoing and its resource has a `live` status long before the interview begins. When the interview begins, you update the status of the resource associated with the interview to `live` without changing the 24/7 broadcast's resource. Thus, you are streaming the same content to two separate videos at the same time.\n\nWhen the interview ends, you update the interview broadcast's resource again, this time setting its status to `complete`. However, you don't stop streaming video since the 24/7 broadcast continues."]]