リアルタイムストリーミング (RTS) は、高いパケット損失耐性により、エンドツーエンドのレイテンシーを 3~6 秒からミリ秒レベルまで低減します。RTS は、E コマースライブストリーミング、オンライン教育、ライブスポーツ、ライブエンターテイメントに最適です。このトピックでは、RTS のセットアップ手順を一通り説明します。
前提条件
-
インジェストドメイン、ストリーミングドメイン、および有効なが必要です。
説明-
ライブセンターが中国本土以外のリージョンにあり、加速リージョンが[中国本土以外]に設定されている場合、ドメインに ICP 登録は不要です。
-
インジェストドメインとストリーミングドメインが同一のアペックスドメイン配下にある2つのサブドメインである場合、アペックスドメインの ICP 登録のみを取得すれば十分です。
-
基本的な RTS ワークフロー
ステップ 1: ApsaraVideo Live の有効化
ビデオチュートリアル: ライブストリーミングサービスの有効化
-
ApsaraVideo Live コンソールにログインします。
-
今すぐ開始 をクリックします。有効化ページで、課金方法 (トラフィック課金 ) を選択し、次に ApsaraVideo Live サービス契約 チェックボックスを選択します。
-
今すぐ開始 をクリックします。
ステップ 2:アップストリーミングドメインとストリーミングドメインの追加
[RTS] サービスを使用する前に、アップストリーミングドメインとストリーミングドメインを追加する必要があります。
ビデオチュートリアル:ドメイン名の追加
ドメイン名を準備します。
ドメイン名をお持ちでない場合は、Alibaba Cloud ドメイン名で登録してください。
中国本土でサービスを提供する場合は、ドメイン名に対して インターネットコンテンツプロバイダー (ICP) 登録番号 の申請が必要です。
説明ICP 登録を行わずにテストを行う場合は、ライブセンターを 中国本土以外 に選択し、アクセラレーションリージョンを 中国本土以外 に設定してください。
ICP 登録はルートドメインのみに必要です。
左側のナビゲーションウィンドウから ApsaraVideo Live コンソール にログインします。
左側のナビゲーションウィンドウで、アップストリームミングまたはストリーミングのドメイン名管理 をクリックします。ドメイン管理 ページが表示されます。
ドメイン名の追加 をクリックします。
サブドメインを追加するには、登録済みのルートドメインにプレフィックスを追加します。サブドメインは個別の登録を必要としません。取り込みおよびストリーミングのサブドメインを区別できることを確認してください。
ドメイン名のパラメーターを設定します。
重要初めてドメイン名を追加する場合は、所有権の検証 を実行する必要があります。

次へ をクリックします。次のステップで使用するため、生成された CNAME レコードの値を記録してください。

ステップ 3:CNAME レコードの設定
ドメインを Alibaba Cloud から割り当てられた CNAME アドレスに向けます。以下の手順では Alibaba Cloud DNS を使用します。
-
Alibaba Cloud CDN 検証サーバーは中国本土に配置されています。中国本土以外のリージョンのみを対象とした CNAME レコードで地域ベースの DNS 名前解決を設定した場合、検証サーバーは CNAME アドレスを解決できません。CNAME ステータスは 保留中の設定 と表示されます。これは CDN 高速化サービスには影響しません。
-
Alibaba Cloud CDN、Dynamic Route for CDN (DCDN)、ApsaraVideo Live、および ApsaraVideo VOD の CNAME ドメインは、Alibaba Cloud CDN によるスケジューリングと名前解決にのみ使用できます。Alibaba Cloud は、CNAME ドメインを悪用するドメインおよびアカウントを停止する権利を留保します。
-
Alibaba Cloud DNS - 権威ドメイン コンソールにログインします。
-
左側メニューで、権威 DNS 名前解決 を選択します。
-
設定するドメインを見つけ、Actions 列の 解決設定 をクリックします。
-
Add Record をクリックし、次の図のように設定します。

