ApsaraVideo Live は、標準的なライブストリーミングの遅延を 3~6 秒からミリ秒レベルまで短縮するリアルタイムストリーミング (RTS) を提供します。また、パケット損失に対する耐性も向上します。RTS は、E コマースのライブストリーミング、オンライン教育、スポーツ中継、ライブショーなど、低遅延と高度なインタラクションが求められるシナリオに適しています。このトピックでは、RTS を迅速に実装する方法について説明します。
前提条件
必要なインターネットコンテンツプロバイダー (ICP) 登録を完了したアップストリーミングドメインとストリーミングドメインを所有していること。詳細については、をご参照ください。
説明ライブセンターが中国本土以外にあり、アクセラレーションリージョンが 中国本土以外 に設定されている場合、ドメイン名の ICP 登録は不要です。
アップストリーミングドメインとストリーミングドメインが同じプライマリドメイン名傘下の第 2 レベルドメインである場合、プライマリドメイン名の ICP 登録を申請するだけで済みます。
RTS の基本的なワークフロー
ステップ 1:ApsaraVideo Live の有効化
ビデオチュートリアルで ApsaraVideo Live を有効化する方法を学ぶことができます。詳細については、「ApsaraVideo Live の有効化」をご参照ください。
ApsaraVideo Live コンソールにログインします。
[今すぐ有効化] をクリックして、有効化ページを開きます。 課金方法として [トラフィック課金] を選択し、次に [ApsaraVideo Live 利用規約] チェックボックスを選択します。
[今すぐ有効化] をクリックします。
ステップ 2:アップストリーミングドメインとストリーミングドメインの追加
RTS サービスを使用する前に、アップストリーミングドメインとストリーミングドメインを追加する必要があります。
ビデオチュートリアルでドメイン名の追加方法を学ぶことができます。詳細については、「ドメイン名の追加」をご参照ください。
ドメイン名を準備します。
ドメイン名をお持ちでない場合は、「Alibaba Cloud ドメイン名の登録方法」を参照して、Alibaba Cloud ドメイン名プラットフォームでドメイン名を登録してください。
ドメイン名の登録後、必要に応じて ICP 登録を申請します。詳細については、「ICP 登録プロセス」をご参照ください。
説明ApsaraVideo Live の基本機能をすぐにテストするには、中国本土以外のリージョンでライブセンターを選択し、アクセラレーションリージョンを中国本土以外に設定できます。この場合、ドメイン名に ICP 登録は不要です。
アップストリーミングドメインとストリーミングドメインが同じプライマリドメイン名傘下の 2 つの第 2 レベルドメインである場合、プライマリドメイン名の ICP 登録を申請するだけで済みます。
ApsaraVideo Live コンソールにログインします。
左側のナビゲーションウィンドウで、[ドメイン] をクリックします。ドメイン管理 ページが表示されます。
ドメイン名の追加 をクリックします。
説明サブドメインを追加するには、登録済みのドメイン名にプレフィックスを追加します。サブドメインを別途登録する必要はありません。アップストリーミングドメインとストリーミングドメインを区別するようにしてください。
ドメイン名のパラメーターを設定します。
重要初めて ApsaraVideo Live に新しいドメイン名を追加する場合、ドメイン名の所有権を検証する必要があります。詳細については、「ドメイン名の所有権の検証」をご参照ください。

次のステップのために、生成された CNAME レコード値をメモしておきます。

ステップ 3:CNAME レコードの設定
ApsaraVideo Live アクセラレーションサービスを有効にするには、ドメイン名を ApsaraVideo Live によって割り当てられた CNAME アドレスに向ける必要があります。以下の手順では、Alibaba Cloud DNS を例として使用します。
Alibaba Cloud CDN がドメイン名の DNS レコードを検証するために使用するサーバーは、中国本土にデプロイされています。 たとえば、ドメイン名の DNS レコードをリージョン別に設定し、中国本土以外のリージョン (香港 (中国) 、マカオ (中国) 、台湾 (中国) など) に対してのみ Alibaba Cloud CDN の CNAME ドメイン名を設定した場合、検証サーバーは CNAME ドメイン名を解決できません。 この場合、CDN コンソールでは、ドメイン名の CNAME ステータスが [設定が必要] と表示されます。 これは CDN アクセラレーションサービスに影響を与えません。
Alibaba Cloud 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
ワイルドカード DNS を有効にします。
[確定] をクリックして CNAME の構成を完了します。
CNAME レコードが有効であることの確認
方法 1: CNAME レコードの追加 ページで、CNAME 設定ガイド をクリックします。CNAME 検証セクションで、CNAME ステータスの検証 をクリックして CNAME 設定が有効になっているかどうかを確認します。

方法 2:nslookup -type=cname yourdomain.com コマンドを実行します。結果が ApsaraVideo Live コンソールのドメインの CNAME 値と一致する場合、CNAME 設定は有効です。

