すべてのプロダクト
Search
ドキュメントセンター

Object Storage Service:PutLiveChannel

最終更新日:Feb 23, 2024

リアルタイムメッセージングプロトコル (RTMP) を使用してオーディオおよびビデオデータをアップロードする前に、PutLiveChannel操作を呼び出してLiveChannelを作成する必要があります。 PutLiveChannelリクエストへの応答には、LiveChannelにストリームを取り込むために使用されるURLと、取り込まれたストリームを再生するために使用されるURLが含まれます。

説明 返されたURLを使用して、ストリームを取り込み、再生できます。 ストリームの取り込みステータスの照会、ストリームの取り込みレコードの照会、ストリームの取り込みの無効化など、返されたLiveChannel名に基づいて操作を実行することもできます。

リクエスト構文

PUT /ChannelName? ライブHTTP/1.1
ホスト: BucketName.oss-cn-hangzhou.aliyuncs.com
日付: GMT日付
コンテンツ-長さ: サイズ
権限付与: SignatureValue
<?xml version="1.0" encoding="UTF-8"?>
<LiveChannelConfiguration>
  <説明> ChannelDescription</Description>
  <Status>ChannelStatus</Status>
  <ターゲット>
     <タイプ> HLS</タイプ>
     <FragDuration>FragDuration</FragDuration>
     <FragCount>FragCount</FragCount>
     <PlaylistName>PlaylistName</PlaylistName>
  </ターゲット>
  <スナップショット>
    <RoleName> スナップショットramロール </RoleName>
    <DestBucket>Snapshot dest bucket</DestBucket>
    <NotifyTopic> MNSの通知トピック </NotifyTopic>
    <間隔> 秒単位のスナップショット間隔 </間隔>
  </スナップショット>
</LiveChannelConfiguration> 

リクエストヘッダー

ヘッダーデータ型必須説明
ChannelNameString必須作成するLiveChannelの名前。 名前はオブジェクトの命名規則に準拠している必要があり、スラッシュ (/) を含めることはできません。

リクエストパラメーター

パラメーターデータ型必須説明
LiveChannelConfigurationContainer 必須LiveChannelの設定を格納するコンテナー。

子ノード: 説明、ステータス、およびターゲット

親ノード: なし

説明String 任意LiveChannelの説明。 説明の長さは最大128バイトです。

子ノード: なし

親ノード: LiveChannelConfiguration

ステータスEnumerated string任意LiveChannelのステータス。

子ノード: なし

親ノード: LiveChannelConfiguration

有効な値: enabledおよびdisabled

デフォルト値: enabled

ターゲットContainer必須アップロードされたデータを格納するためにLiveChannelによって使用される設定を格納するコンテナー。

子ノード: Type、FragDuration、FragCount、およびPlaylistName

親ノード: LiveChannelConfiguration

データ型Enumerated string必須LiveChannelがアップロードされたデータを保存する形式。

子ノード: なし

親ノード: ターゲット

有効値: HLS

説明
  • Typeの値をHLSに設定すると、tsファイルが生成されるたびに、Object Storage Service (OSS) はm3u8ファイルを更新します。 m3u8ファイルに含めることができる最新のtsファイルの最大数は、FragCountパラメーターで指定します。
  • Typeの値をHLSに設定し、現在のtsファイルに書き込まれるオーディオおよびビデオデータの期間がFragDurationで指定された期間を超えると、OSSは次のtsファイルに切り替えて、次のキーフレームが受信される前にデータを書き込みます。 OSSがmax(2 * FragDuration、60s) 以降に次のキーフレームを受信しない場合、OSSは強制的に次のtsファイルに切り替えます。 この場合、ストリームの再生中に吃音が発生する可能性があります。
FragDurationString任意Typeの値をHLSに設定したときの各tsファイルの期間。

単位:秒

子ノード: なし

親ノード: ターゲット

有効な値: [1, 100]

デフォルト値: 5

説明 FragDurationパラメーターとFragCountパラメーターに値を指定しない場合、2つのパラメーターのデフォルト値が使用されます。 FragDurationパラメーターとFragCountパラメーターを同時に指定する必要があります。
FragCountString任意Typeの値がHLSの場合、m3u8ファイルに含まれるtsファイルの数。

子ノード: なし

親ノード: ターゲット

有効な値: [1, 100]

デフォルト値: 3