パラメータ
説明
レコードタイプ
あるドメイン名を別のドメイン名に向けるには、[CNAME]を選択します。
ホスト
ドメイン名のプレフィックスを入力します。下の表に、一般的なプレフィックスとドメインの例を示します。
解決ライン
デフォルト値を選択します。
レコード値
レコードの CNAME 値を入力します。
TTL
デフォルト値を選択します。
プレフィックス
ドメインの例
説明
demo
demo.aliyundoc.com
サブドメインを解決します。
@
aliyundoc.com
エイペックスドメインを解決します。
*
*.aliyundoc.com
ワイルドカードドメインを解決します。
-
確認 をクリックして、CNAME 設定を完了します。
CNAME 伝播の検証
-
方法 1: CNAME レコードの追加 ページで、CNAME 設定ガイド をクリックします。 [CNAME の検証] セクションで、CNAME ステータスの検証 をクリックして、CNAME 設定が有効になっているかどうかを確認します。
-
方法 2: nslookup -type=cname yourdomain.com コマンドを実行します。返された解決結果が ApsaraVideo Live コンソールのドメインの CNAME 値と一致する場合、CNAME レコードは有効です。
C:\Users\xxx>nslookup -type=cname xxx Server: xxx Address: xxx Non-authoritative answer: xxx canonical name = cxxx.cdngslb.com C:\Users\xxx>
SSL 証明書の設定 (オプション)
ブラウザでライブストリームを再生するには、インジェストドメインとストリーミングドメインに SSL 証明書を設定します。詳細については、「HTTPS 経由でのセキュアなストリーミングを有効化」をご参照ください。
ステップ 4:インジェストドメインとストリーミングドメインの関連付け
[RTS] を使用するには、インジェストドメインとストリーミングドメインを関連付ける必要があります。
ビデオチュートリアル:インジェストドメインとストリーミングドメインの関連付け。
左側のナビゲーションウィンドウで、アップストリームミングまたはストリーミングのドメイン名管理 をクリックします。追加したストリーミングドメインを見つけ、ドメイン設定 をクリックします(アクション 列)。
アップストリーミング情報 タブをクリックします。
アップストリーミング情報の追加 をクリックするか、アップストリーミングドメイン の横にある編集アイコンをクリックし、関連付けるアップストリーミングドメインを選択します。

