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

ApsaraVideo Live:共同ストリーミングのURL

最終更新日:Sep 27, 2024

このトピックでは、コストリーミングシナリオでのストリーマとコストリーマの取り込みURLとストリーミングURL、戦闘シナリオでのさまざまなストリーマの取り込みURLとストリーミングURL、および視聴者のCDNストリーミングURLの連結ルールについて説明します。

前提条件

重要

コストリーミングまたは戦闘中、同じ部屋または異なる部屋のストリーマーおよびコストリーマーのIDを含むユーザーIDは同じではありません。 さもなければ、衝突が起こるかもしれない。 たとえば、ルームAのストリーマー (ルームID: A、ストリーマーID: 111、および共同ストリーマーID: 222) は、ルームBのストリーマー (ルームID: B、ストリーマーID: 222、および共同ストリーマーID: 333) と共起または戦闘を開始できません。なぜなら、部屋AのコストリーマのIDは部屋BのストリーマのIDと同じだからです。

コストリーミングシナリオでのストリーマとコストリーマのURLの取り込みとストリーミング

コストリーミングシナリオでストリーマーとコストリーマーの取り込みURLとストリーミングURLを作成する前に、次の表に示すフィールドを取得します。

項目

説明

artc://

URLのプレフィックス。 このフィールドは変更しないでください。

live.aliyun.com

URLの固定フィールド。 このフィールドは変更しないでください。

説明

live.aliyun.comは実際のドメイン名ではありません。 ping、traceroute、telentなどのドメイン関連の操作は実行しないでください。

プッシュ

ストリームの取り込みを識別する固定フィールド。 このフィールドは変更しないでください。

プレイ

ストリームのプルを識別する固定フィールド。 このフィールドは変更しないでください。

roomId

カスタムルームID。 ストリーマーと共同ストリーマーは同じルームIDを使用する必要があります。

IDの長さは最大64文字で、数字、文字、ハイフン (-) 、アンダースコア (_) 、および等号 (=) を使用できます。

sdkAppId

ARTCアプリケーションのID。 IDは、ApsaraVideo LiveコンソールでARTCアプリケーションを作成すると自動的に生成されます。 詳細については、「ストリームミキシングの設定」をご参照ください。

userId

ユーザー ID。 ストリーマーについては、ストリーマーのIDである。 コストリーマの場合、それはコストリーマのIDである。 部屋のストリーマーと共同ストリーマーのIDが同じでないことを確認してください。

IDの長さは最大64文字で、数字、文字、ハイフン (-) 、アンダースコア (_) 、および等号 (=) を使用できます。

timestamp

URLが期限切れになるまでのタイムスタンプ (秒単位) 。 タイムスタンプは、コストリーミングが開始されてから24時間を超えることはできません。

token

roomId、timestamp、userId、sdkAppId、およびAppKeyに基づいて生成されるトークン。 詳細については、「トークンベースの認証」をご参照ください。

仮定:

  • roomIdの値は123です。

  • sdkAppIdの値は、d14baa88-****-4111-b5b0-3b2f60d2ef8 0です。

  • ストリーマIDは518です。

  • コストリーマIDは520です。

  • timestampの値は1659583716です。

  • トークンの値は2035650c0f7 **** a53998です。

次の表に、連結ルールを使用して構築されるURLの例を示します。

説明

${} の内容を実際の値に置き換えます。

URLタイプ

連結ルール

ストリーマ

取り込みURL

artc://live.aliyun.com/push/${Room ID}?sdkAppId=${ARTC application ID}&userId=${Streamer ID}&timestamp=${Expiration timestamp}&token=${Token}

RTCによるストリーム取り込みがサポートされています。

RTCに基づく取り込みURL: artc://live.aliyun.com/push/123?sdkAppId=d14baa88-****-4111-b5b0-3b2f60d2ef80&userId=518&timestamp=1659583716&token=2035650c0f7****a53998

ストリーミングURL

artc://live.aliyun.com/play/${Room ID}?sdkAppId=${ARTC application ID}&userId=${Streamer ID}&timestamp=${Expiration timestamp}&token=${Token}

RTC上のストリームプルがサポートされています。

