LiveStreams
liveStream
リソースには、YouTube に送信する動画ストリームに関する情報が含まれています。このストリームでは、YouTube ユーザーにブロードキャストされるコンテンツを提供します。作成した liveStream
リソースは、1 つ以上の liveBroadcast
リソースにバインドできます。
Methods
API は、liveStreams
リソースについて次のメソッドをサポートしています。
list
API リクエスト パラメータに一致する動画ストリームのリストを返します。今すぐ試す
挿入
動画ストリームを作成します。この配信では、動画を YouTube に送信して、視聴者に配信することができます。
今すぐ試す
update
動画ストリームを更新します。変更するプロパティを更新できない場合は、適切な設定で新しいストリームを作成する必要があります。今すぐ試す
delete
動画ストリームを削除します。
今すぐ試す
リソース表現
次の JSON 構造は、liveStreams
リソースの形式を示しています。
{ " kind " : "youtube#liveStream" , " etag " : etag , " id " : string , " snippet " : { " publishedAt " : datetime , " channelId " : string , " title " : string , " description " : string , " isDefaultStream " : boolean }, " cdn " : { " ingestionType " : string , " ingestionInfo " : { " streamName " : string , " ingestionAddress " : string , " backupIngestionAddress " : string }, " resolution " : string , " frameRate " : string }, " status " : { " streamStatus " : string , " healthStatus " : { " status " : string , " lastUpdateTimeSeconds " : unsigned long , " configurationIssues " : [ { " type " : string , " severity " : string , " reason " : string , " description " : string } ] } }, " contentDetails " : { " closedCaptionsIngestionUrl " : string , " isReusable " : boolean } }
プロパティ
次の表は、このリソースで使用されているプロパティの定義を示したものです。
プロパティ
kind
string
API リソースのタイプを識別します。値は youtube#liveStream
です。
etag
etag
このリソースの Etag。
id
string
ストリームを一意に識別するために YouTube が割り当てる ID。
snippet
object
snippet
オブジェクトには、ストリームに関する基本情報(チャンネル、タイトル、説明など)が含まれています。
snippet. publishedAt
datetime
ストリームが作成された日時。値は ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ
)形式で指定します。
snippet. channelId
string
YouTube で、ストリーミングを配信しているチャンネルを一意に識別するために使用する ID です。
snippet. title
string
ストリームのタイトル。値は 1 ~ 128 文字にする必要があります。
snippet. description
string
ストリームの説明。10,000 文字以内で指定してください。
snippet. isDefaultStream
boolean
このプロパティは 2020 年 9 月 1 日に非推奨となります。その時点で、チャンネルでライブ配信が有効になっている場合、YouTube はデフォルトのストリームとデフォルトのブロードキャストの作成を停止します。詳しくは、
サポート終了のお知らせ をご覧ください。
このプロパティは、このストリームがチャンネルのデフォルト ストリームかどうかを示します。
デフォルト ストリームの仕組み
YouTube チャンネルでライブ配信を有効にすると、そのチャンネル用のデフォルト ストリームとデフォルト ブロードキャストが作成されます。ストリームでは、チャンネル所有者が YouTube にライブ動画を送信する方法を定義します。また、ブロードキャストは、視聴者にデフォルトのストリームを表示する方法です。チャンネル所有者は、liveStreams.list
メソッドと liveBroadcasts.list
メソッドを使用して、これらのリソースを識別できます。 チャンネルのデフォルト ストリームは無期限に存在し、開始時間または終了時間は関連付けられず、削除もできません。チャンネル所有者は動画ビットの送信を開始するだけで、ストリーミングが自動的に開始されます。
ストリーミングが終了すると、完了したブロードキャストが YouTube 動画に変換され、その動画に YouTube 動画 ID が割り当てられます。変換が完了すると、動画はアップロードされた動画のリストに追加されます。配信が終了した直後に動画を利用できず、遅延の長さは実際の配信時間と関連しています。
cdn
object
cdn
オブジェクトは、ライブ配信のコンテンツ配信ネットワーク(CDN)の設定を定義します。これらの設定では、YouTube にコンテンツをストリーミングする方法の詳細を指定します。
cdn. format
string
このプロパティは 2016 年 4 月 18 日をもって非推奨となり、2020 年 8 月 17 日をもってサポートが終了します。 この日時点でこのプロパティを使用しているリクエストは失敗します。 代わりに、cdn.frameRate
プロパティと cdn.resolution
プロパティを使用して、フレームレートと解像度を個別に指定します。
cdn. ingestionType
string
動画ストリームの転送に使用する方法またはプロトコルです。 このプロパティの有効な値は次のとおりです。
cdn. ingestionInfo
object
ingestionInfo
オブジェクトには、ストリームを YouTube に送信するために必要な情報が含まれます。
cdn.ingestionInfo. streamName
string
YouTube が動画ストリームに割り当てるストリーム名。
cdn.ingestionInfo. ingestionAddress
string
RTMP、DASH、または HLS を使用する場合、動画を YouTube にストリーミングする際に使用するメインの取り込み URL です。動画は、この URL にストリーミングする必要があります。 動画ストリームのエンコードに使用するアプリケーションやツールによっては、ストリーム URL とストリーム名を個別に入力することや、STREAM_URL/STREAM_NAME という形式で連結する必要があります。
cdn.ingestionInfo. backupIngestionAddress
string
RTMP、DASH、または HLS を使用する場合、動画を YouTube にストリーミングする際に使用するバックアップ取り込み URL。ingestionAddress
に送信するコンテンツを、この URL に同時にストリーミングすることもできます。
cdn.ingestionInfo. rtmpsIngestionAddress
string
RTMPS を使用する場合に、動画を YouTube にストリーミングする際に使用するメインの取り込み URL。動画は、この URL にストリーミングする必要があります。 動画ストリームのエンコードに使用するアプリまたはツールによっては、ストリーム URL とストリーム名を個別に入力することや、STREAM_URL/STREAM_NAME という形式で連結する必要があります。
cdn.ingestionInfo. rtmpsBackupIngestionAddress
string
RTMPS を使用する場合に、YouTube への動画のストリーミングに使用するバックアップ取り込み URL。
cdn. resolution
string
受信動画データの解像度。 このプロパティの有効な値は次のとおりです。
240p
360p
480p
720p
1080p
1440p
2160p
variable
: この設定を使用すると、ストリーミングした動画の解像度を自動的に検出できます。また、cdn.frameRate
を variable
に設定する必要があります。
推奨されるエンコーダの設定 については、YouTube ヘルプセンターをご覧ください。
cdn. frameRate
string
受信動画データのフレームレート。 このプロパティの有効な値は次のとおりです。
30fps
60fps
variable
: この設定を使用して、ストリーミングした動画のフレームレートを自動的に検出します。また、cdn.resolution
を variable
に設定する必要があります。
推奨されるエンコーダの設定 については、YouTube ヘルプセンターをご覧ください。
status
object
status
オブジェクトには、ライブ配信のステータスに関する情報が含まれます。
status. streamStatus
string
ストリームのステータス。 このプロパティの有効な値は次のとおりです。
active
– ストリームがアクティブ状態(ユーザーがストリーム経由でデータを受信している状態)
created
– ストリームは作成されましたが、有効な CDN 設定がありません。
error
– ストリームにエラー条件が存在します。
inactive
– ストリームは非アクティブ状態です。つまり、ユーザーはストリーム経由でデータを受信していません。
ready
– ストリームに有効な CDN 設定があります。
status. healthStatus
object
このオブジェクトには、ライブ配信のヘルス ステータスに関する情報が含まれています。この情報は、ストリーミングの問題の特定、診断、解決に使用できます。
status.healthStatus. status
string
このストリームのステータス コード。 このプロパティの有効な値は次のとおりです。
good
- 重大度 が warning
以下の設定の問題はありません。
ok
- 重大度 が error
の構成上の問題はありません。
bad
– 配信の重大度 が error
である問題があります。
noData
– YouTube のライブ ストリーミング バックエンド サーバーにはストリームの状態に関する情報がありません。
status.healthStatus. lastUpdateTimeSeconds
unsigned long
ストリームの健全性が最後に更新された時刻。この値には秒単位の UNIX タイムスタンプが反映されます。
status.healthStatus. configurationIssues[]
list
このオブジェクトには、ストリームに影響を与える構成の問題のリストが含まれます。
status.healthStatus.configurationIssues[]. type
string
ストリームに影響するエラーのタイプを示します。
有効な値を確認する
設定に関する問題
audioBitrateHigh
理由: 音声の設定を確認してください
説明: 音声ストリームの現在のビットレート(%(actual)
)が推奨ビットレートよりも高くなっています。オーディオ ストリーム ビットレートは %(expected)s
を使用することをおすすめします。
audioBitrateLow
理由: 音声の設定を確認してください
説明: 音声ストリームの現在のビットレート (%(actual)s)
が推奨ビットレートよりも低くなっています。オーディオ ストリーム ビットレートは %(expected)s
を使用することをおすすめします。
audioBitrateMismatch
理由: セカンダリ ストリームを確認してください
説明: 現在の設定では、動画のメイン ストリームとバックアップ ストリームの音声ビットレートが異なります。同じ音声ビットレートを使用するようにストリームを構成する必要があります。
audioCodec
理由: 音声の設定を確認してください
説明: 音声ストリームはサポートされていないコーデックによってエンコードされています。ストリームの音声コーデックを、サポートされているコーデック(AAC、MP3)に設定してください。
audioCodecMismatch
理由: セカンダリ ストリームの状態が不良です
説明: 現在の設定では、動画のメイン ストリームとバックアップ ストリームが異なるオーディオ コーデックを使用しています。同じオーディオ コーデックを使用するようにストリームを構成する必要があります。
audioSampleRate
理由: 音声の設定を確認してください
説明: 現在のサンプルレートは %(actual)
です。推奨サンプルレートは 44.1 kHz と 48 kHz です。
audioSampleRateMismatch
理由: セカンダリ ストリームの状態が不良です
説明: 現在の設定では、動画のメイン ストリームとバックアップ ストリームの音声サンプルレートが異なります。同じ音声サンプルレートになるようにストリームを構成する必要があります。
audioStereoMismatch
理由: セカンダリ ストリームの状態が不良です
説明: 現在の設定では、動画のメイン ストリームと代替ストリームの音声チャンネルが異なっています。これらのストリームに同じ音声チャンネルを設定する必要があります。
audioTooManyChannels
理由: 音声の設定を確認してください
説明: 音声に 3 つ以上のチャンネルがありますが、1 つ(モノラル)または 2 つ(ステレオ)のチャンネルのみがサポートされます。音声チャンネルの数を修正してください。
badContainer
理由: 動画の設定が不良です
説明: 動画のコンテナ形式を変更してください。この構成では、現在のコンテナの形式が正しくありません。
bitrateHigh
理由: 動画の設定を確認してください
説明: ストリームの現在のビットレート (%(actual)s)
が推奨ビットレートよりも高くなっています。ストリームのビットレートは %(expected)s
を使用することをおすすめします。
bitrateLow
理由: 動画の出力が低すぎます
説明: ストリームの現在のビットレート (%(actual)s)
が推奨値より低くなっています。ストリームのビットレートは %(expected)s
を使用することをおすすめします。
framerateMismatch
理由: セカンダリ ストリームを確認してください
説明: 現在の設定では、動画のメイン ストリームとバックアップ ストリームのフレームレートが異なります。同じフレームレートになるようにストリームを構成する必要があります。
frameRateHigh
理由: フレームレートが高すぎます
説明: 現在のフレームレートが高すぎます。フレームレートを %(framerate)s
fps 以下に設定してください。
gopMismatch
理由: セカンダリ ストリームの状態が不良です
説明: 現在の設定では、動画のメイン ストリームとバックアップ ストリームのキーフレーム間隔が異なります。ストリームのキーフレーム間隔が同じになるように構成する必要があります。
gopSizeLong
理由: 動画の設定が不良です
説明: 4 秒以下のキーフレーム間隔を使用してください。現在、キーフレーム間隔が長すぎるためバッファリングが発生します。現在のキーフレーム間隔は %(actual_gop).1f
秒です。取り込みエラーが発生すると、誤った GOP(Group of Pictures)サイズになってしまう可能性があります。
gopSizeOver
理由: 動画の設定を確認してください
説明: 4 秒以下のキーフレーム間隔を使用してください。現在、キーフレーム間隔が長すぎるためバッファリングが発生する可能性があります。現在のキーフレーム間隔は %(actual_gop).1f
秒です。取り込みエラーが発生すると、誤った GOP(Group of Pictures)サイズになってしまう可能性があります。
gopSizeShort
理由: 動画の設定を確認してください
説明: GOP(Group of Pictures)サイズが非常に小さいため、画像の品質が低下する可能性があります。推奨されるキーフレーム間隔は 4 秒です。現在のキーフレーム間隔は %(actual_gop).1f
秒です。取り込みエラーが発生すると、誤った GOP サイズになってしまう可能性があります。
multipleAudioStreams
理由: 音声の設定を確認してください
説明: 取り込みストリームに複数の音声ストリームが含まれています。含めることができる音声ストリームは 1 つのみです。
multipleVideoStreams
理由: 動画の設定が不良です
説明: 取り込みストリームに複数の動画ストリームが含まれています。含めることができる音声ストリームは 1 つのみです。
noAudioStream
理由: 音声がない
説明: 取り込みストリームに音声ストリームが含まれていません。1 つの音声ストリームを含める必要があります。
noVideoStream
理由: 動画がありません
説明: 取り込みストリームに動画ストリームが含まれていません。1 つの音声ストリームを含める必要があります。
openGop
理由: 動画の設定が不良です
説明: 動画エンコーダの設定を「クローズされた写真グループ(GOP)」に変更してください。「オープン GOP」に設定されているようですが、YouTube ではサポートされていません。
resolutionMismatch
理由: セカンダリ ストリームの状態が不良です
説明: 現在の設定では、動画のメイン ストリームとバックアップ ストリームの解像度が異なります。ストリームの解像度が同じになるように構成する必要があります。
videoBitrateMismatch
理由: セカンダリ ストリームを確認してください
説明: 現在の設定では、動画のメイン ストリームとバックアップ ストリームのビットレートが異なります。ストリームの動画ビットレートが同じになるように設定する必要があります。
videoCodec
理由: 動画の設定が不良です
説明: 動画はサポートされていないコーデックによってエンコードされています。ストリームの動画コーデックを、サポートされているコーデック(H.264)に設定してください。
videoCodecMismatch
理由: セカンダリ ストリームの状態が不良です
説明: 現在の設定では、動画のメイン ストリームとバックアップ ストリームが異なる動画コーデックを使用しています。同じ動画コーデックが含まれるようにストリームを設定する必要があります。
videoIngestionStarved
理由: 動画の出力が低すぎます
説明: スムーズなストリーミングを維持するのに十分な動画が YouTube に届いていません。そのため、視聴者はバッファリングを経験します。
videoInterlaceMismatch
理由: セカンダリ ストリームの状態が不良です
説明: 現在の設定では、動画のメイン ストリームとバックアップ ストリームのインターレースが異なります。ストリームが同じインターレースを持つように構成する必要があります。
videoProfileMismatch
理由: セカンダリ ストリームの状態が不良です
説明: 現在の設定では、動画のメイン ストリームとバックアップ ストリームのプロフィールが異なります。ストリームが同じプロファイルを持つように構成する必要があります。
videoResolutionSuboptimal
理由: 解像度を確認してください
説明: 動画の解像度を確認してください。現在の解像度は (%(actual_w)dx%(actual_h)d)
で、最適ではありません。
videoResolutionUnsupported
理由: サポートされていない解像度です
説明: 動画の解像度を変更する必要があります。現在の解像度は (%(actual_w)dx%(actual_h)d)
ですが、この構成ではサポートされていません。予想される動画の解像度は (%(expected_w)dx%(expected_h)d)
です。
status.healthStatus.configurationIssues[]. severity
string
ストリームにおける問題の重大度を示します。 このプロパティの有効な値は次のとおりです。
info
- この動画は、パフォーマンスに悪影響を与えることなく視聴者に配信されます。
warning
- 動画は視聴者にブロードキャストされますが、パフォーマンスは最適ではありません。
error
– 動画を視聴者に配信できない。
status.healthStatus.configurationIssues[]. reason
string
問題の簡単な説明。ライブ ストリーム リソースの設定に関する問題 のドキュメントでは、各設定の問題タイプに関連する理由を示しています。
status.healthStatus.configurationIssues[]. description
string
問題の詳細な説明。可能であれば、説明に問題の解決方法が記載されています。ライブ ストリーム リソースの設定に関する問題 のドキュメントに、設定に関するすべての問題の種類と関連する説明が記載されています。
contentDetails
object
content_details
オブジェクトには、ストリームの字幕取り込み URL など、ストリームに関する情報が格納されます。
contentDetails. closedCaptionsIngestionUrl
string
このストリームの字幕を送信する取り込み URL です。
contentDetails. isReusable
boolean
ストリームが再利用可能かどうかを示します。つまり、複数のブロードキャストにバインドできることを意味します。複数の異なる配信で異なるブロードキャストが配信される場合、放送局が同じストリームを再利用することがよくあります。 この値を false
に設定すると、ストリームは再利用できません。つまり、1 つのブロードキャストにバインドのみできます。再利用可能なストリームと再利用可能なストリームは、次の点で異なります。再利用できないストリームは 1 つのブロードキャストにのみバインドできます。 再利用できないストリームは、配信終了後の自動プロセスによって削除されることがあります。 liveStreams.list
メソッドを呼び出して mine
パラメータを true
に設定した場合、再利用可能なストリームは一覧表示されません。このメソッドを使用して、再利用できないストリームのリソースを取得する唯一の方法は、id
パラメータを使用してストリームを識別することです。
特に記載のない限り、このページのコンテンツはクリエイティブ・コモンズの表示 4.0 ライセンス により使用許諾されます。コードサンプルは Apache 2.0 ライセンス により使用許諾されます。詳しくは、Google Developers サイトのポリシー をご覧ください。Java は Oracle および関連会社の登録商標です。
最終更新日 2023-02-22 UTC。
[null,null,["最終更新日 2023-02-22 UTC。"],[[["A `liveStream` resource represents a video feed being sent to YouTube for live broadcasts, which can be associated with one or more `liveBroadcast` resources to provide content to viewers."],["The `liveStream` resource can be managed through several methods, including `list` to retrieve streams, `insert` to create new streams, `update` to modify existing ones, and `delete` to remove streams."],["The `cdn` property defines critical streaming details such as `ingestionType` (e.g., RTMP, HLS), primary and backup stream URLs, resolution, and frame rate, and it is essential for configuring how the video stream is delivered to YouTube."],["The `status` property of a `liveStream` provides information on the current status of the stream, including whether it is active, created, or in error, as well as its overall health status and any detected issues."],["Configuration issues such as `videoBitrateLow`, `framerateMismatch` or `noAudioStream` might affect the quality or delivery of the broadcast, and can be checked in the `healthStatus` part of the `status` property."]]],["A `liveStream` resource represents a video stream sent to YouTube for live broadcasts, linked to `liveBroadcast` resources. Key actions include listing, creating, updating, and deleting streams. Streams are defined by properties like `id`, `title`, `description`, `ingestionType` (`rtmp`, `dash`, `hls`), and URLs for primary and backup ingestion. The resource contains status and health information, with `configurationIssues` detailing problems, categorized by video or audio issues, resolution, framerate, keyframe frequency or codec. The stream can also be `isReusable`.\n"]]