ステップ 5:リアルタイムストリーミング (RTS) の有効化
-
ApsaraVideo Live コンソールにログインします。
-
左側のナビゲーションペインで、ライブストリーム + > RTS を選択します。
-
RTS を有効にするストリーミングドメインを選択します。
-
RTS スイッチをオンにし、サブ秒遅延 (エンドツーエンドの遅延は 400 ms ~ 800 ms) または 半秒遅延 (エンドツーエンドの遅延は 200 ms ~ 400 ms) を選択します。
[ライブストリーミング URL を高速生成] をクリックして、ARTC プロトコルのインジェスト URL および再生 URL を生成します。SSL 証明書が設定されており、
Access-Control-Allow-Originレスポンスヘッダーが正しく設定されていることを確認してください。
サブ秒レイテンシー
-
機能:400~800 ms のエンドツーエンドレイテンシー。標準ライブストリーミングおよびその他のインジェスト・再生プロトコルと互換性があります。
-
対応プロトコル:インジェストと再生に ARTC (WebRTC ベース) を使用します。標準ライブストリーミングとの前方互換性:RTMP インジェスト、オリジンプル、RTMP/FLV/HLS 再生をサポートします。
-
インジェストおよび再生ツール:最も一般的なツールと互換性があります。推奨:Alibaba Cloud Live Ingest SDK と Alibaba Cloud Live Player SDK。
-
その他の注意:ストリームに B フレームまたは Opus 以外のオーディオが含まれている場合、システムは H5 再生のために自動的に B フレームを削除し、オーディオを Opus にトランスコーディングするため、ライブトランスコーディング料金が発生します。
Alibaba Cloud Web SDK 再生:ネイティブ WebRTC は B フレームをサポートせず、Opus オーディオを使用します。システムはインジェストされたコンテンツに基づいて自動的にトランスコーディングをトリガーします:
-
ストリームに B フレームと AAC エンコードされたオーディオが含まれている場合、ビデオトランスコーディングで B フレームが削除され、オーディオトランスコーディングで AAC が Opus に変換されます。ソースの解像度に基づいて標準ビデオトランスコーディング料金が課金されます。
-
ストリームに B フレームが含まれていないが、AAC オーディオを使用している場合、オーディオトランスコーディングで AAC が Opus に変換されます。オーディオのみのトランスコーディングに対して課金されます。
-
ライブトランスコーディングテンプレートも設定している場合、テンプレートに加えて B フレームの削除と Opus へのトランスコーディングが適用されます。結合されたトランスコーディング操作に対して課金されます。
Alibaba Cloud Native SDK 再生:SDK は B フレームと AAC をネイティブにサポートしているため、自動トランスコーディングはトリガーされず、追加料金は発生しません。
-
0.5 秒レイテンシー
-
機能:200~400 ms のエンドツーエンドレイテンシー。可能な限り低いレイテンシーが要求されるシナリオに最適です。
-
対応プロトコル:ARTC (WebRTC ベース) のみ。標準ライブストリーミングとの互換性なし:RTMP インジェスト、オリジンプル、または RTMP/FLV/HLS 再生をサポートしていません。
-
インジェストおよび再生ツール:インジェストには、WHIP プロトコルを使用した OBS または Alibaba Cloud Live Ingest SDK を使用できます。再生には、Alibaba Cloud Player SDK を使用する必要があります。
-
その他の注意:ストリーミングドメインは、トランスコーディングやレコーディングなどのクラウド機能を使用できません。これらの機能を使用するには、再ストリーミング設定を使用して、ストリームを別のストリーミングドメインにプッシュします。
-
ストリームプッシュ設定 をクリックし、リレーされた RTMP ストリームを受信する取り込みドメインを選択します。 選択するドメインは、ストリーミングドメインに関連付けられており、超低遅延半秒モードおよびデュアルストリームディザスタリカバリ機能が無効になっている必要があります。 たとえば、
push.example.comがpull.example.comに関連付けられている場合、標準プロトコルを使用してpull.example.comからストリームをプルし、トランスコーディングとレコーディングを使用できます。
-
-
RTS 設定がネットワーク全体に伝播するまでに数分かかる場合があります。テストを開始する前にお待ちください。
-
1 つのインジェストドメインを複数のストリーミングドメインに関連付けるには、「プライマリストリーミングドメインとサブストリーミングドメインの関連付け」をご参照ください。
-
RTS と標準ライブストリーミングはストリーミングドメインを共有できますが、RTS は UDP を使用し、標準ライブストリーミングは TCP を使用します。RTS 用に別のストリーミングドメインを使用することを推奨します。
ステップ 6:インジェスト URL とストリーミング URL の生成
方法 1:コンソールでの URL 生成
RTS を有効にした後、インジェスト・再生体験ツールで ライブストリーミング URL の高速生成 をクリックします。AppName と StreamName を入力して、ARTC プロトコル経由の RTS インジェスト URL とストリーミング URL を生成します。
[ストリーミングドメイン] を選択し、[関連付けられたインジェストドメイン] を確認し、[リアルタイムストリーミング (RTS)] を有効にして、レイテンシーモードを選択します:[サブセカンドレイテンシー] (400~800 ms、RTMP/ARTC インジェストと HLS/FLV/RTMP/ARTC 再生をサポート) または [ハーフセカンドレイテンシー] (200~400 ms、ARTC のみ)。使用前に SSL 証明書とAccess-Control-Allow-Origin レスポンスヘッダーを設定してください。
方法 2:手動による URL の組み立て
URL を手動で組み立てるには、次の情報を用意します:インジェストドメイン、ストリーミングドメイン、AppName、StreamName、トランスコードテンプレート id (該当する場合)、および認証文字列 (該当する場合)。
|
URL タイプ |
URL 形式 |
組み立てルール |
|
インジェスト URL |
RTMP、RTS、および SRT をサポートします。インジェストには RTMP の使用を推奨します。例: RTMP: 説明
[RTS] では、RTS 形式の URL を使用してストリームをプッシュできます。 |
インジェストドメイン + AppName + StreamName + 認証文字列 |
|
ストリーミング URL |
RTMP、FLV、M3U8、および RTS をサポートします。再生には RTS の使用を推奨します。例: RTS: |
ストリーミングドメイン + AppName + StreamName + 認証文字列 |
|
トランスコードストリーム URL 説明
トランスコードテンプレートを使用する場合、この形式を使用してストリーミング URL を組み立てる必要があります。 |
RTMP、FLV、M3U8、および RTS をサポートします。再生には RTS の使用を推奨します。例: RTS: |
ストリーミングドメイン + AppName + StreamName + "_" + トランスコードテンプレート id + 認証文字列 |
-
インジェストドメインとストリーミングドメインが関連付けられている場合、AppName と StreamName が両方で同じであれば、ストリームのインジェストと再生が可能です。
-
トランスコードストリーム URL にはトランスコードテンプレートが必要です。テンプレート ID はコンソールで確認できます。詳細については、「ライブストリームトランスコーディング」をご参照ください。
-
認証文字列 (auth_key) は MD5 認証アルゴリズムによって生成されます。URL 認証を有効にする必要があります。詳細については、「認証されたURLのコンポーネント」をご参照ください。
-
{transcoding_template_id} または {authentication_string} を実際のデータに置き換えて、最終的な URL から波括弧 {} を省略してください。
ステップ 7:RTS ストリームのインジェストと再生
コンソールの RTS を体験する ツールを使用して、インジェストと再生をテストします。カメラからのインジェストまたは画面共有のいずれかを選択し、対応するボタンをクリックして開始します。
コンソールの体験ツールではプロキシシグナリングドメインが使用されます。Web SDK を直接統合する場合は、ご使用の各ドメインに SSL 証明書と Access-Control-Allow-Origin レスポンスヘッダーを設定してください。
Alibaba Cloud RTS では、モバイルおよび Web 向けのデモも提供しています。
以下の SDK を統合することもできます。
|
SDK タイプ |
リファレンス |
|
モバイル |
|
|
Web |
再生エラーが発生した場合は、セルフサービストラブルシューティングツールで診断を実行してください。
SSL 証明書の設定 (オプション)
ブラウザで RTS 再生を有効にするには、インジェストドメインとストリーミングドメインに SSL 証明書を設定します。詳細については、「HTTPS によるセキュアなストリーミングの有効化」をご参照ください。
RTS SDK またはデモを使用する場合、SSL 証明書はオプションです。
カスタム URL 認証の設定 (オプション)
URL 認証は、不正アクセスからコンテンツを保護し、新しいドメインではデフォルトで有効になっています。
デフォルト設定では、追加の設定は不要です。カスタマイズするには、プライマリキー、セカンダリキー、および 有効期間 を設定します。
ビデオチュートリアル: 「URL 認証の設定」。
-
左側のナビゲーションペインで アップストリームミングまたはストリーミングのドメイン名管理 を選択し、RTS が有効になっているストリーミングドメインの [操作] 列にある ドメイン設定 をクリックします。
-
を選択して、アクセス制御 ページに移動します。
-
URL 署名 タブをクリックし、次に 設定の変更 をクリックします。
説明URL 認証がすでに有効になっている場合は、設定の変更 をクリックして認証設定を構成します。無効だった場合は、URL 署名 スイッチをオンにして設定を構成します。
-
URL 認証情報を設定します。パラメーターについては、次の表で説明します。
パラメータ
説明
[認証タイプ]
ApsaraVideo Live ストリーミングドメインは、オリジンリソースを効果的に保護するため、タイプ A 認証のみをサポートします。
注
URL 認証が失敗すると、403 エラーが返されます。この場合は、URL を再計算してください。
-
MD5 計算エラー
例:
X-Tengine-Error:denied by req auth: invalid md5hash=de7bfdc915ced05e17380a149bd760be -
タイムスタンプエラー
例:
X-Tengine-Error:denied by req auth: expired timestamp=1439469547
[プライマリキー]
ドメインを追加すると、コンソールによってプライマリキーが生成されます。このキーは、ドメイン でドメインを選択し、ドメイン設定 をクリックして、 を選択すると表示できます。カスタムプライマリキーを設定することもできます。
[セカンダリキー]
認証方法のカスタムセカンダリキーを入力してください。
[有効期間]
有効期間は、認証された URL でセッションを開始できる期間を指定します。アクティブなセッションは有効期限後も継続しますが、有効期限が切れた URL での新しいリクエストは失敗します。
デフォルト: 1,440 分 (1 日)。最小値: 1 分。
-
その他の操作:RTS レイテンシーの検証
タイムシンクロナイザー URL をストリームに追加し、ストリームの時刻を標準時刻ソースと比較して [RTS] のレイテンシーを検証します。次の例では OBS ストリーミングツールを使用します。
OBS の [ソース] に、タイムシンクロナイザー URL をブラウザソースとして追加し、[配信開始] をクリックします。