RTCに基づくストリーミングURL: artc://live.aliyun.com/play/123?sdkAppId=d14baa88-****-4111-b5b0-3b2f60d2ef80&userId=518&timestamp=1659583716&token=2035650c0f7****a53998

コーストリーマ

取り込みURL

artc://live.aliyun.com/push/${Room ID}?sdkAppId=${ARTC application ID}&userId=${Co-streamer ID}&timestamp=${Expiration timestamp}&token=${Token}

RTCによるストリーム取り込みがサポートされています。

RTCに基づく取り込みURL: artc://live.aliyun.com/push/123?sdkAppId=d14baa88-****-4111-b5b0-3b2f60d2ef80&userId=520&timestamp=1659583716&token=2035650c0f7****a53998

ストリーミングURL

artc://live.aliyun.com/play/${Room ID}?sdkAppId=${ARTC application ID}&userId=${Co-streamer ID}&timestamp=${Expiration timestamp}&token=${Token}

RTC上のストリームプルがサポートされています。

RTCに基づくストリーミングURL: artc://live.aliyun.com/play/123?sdkAppId=d14baa88-****-4111-b5b0-3b2f60d2ef80&userId=520&timestamp=1659583716&token=2035650c0f7****a53998

戦闘シナリオでのさまざまなストリーマーのURLの取り込みとストリーミング

バトルでStreamer AとStreamer Bの取り込みURLとストリーミングURLを作成する前に、次の表に示すフィールドを取得します。

項目

説明

artc://

URLのプレフィックス。 このフィールドは変更しないでください。

live.aliyun.com

URLの固定フィールド。 このフィールドは変更しないでください。

プッシュ

ストリームの取り込みを識別する固定フィールド。 このフィールドは変更しないでください。

プレイ

ストリームのプルを識別する固定フィールド。 このフィールドは変更しないでください。

roomId

カスタムルームID。 バトルに参加するストリーマーは、異なるルームIDを使用する必要があります。

IDの長さは最大64文字で、数字、文字、ハイフン (-) 、アンダースコア (_) 、および等号 (=) を使用できます。

sdkAppId

ARTCアプリケーションのID。 IDは、ApsaraVideo LiveコンソールでARTCアプリケーションを作成すると自動的に生成されます。 詳細については、「ストリームミキシングの設定」をご参照ください。

userId

カスタムストリーマID。 バトルに参加するストリーマーは、異なるストリーマーIDを使用する必要があります。

IDの長さは最大64文字で、数字、文字、ハイフン (-) 、アンダースコア (_) 、および等号 (=) を使用できます。

timestamp

URLが期限切れになるまでのタイムスタンプ (秒単位) 。 タイムスタンプは、バトル開始から24時間を超えることはできません。

token

roomId、timestamp、userId、sdkAppId、およびAppKeyに基づいて生成されるトークン。 詳細については、「トークンベースの認証」をご参照ください。

仮定:

  • ストリーマAの部屋IDは111である。

  • ストリーマBの部屋IDは222です。

  • sdkAppIdの値は、d14baa88-****-4111-b5b0-3b2f60d2ef8 0です。

  • ストリーマAのIDは125である。

  • ストリーマBのIDは396である。

  • timestampの値は1659583716です。

  • トークンの値は2035650c0f7 **** a53998です。

次の表に、連結ルールを使用して構築されるURLの例を示します。

説明

${} の内容を実際の値に置き換えます。

URLタイプ

連結ルール

ストリーマーA

取り込みURL

artc://live.aliyun.com/push/${Room ID of Streamer A}?sdkAppId=${ARTC application ID}&userId=${ID of Streamer A}&timestamp=${Expiration timestamp}&token=${Token}

RTCによるストリーム取り込みがサポートされています。

RTCに基づく取り込みURL: artc://live.aliyun.com/push/111?sdkAppId=d14baa88-****-4111-b5b0-3b2f60d2ef80&userId=125&timestamp=1659583716&token=2035650c0f7****a53998

ストリーミングURL

artc://live.aliyun.com/play/${Room ID of Streamer A}?sdkAppId=${ARTC application ID}&userId=${ID of Streamer A}&timestamp=${Expiration timestamp}&token=${Token}

RTC上のストリームプルがサポートされています。