SSL 証明書の設定 (任意)
ブラウザでライブストリームを再生したい場合は、アップストリーミングおよび再生ドメイン名に SSL 証明書を設定する必要があります。これはブラウザのセキュリティ要件です。詳細については、「HTTPS セキュアアクセラレーションの設定」をご参照ください。
ステップ 4:アップストリーミングドメインとストリーミングドメインの関連付け
RTS を使用するには、アップストリーミングドメインをストリーミングドメインに関連付ける必要があります。
ビデオチュートリアルでアップストリーミングドメインとストリーミングドメインを関連付ける方法を学ぶことができます。詳細については、「アップストリーミングドメインとストリーミングドメインの関連付け」をご参照ください。
左側のナビゲーションウィンドウで、アップストリームミングまたはストリーミングのドメイン名管理 をクリックします。追加した ストリーミングドメイン を選択し、アクション 列の ドメイン設定 をクリックします。リダイレクトされ、 ページが表示されます。
アップストリーミング情報 タブをクリックします。
アップストリーミング情報の追加 または アップストリーミングドメイン の横にある編集アイコンをクリックし、関連付けるアップストリーミングドメインを選択します。

ステップ 5:RTS 機能の有効化
ApsaraVideo Live コンソールにログインします。
左側のナビゲーションウィンドウで、ライブストリーム + > RTS を選択します。
RTS を有効にするストリーミングドメインを選択します。
RTS スイッチをオンにし、サブ秒遅延 (エンドツーエンドの遅延は 400 ms ~ 800 ms) または 半秒遅延 (エンドツーエンドの遅延は 200 ms ~ 400 ms) を選択します。

サブセカンド遅延
特徴: このオプションは、400 ms から 800 ms のエンドツーエンド遅延と高い互換性を提供します。標準ライブストリーミングや他のアップストリーミングおよび再生プロトコルとの互換性が求められる低遅延ライブストリーミングシナリオに適しています。
サポートされるプロトコル:Web Real-Time Communication (WebRTC) に基づく Alibaba Real-Time Communication (ARTC) プロトコルでのアップストリーミングと再生をサポートします。このオプションは標準ライブストリーミングと上位互換であり、RTMP アップストリーミングプロトコル、オリジンフェッチ、および RTMP、FLV、HLS などの一般的な再生プロトコルをサポートします。
アップストリーミングおよび再生ツール:一般的なアップストリーミングおよび再生ツールをサポートします。ApsaraVideo Live Push SDK と ApsaraVideo Player SDK の使用を推奨します。
追加情報:アップストリーミングされたストリームに B フレームが含まれているか、音声が Opus でエンコードされていない場合、バックエンドは自動的に B フレームを削除し、HTML5 再生のために音声を 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 をサポートします。そのため、自動トランスコーディングはトリガーされず、追加料金は発生しません。
ハーフセカンド遅延
特徴:このオプションは、200 ms から 400 ms のエンドツーエンド遅延を提供します。極めて低い遅延が求められるライブストリーミングシナリオに適しています。
サポートされるプロトコル:WebRTC に基づく ARTC プロトコルでのアップストリーミングと再生をサポートします。このオプションは標準ライブストリーミングと互換性がなく、RTMP アップストリーミングプロトコル、オリジンフェッチ、または RTMP、FLV、HLS などの一般的な再生プロトコルをサポートしません。
アップストリーミングおよび再生ツール:アップストリーミングには、OBS での WHIP プロトコルまたは ApsaraVideo Live Push SDK を使用できます。再生には、ApsaraVideo Player SDK を使用する必要があります。
その他の注意点:このストリーミングドメインは、トランスコーディングや録画などのクラウド機能をサポートしません。ただし、リレー設定を使用して、ライブストリームを別のストリーミングドメインにリレーすることができます。
ストリームプッシュ設定 をクリックし、ストリーミングドメインに関連付けられ、0.5 秒 RTS モードまたはデュアルストリームディザスタリカバリが有効になっていないアップストリーミングドメインを選択します。このドメインは、リレーされた 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 を生成します。