説明 FragDurationパラメーターとFragCountパラメーターに値を指定しない場合、2つのパラメーターのデフォルト値が使用されます。 FragDurationパラメーターとFragCountパラメーターを同時に指定する必要があります。
プレイリスト名String任意Typeの値がHLSの場合に生成されるm3u8ファイルの名前。 名前は6〜128バイトである必要があります。 名前はで終わる必要があります。m3u8。

子ノード: なし

親ノード: ターゲット

デフォルト値: playlist.m3u8

スナップショットContainer任意高頻度スナップショット操作のオプションを格納するコンテナー。

子ノード: RoleName、DestBucket、NotifyTopic、およびInterval

親ノード: LiveChannelConfiguration

RoleNameString任意高頻度のスナップショット操作を実行するために使用されるロールの名前。 ロールには、DestBucketに対する書き込み権限と、NotifyTopicにメッセージを送信する権限が必要です。

子ノード: なし

親ノード: スナップショット

DestBucketString任意高頻度のスナップショット操作の結果を格納するバケット。 バケットは、現在のバケットと同じ所有者に属している必要があります。

子ノード: なし

親ノード: スナップショット

NotifyTopicString任意高頻度のスナップショット操作の結果をユーザーに通知するために使用されるMNSトピック。

子ノード: なし

親ノード: スナップショット

インターバルNUMERIC必須高頻度のスナップショット操作の間隔。 インラインフレームなどのキーフレームが間隔内に存在しない場合、スナップショットはキャプチャされません。

単位:秒

子ノード: なし

親ノード: スナップショット

有効な値: [1, 100]

デフォルトでは、このパラメータは空のままです。

レスポンスパラメーター

パラメーターデータ型説明
CreateLiveChannelResultContainerCreateLiveChannelリクエストに対するレスポンスを格納するコンテナー。

子ノード: PublishUrlsとPlayUrls

親ノード: なし

PublishUrlsContainerLiveChannelにストリームを取り込むために使用されるURLを格納するコンテナー。

子ノード: Url

親ノード: CreateLiveChannelResult

UrlStringLiveChannelにストリームを取り込むために使用されるURL。

子ノード: なし

親ノード: PublishUrls

説明
  • ストリームの取り込みに使用されるURLは署名されていません。 バケットのアクセス制御リスト (ACL) がパブリック読み書きではない場合、URLを使用してバケットにアクセスする前に、URLに署名を追加する必要があります。
  • ストリームの再生に使用されるURLは署名されていません。 バケットのACLが非公開の場合、URLを使用してバケットにアクセスする前に、URLに署名を追加する必要があります。
PlayUrlsContainerLiveChannelに取り込まれたストリームの再生に使用されるURLを格納するコンテナー。

子ノード: Url

親ノード: CreateLiveChannelResult

UrlStringLiveChannelに取り込まれたストリームの再生に使用されるURL。

子ノード: なし

親ノード: PlayUrls

サンプルリクエスト
PUT /test-channel?live HTTP/1.1
日付: 8月24日水2016 11:11:28 GMT
コンテンツ-長さ: 333
ホスト: test-bucket.oss-cn-hangzhou.aliyuncs.com
承認: OSS YJjHKOKWDWINLKXv:hvwOZJRh8toAj3DZvtsuPgf + a ****
<?xml version="1.0" encoding="utf-8"?>
<LiveChannelConfiguration>
    <説明/>
    <Status>enabled</Status>
    <ターゲット>
        <タイプ> HLS</タイプ>
        <FragDuration>2</FragDuration>
        <FragCount>3</FragCount>
    </ターゲット>
    <スナップショット>
        <RoleName>role_for_snapshot</RoleName>
        <DestBucket>snapshotdest</DestBucket>
        <NotifyTopic>snapshotnotify</NotifyTopic>
        <間隔> 1</間隔>
     </スナップショット>
</LiveChannelConfiguration> 
HTTP/1.1 200
のサンプル応答
content-length: 259
server: AliyunOSS
x-oss-server-time: 4
接続: 閉じる
x-oss-request-id: 57BD8419B92475920B0002F1
日付: 8月24日水2016 11:11:28 GMT
x-oss-bucket-storage-type: 標準
content-type: application/xml
<?xml version="1.0" encoding="UTF-8"?>
<CreateLiveChannelResult>
  <PublishUrls>
    <Url>rtmp:// test-bucket.oss-cn-hangzhou.aliyuncs.com/live/test-channel</Url>
  </PublishUrls>
  <PlayUrls>
    <Url>http://test-bucket.oss-cn-hangzhou.aliyuncs.com/test-channel/playlist.m3u8</Url>
  </PlayUrls>
</CreateLiveChannelResult>