RTCに基づくストリーミングURL: artc://live.aliyun.com/play/111?sdkAppId=d14baa88-****-4111-b5b0-3b2f60d2ef80&userId=125&timestamp=1659583716&token=2035650c0f7****a53998

ストリーマB

取り込みURL

artc://live.aliyun.com/push/${Room ID of Streamer B}?sdkAppId=${ARTC application ID}&userId=${ID of Streamer B}&timestamp=${Expiration timestamp}&token=${Token}

RTCによるストリーム取り込みがサポートされています。

RTCに基づく取り込みURL: artc://live.aliyun.com/push/222?sdkAppId=d14baa88-****-4111-b5b0-3b2f60d2ef80&userId=396&timestamp=1659583716&token=2035650c0f7****a53998

ストリーミングURL

artc://live.aliyun.com/play/${Room ID of Streamer B}?sdkAppId=${ARTC application ID}&userId=${ID of Streamer B}&timestamp=${Expiration timestamp}&token=${Token}

RTC上のストリームプルがサポートされています。

RTCに基づくストリーミングURL: artc://live.aliyun.com/play/222?sdkAppId=d14baa88-****-4111-b5b0-3b2f60d2ef80&userId=396&timestamp=1659583716&token=2035650c0f7****a53998

視聴者のCDNストリーミングURL

説明

視聴者のCDNストリーミングURLは、ストリーマーが存在する部屋のCDNストリーミングURLです。 異なる部屋には異なるCDNストリーミングURLがあります。 視聴者のCDNストリーミングURLを作成するときは、視聴者のルームIDと同じルームのストリーマーIDを使用します。

戦闘シナリオでは、ストリーマーの異なる部屋の視聴者は、再生のために対応する部屋のCDNストリーミングURLを使用する必要があります。 ストリーマーAが別のストリーマーとのバトルを開始すると、ビューアCはストリーマーAの部屋のCDNストリーミングURLを使用してバトルを視聴します。

ビューアのCDNストリーミングURLを作成する前に、次の表に示すフィールドを取得します。

項目

説明

プロトコルプレフィックス

Real-Time Messaging Protocol (RTMP) 、Flash Video (FLV) 、M3U8、およびReal-Time Streaming (RTS) 形式のURLがサポートされています。 対応するプロトコルプレフィックスは、rtmp://http://http://artc:// です。

ストリーミングドメイン

ストリーミングドメイン。 ApsaraVideo LiveコンソールでARTCアプリケーションのストリーミングドメインを設定する方法については、「ストリームミキシングの設定」をご参照ください。

AppName

コストリーミングに使用されるアプリケーションのカスタム名。 名前は最大255文字で、数字、文字、ハイフン (-) 、アンダースコア (_) 、および等号 (=) を使用できます。

StreamId

取り込みURLの複数のフィールドに基づいてStreamIdを作成します。 連結ルール:

  • ビデオストリームの場合、StreamIdの値は ${ARTCアプリケーションID }_${ Room ID }_${ Streamer ID}_cameraです。

  • オーディオのみのストリームの場合、StreamIdの値は ${ARTC application ID }_${ Room ID }_${ Streamer ID}_audioです。

auth_key

説明

このフィールドは、URL署名が有効な場合にのみ必要です。

アクセストークンは、URL署名アルゴリズムに基づいて生成される暗号化された文字列です。 アクセストークンを生成する前に、URL署名を有効にする必要があります。 ApsaraVideo LiveコンソールでURL署名機能を有効にし、アクセストークンを取得できます。 詳細については、「URL署名の設定」をご参照ください。 MD5アルゴリズムを使用してアクセストークンを生成することもできます。 詳細については、「署名付きURLの作成」をご参照ください。

説明

StreamIdフィールドの最後の部分は、入力ストリームのタイプを指定します。

  • カメラ: カメラによってキャプチャされたビデオストリーム。

  • shareScreen: 画面共有のビデオストリーム。

  • audio: マイクによってキャプチャされたオーディオストリーム。