方法 2:手動での URL 構築
アップストリーミングおよびストリーミング URL を手動で構築する場合、ライブストリームがトランスコーディングされるか、URL 署名が有効になっているかを判断する必要があります。また、アップストリーミングドメイン、ストリーミングドメイン、AppName、StreamName、トランスコーディングテンプレート ID (該当する場合)、およびアクセストークン (該当する場合) が必要です。以下の表は、URL の構築ルールを説明しています。
アドレスクラス | アドレスフォーマット | 構築ルール |
アップストリーミング URL | RTMP、RTS、SRT プロトコルがサポートされています。アップストリーミングには RTMP URL を使用します。例: RTMP: 説明 RTS は、RTS フォーマットのアドレスでのストリームフェッチングをサポートしています。 | アップストリーミングドメイン + AppName + StreamName + アクセストークン |
ストリーミング URL | RTMP、FLV、M3U8、RTS プロトコルがサポートされています。再生には RTS URL を使用します。例: RTS: | ストリーミングドメイン + AppName + StreamName + アクセストークン |
トランスコーディング後のストリーム URL 説明 トランスコーディング後のストリーム URL は、トランスコーディングテンプレートを設定した場合にのみ生成されます。トランスコーディング後のストリームを使用する場合、ストリーミング URL をトランスコーディング後のストリーム URL 形式で構築する必要があります。 | RTMP、FLV、M3U8、RTS プロトコルがサポートされています。再生には RTS URL を使用します。例: RTS: | ストリーミングドメイン + AppName + StreamName_トランスコーディングテンプレート ID + アクセストークン |
関連付けられたアップストリーミングドメインとストリーミングドメインでは、両方の AppName と StreamName が同じであれば、アップストリーミングと再生を開始できます。
トランスコーディング後のストリーム URL は、トランスコーディングテンプレートを設定した後にのみ生成されます。トランスコーディングテンプレート ID はコンソールで確認できます。詳細については、「ライブストリームトランスコーディング」をご参照ください。
アクセストークン (auth_key) は、署名アルゴリズムによって生成される暗号化された文字列です。これには URL 署名機能が有効になっている必要があります。MD5 アルゴリズムを使用してアクセストークンを計算できます。詳細については、「署名付き URL のコンポーネント」をご参照ください。
URL を手動で構築する場合、{transcoding_template_ID} または {access_token} を実際のデータに置き換えてください。波括弧 {} は含めないでください。
ステップ 7:RTS のアップストリーミングと再生の開始
RTS を有効にしてアップストリーミング URL とストリーミング URL を生成した後、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 署名を有効にすると、デフォルトの署名メソッドまたはカスタムメソッドを使用できます。デフォルトのメソッドでは構成は不要です。デフォルトの構成を使用しない場合は、プライマリキー、セカンダリキー、有効期間 をカスタマイズし、元の URL を入力できます。
ビデオチュートリアルで URL 署名の設定方法を学ぶことができます。詳細については、「URL 署名の設定」をご参照ください。
左側のナビゲーションウィンドウで、アップストリームミングまたはストリーミングのドメイン名管理 をクリックし、RTS 機能が有効なストリーミングドメインを選択し、[操作] 列の ドメイン設定 をクリックします。
を選択して、アクセス制御 ページを開きます。
URL 署名 タブをクリックし、設定の変更 をクリックします。
説明URL 署名が有効な場合は、設定の変更 をクリックして URL 署名情報を設定します。以前に URL 署名を無効にした場合は、URL 署名 スイッチをオンにして情報を設定します。
URL 署名情報を設定します。以下の表は、設定項目を説明しています。
設定項目
説明
認証タイプ
ApsaraVideo Live ストリーミングドメインは、オリジンリソースを効果的に保護するために署名方法 A のみをサポートします。
注
URL 署名エラーが発生した場合、403 エラーが返されます。署名を再計算してください。
MD5 計算エラー
例:
X-Tengine-Error:denied by req auth: invalid md5hash=de7bfdc915ced05e17380a149bd760beタイムスタンプエラー
例:
X-Tengine-Error:denied by req auth: expired timestamp=1439469547
プライマリキー
ドメイン名を追加すると、コンソールはランダムにプライマリキーを生成します。ApsaraVideo Live コンソールの左側のナビゲーションバーで ドメイン を選択し、設定するドメイン名を選択してから をクリックすると、URL 署名ページでプライマリキーが表示されます。また、認証方式のプライマリキーを変更することもできます。
セカンダリキー
署名方法のカスタムセカンダリキーを入力します。
有効期間
署名付き URL は、その有効期間内にのみアップストリーミングまたは再生を開始するために使用できます。ライブストリームのアップストリーミングと再生はロングリンク動作です。有効期間が切れても、アクティブなアップストリーミングまたは再生セッションは中断されません。ただし、有効期間が切れた後の新しいアップストリーミングまたは再生のリクエストは失敗します。
初めて新しいドメイン名を追加する場合、デフォルトの有効期間は 1 日 (1440 分) です。URL 署名方法のカスタムデフォルト有効期間を分単位で設定します。期間は少なくとも 1 分で、上限はありません。
その他の操作:RTS 遅延の検証方法
アップストリーミングに時刻校正 URL を追加し、ストリームに表示される時刻を標準タイムソースと比較することで、RTS のレイテンシーを確認できます。このプロシージャでは、OBS Studio を例に説明します。
OBS のメインインターフェイスで、[ソース] セクションにブラウザソースを追加し、時刻キャリブレーターの URL を入力します。次に、[配信開始] をクリックします。