ARTCアプリケーションIDがd14baa88-****-4111-b5b0-3b2f60d2ef8 0の場合、ルームIDは123で、ストリーマーIDは518です。

  • ビデオストリームの場合、StreamIdの値はd14baa88-****-4111-b5b0-3b2f60d2ef80_123_518_cameraです。

  • オーディオのみのストリームの場合、StreamIdの値はd14baa88-****-4111-b5b0-3b2f60d2ef80_123_518_audioです。

ストリーミングドメインがexample.alivecdn.comで、auth_keyの値が16632272 **** fd016c6d85fの場合:

  • ビデオストリームの場合、StreamIdの値はd14baa88-****-4111-b5b0-3b2f60d2ef80_123_518_cameraです。

  • オーディオのみのストリームの場合、StreamIdの値はd14baa88-****-4111-b5b0-3b2f60d2ef80_123_518_audioです。

次の表に、連結ルールを使用して構築されるURLの例を示します。

説明
  • 再生にはHTTP-FLV形式のURLを使用することを推奨します。

    RTMPフォーマットのURLとHTTP-FLVフォーマットのURLは、同じデータコンテンツを含むが、異なるチャネルを使用する。 HTTPは、インターネットを介して情報を送信するための主要なプロトコルである。 Alibaba Cloud CDN、インターネットサービスプロバイダー (ISP) 、仲介デバイス間の接続など、HTTPプロトコルを介した接続は高度に最適化されています。 HTTPプロトコルのデフォルトポートは80で、HTTPSプロトコルのデフォルトポートは443です。 ほとんどの場合、ポートはホワイトリストに追加され、無効にすることはできません。 RTMPは古いプロトコルであり、デフォルトポートとして1935を使用します。 ポート1935は、ファイアウォールによって無効にすることができる。 これにより、エラーが発生する可能性があります。 RTMPと比較して、HTTP-FLVはより安定しており、より良いパフォーマンスを提供します。 例えば、HTTP-FLV上のビデオ再生は、RTMPよりも低いスタッターレート及び低いレイテンシを有します。

  • ${} の内容を実際の値に置き換えます。

URLタイプ

連結ルール

CDNストリーミングURL

ストリーミングURL

  • RTMP format: rtmp://${Streaming domain}/live/${StreamId}?auth_key=${Token}

  • FLV format: http://${Streaming domain}/live/${StreamId}.flv?auth_key=${Token}

  • M3U8 format: http://${Streaming domain}/live/${StreamId}.m3u8?auth_key=${Token}

  • RTS format: artc://${Streaming domain}/live/${StreamId}?auth_key=${Token}

ストリーミングURLは、RTMP、FLV、M3U8、およびRTS形式をサポートします。

  • ビデオストリームの場合:

    • RTMP形式: rtmp://example.alivecdn.com/live/d14baa88-****-4111-b5b0-3b2f60d2ef80_123_518_camera?auth_key=16632272****fd016c6d85f

    • FLV形式: http://example.alivecdn.com/live/d14baa88- ****-4111-b5b0-3b2f60d2ef80_123_518_camera.flv?auth_key=16632272 **** fd016c6d85f

    • M3U8形式: http://example.alivecdn.com/live/d14baa88- ****-4111-b5b0-3b2f60d2ef80_123_518_camera.m3u8?auth_key=16632272 **** fd016c6d85f

    • RTS形式: artc://example.alivecdn.com/live/d14baa88-****-4111-b5b0-3b2f60d2ef80_123_518_camera?auth_key=16632272****fd016c6d85f

  • オーディオのみのストリームの場合:

    • RTMP形式: rtmp://example.alivecdn.com/live/d14baa88-****-4111-b5b0-3b2f60d2ef80_123_518_audio?auth_key=16632272****fd016c6d85f

    • FLV形式: http://example.alivecdn.com/live/d14baa88- ****-4111-b5b0-3b2f60d2ef80_123_518_audio.flv?auth_key=16632272 **** fd016c6d85f

    • M3U8形式: http://example.alivecdn.com/live/d14baa88- ****-4111-b5b0-3b2f60d2ef80_123_518_audio.m3u8?auth_key=16632272 **** fd016c6d85f

    • RTS形式: artc:// example.alivecdn.com/live/d14baa88-****-4111-b5b0-3b2f60d2ef80_123_518_audio?auth_key=16632272****fd016c6d85f