コストリーミングは、ApsaraVideo Real-time Communication (ARTC) の典型的なシナリオです。 このトピックでは、コストリーミングを開始する方法について説明します。
前提条件
取り込みドメインとストリーミングドメインが利用可能です。
ApsaraVideo Liveの基本機能をすぐに試してみたい場合は、中国本土以外にあるドメイン名を使用し、ドメイン名として [アクセラレーションリージョン] を 中国本土以外 に設定することを推奨します。 これにより、ドメイン名のICPファイリングを申請する必要がなくなります。
取り込みドメインとストリーミングドメインが同じトップレベルドメイン名の第2レベルドメイン名である場合、トップレベルドメイン名に対してのみICPファイリングを申請する必要があります。
ApsaraVideo Liveの有効化
Alibaba Cloud公式Webサイトにログインし、ApsaraVideo Liveプロダクトページに移動します。 [今すぐ有効化] をクリックします。
表示されるページで、[有効化] をクリックします。
ApsaraVideo Liveの購入ページで、計測方法として [トラフィック課金] または [ピーク帯域幅課金] を選択し、[ApsaraVideo Liveの利用規約を読み、同意しました] をクリックし、[今すぐ有効化] をクリックします。 その後、ApsaraVideo Liveコンソールを使用できます。
ステップ1: 取り込みドメインとストリーミングドメインの追加
ApsaraVideo Liveを使用するには、取り込みドメインとストリーミングドメインを追加する必要があります。
ApsaraVideo Liveコンソールにログインします。
左側のナビゲーションウィンドウで、[ドメイン名] をクリックします。 ドメイン管理 ページが表示されます。
ドメインの追加をクリックします。
ビジネス要件に基づいてドメイン名を設定します。
重要ApsaraVideo Liveに初めてドメイン名を追加すると、ApsaraVideo Liveはドメイン名の所有権を検証します。 詳細については、「ドメイン名の所有権の確認」をご参照ください。
次のステップで使用するために、生成されたCNAMEを書き留めます。
ステップ2: CNAMEレコードを追加してアクセラレーションを有効にする
ApsaraVideo Liveの高速化を有効にするには、DNSプロバイダーでCNAMEレコードを追加して、取り込みドメインとストリーミングドメインをApsaraVideo Liveによって割り当てられたCNAMEにマッピングする必要があります。 次の例は、DNSプロバイダーがAlibaba Cloudの場合にCNAMEレコードを追加する方法を示しています。
Alibaba Cloud CDNがドメイン名のCNAMEを解決するために使用するサーバーは、中国本土にデプロイされています。 ドメイン名の地域固有のDNS設定を構成した場合、たとえば、中国本土以外の地域 (香港 (中国) 、マカオ (中国) 、台湾 (中国) など) にドメイン名のCNAMEレコードを追加した場合、ドメイン名をCNAMEにマップすることはできません。 Alibaba Cloud CDNコンソールで、CNAMEのステータスが [設定中] になっています。 ただし、ドメイン名のCDNアクセラレーションは影響を受けません。
Alibaba Cloud CDN、Dynamic Content Delivery Network (DCDN) 、ApsaraVideo Live、およびApsaraVideo VODによって割り当てられたCNAMEは、ドメイン名解決にのみ使用できます。 CNAMEが不正または悪意のある活動に使用されていることをAlibaba Cloudが発見した場合、Alibaba CloudはAlibaba Cloudアカウントを閉鎖し、ドメイン名を削除する権利を留保します。
Alibaba Cloud DNS コンソールにログオンします。
左側のナビゲーションウィンドウで、[ドメイン名の解決] をクリックします。 [ドメイン名の解決] ページが表示されます。
CNAMEレコードを追加するドメイン名を見つけて、[操作] 列の [DNS設定] をクリックします。
[DNSレコードの追加] をクリックし、次の表に示すパラメーターを設定します。
パラメーター
説明
レコードタイプ
ドロップダウンリストから [CNAME] を選択します。
ホスト名
ドメイン名のプレフィックスを指定します。 ドメイン名とサンプルドメイン名の通常のプレフィックスの詳細については、次の表を参照してください。
DNSリクエストソース
デフォルト値を使用します。
レコード値
取得したCNAMEを入力します。
TTL期間
デフォルト値を使用します。
プレフィックス
サンプルドメイン名
説明
demo
demo.aliyundoc.com
サブドメイン名。
@
aliyundoc.com
ルートドメイン名。
*
*.aliyundoc.com
ワイルドカードドメイン名。
[OK] をクリックします。
CNAMEレコードが有効かどうかを確認
ステップ3: ストリーミングドメインを取り込みドメインに関連付ける
ApsaraVideo Liveはエッジ取り込みメソッドを使用します。 ストリームを取り込み、再生するには、ストリーミングドメインを取り込みドメインに関連付ける必要があります。
左側のナビゲーションウィンドウで、[ドメイン名] をクリックします。 表示されたページで、追加したストリーミングドメインを見つけ、[操作] 列の ドメイン設定 をクリックします。 ページが表示されます。
[基本設定] ページで、基本情報タブをクリックします。
[基本情報] タブでは、CNAMEレコード、ドメイン名が作成された時刻、ドメイン名のタイプ、ライブセンター、アクセラレーションリージョン、およびクォータ制限を表示できます。
説明ApsaraVideo Liveのクォータは、中国 (北京) 、中国 (上海) 、中国 (深セン) 、およびシンガポールの各リージョンでのみ管理できます。 他のライブセンターのクォータを増やすには、チケットを起票してください。 詳細については、お問い合わせをご参照ください。
ApsaraVideo Liveのクォータを管理する方法の詳細については、「Quota management」をご参照ください。
アクセラレーションリージョンを変更する方法の詳細については、このトピックの「アクセラレーションリージョンの変更」をご参照ください。
アップストリーミング情報タブをクリックします。
アップストリーミング情報の追加またはアップストリーミングドメイン隣の编集アイコンをクリックして、関連付けたい取り込みドメインを選択します。
ARTCアプリケーションの作成
ApsaraVideo Live コンソールにログインします。
左側のナビゲーションウィンドウで、
を選択します。[アプリケーション] ページで、[アプリケーションの作成] をクリックします。
[インスタンス名] フィールドにカスタム名を入力し、[利用規約] を選択し、[今すぐ購入] をクリックします。
アプリケーションの作成後、[アプリケーション] ページを更新してアプリケーションを表示します。
説明デフォルトでは、アプリケーションの作成時に料金は発生しません。 クラウドでの実際の使用量に基づいて課金されます。 詳細については、「ARTCの課金」をご参照ください。
ストリームリレーの設定
コストリーミングシナリオでは、グローバルシングルストリームリレーをApsaraVideo Liveに設定し、ライブルームの視聴者用のストリーミングドメインを指定する必要があります。 このようにして、ストリーマーのストリームはデフォルトでApsaraVideo Liveに中継され、視聴者が視聴できるライブルームで再生されます。 コストリーミングが開始された後、SDKによって提供されるストリーム混合メソッドを呼び出すことによって、ストリーマのストリームとコストリーマのストリームが混合されます。 次に、混合ストリームは視聴者に取り込まれます。
左側のナビゲーションウィンドウで、
を選択します。作成したアプリケーションを見つけ、[操作] 列の [管理] をクリックします。
[ストリーム中継] タブをクリックします。 [Global Stream Relay to ApsaraVideo Live] セクションで、[Stream Relay] をオンにします。 表示されるダイアログボックスで、ストリームリレーのパラメーターを設定します。
ストリーミングドメイン: 標準ストリーミング用に中継されるストリーミングドメインを選択します。 ストリーミングドメインに基づいて、ライブストリームの再生、トランスコードと録音の設定、その他の操作を実行できます。
重要ストリーミングドメインのRTS 2.0を有効にしないでください。 そうでない場合、中継ストリームのプルは失敗します。
AppName: ストリーム中継後のストリーミングURL内のアプリケーション名。 デフォルト値: live。 カスタムアプリケーション名を指定できます。
説明中継ストリームのトランスコード、記録、スナップショットテンプレートなどのテンプレートを設定する必要がある場合は、テンプレートで指定されたアプリケーション名と同じアプリケーション名を指定する必要があります。 それ以外の場合、テンプレートは有効になりません。
SEI挿入: 補助拡張情報 (SEI) を使用して、UIDや混合ストリームレイアウトパラメータなどの基本的なユーザー情報をストリームに挿入します。 このようにして、コストリーミングシナリオでは、ストリームミキシングとリレーのレイアウトが変更された場合、視聴者がストリームを視聴するために使用するアプリは、SEIからのレイアウト情報をリアルタイムで解析できます。 これにより、インタラクションスタイルの調整が容易になります。 詳細は、「SEI format」をご参照ください。
SEIを通常間隔で挿入する: このオプションを使用すると、1,000〜5,000ミリ秒の指定間隔でSEIを挿入できます。
SEIをIフレームに挿入する: このオプションを使用すると、ビデオストリームのIフレームにSEIを挿入できます。
(オプション) HTTPS設定とHTTPヘッダー設定
一部のビューアがwebでの再生を必要とする場合は、HTTPSセキュアアクセラレーションを設定し、ストリーミングドメインのクロスオリジンリクエストを許可する必要があります。 HTTPSセキュアアクセラレーションの設定方法の詳細については、「Configure HTTPS secure acceleration」をご参照ください。
クロスオリジンリクエストを許可するようにAccess-Control-Allow-Originヘッダーを設定する方法の詳細については、「HTTPヘッダーの設定」をご参照ください。
コストリーミング用の取り込みURLとストリーミングURLの生成
ストリーマーと共同ストリーマーの取り込みURLとストリーミングURL、および視聴者のCDNストリーミングURLは、ApsaraVideo Liveコンソールを使用して生成するか、連結ルールを使用して作成できます。
方法1: コンソールを使用してURLを生成
ApsaraVideo LiveコンソールのURLジェネレーターを使用して、ストリーマーと共同ストリーマーの取り込みURLとストリーミングURL、および視聴者のCDNストリーミングURLを生成できます。 詳細については、「共同ストリーミングURLジェネレーター」をご参照ください。
方法2: URLの作成
コンソールを使用して生成されるストリーマと共同ストリーマの取り込みURLとストリーミングURLのトークンは一時的なもので、通常はテストに使用されます。
ビジネス目的で使用される取り込みURLとストリーミングURLが必要な場合は、セキュリティ上の理由から連結ルールを使用してURLを構築します。 連結ルールを使用して構築するURLのトークンは、SHA-256暗号化アルゴリズムを使用して、SdkAppID、AppKey、ルームID、UserID、およびタイムスタンプに基づいて計算されます。 これにより、悪意のあるパーティがトークンを偽造してクラウドサービスにアクセスできなくなります。 連結ルールの詳細については、「コストリーミングシナリオでのストリーマとコストリーマの取り込みURLとストリーミングURL」および「視聴者のCDNストリーミングURL」をご参照ください。
デモの実行
ネイティブデモ
SDKダウンロードに記載されているリンクを使用するか、次のQRコードをスキャンして、Push SDKのインタラクティブエディションのデモをダウンロードします。
アンドロイド /iOS:
フラッター:
ネイティブデモを開きます。 ホームページが表示されます。 [共同ストリーミング] をタップして共同ストリーミング機能を試すか、[バトル] をタップしてバトル機能を試すかをタップします。
初めてデモをインストールする場合は、アプリケーション情報を入力する必要があります。
ApsaraVideo Liveコンソールの左側のナビゲーションウィンドウで、
を選択します。作成したアプリケーションを見つけ、[操作] 列の [管理] をクリックします。
表示されるページで、アプリケーションIDとAppKey、およびストリーム中継用に設定されたストリーミングドメインを取得します。 得られた情報をデモに入力します。
ユーザーIDとルームIDを入力して、コストリーミングまたはバトル機能の使用を開始します。
説明コストリーミング機能を使用する場合は、ビューアのルームIDがストリーマーのルームIDと同じで、ストリーマーとビューアのユーザーIDが異なることを確認します。
コストリーミング中、視聴者は、部屋に入った後にストリーマのIDを入力する必要がある。 このようにして、視聴者はCDNからストリーマのストリームをプルすることができます。
デバイスがネットワークに接続されていることを確認してください。
説明ネイティブ側とwebクライアント間のコストリーミングが必要な場合は、ページの右上隅にある [パラメーター設定] をタップして、コストリーミング情報またはバトル情報を入力します。 表示されるページで、HTML5互換モードまたはHTML5互換性をオンにします。
ライブルームを開始し、共同ストリーミングを開始します。
デフォルトでは、ストリーマーとビューアがライブルームに入っても、コストリーミングは自動的に開始されません。 ストリーマとビューアは、それぞれ [Start Co-streaming] ボタンをタップし、互いのユーザーIDを入力してコストリーミングを開始する必要があります。 次の図は、出力を示しています。
共同ストリーミング中
戦闘中
Webデモ
webデモページにアクセスするか、次のQRコードをスキャンしてデモにアクセスします。
webデモページで、ApsaraVideo Liveコンソールから取得したアプリケーションID、AppKey、およびストリーム中継用に設定されたストリーミングドメインを入力します。 次に、ルームIDとユーザーIDを入力し、ユーザーロールを指定します。 [OK] をクリックしてライブルームを開始し、コストリーミングを開始します。
デフォルトでは、ストリーマーとビューアがライブルームに入っても、コストリーミングは自動的に開始されません。 ストリーマとビューアは、それぞれ [Start Co-streaming] ボタンをクリックし、互いのユーザーIDを入力して、コストリーミングを開始する必要があります。
重要デモで適切に機能するように、ストリーミングドメインのURL署名を無効にする必要があります。 詳細については、「URL署名の設定」をご参照ください。 ただし、正式な用途ではURL署名を有効にすることを強くお勧めします。
次の図は、出力を示しています。
Windowsデモ
コストリーミング用の取り込みURLを準備する必要があります。これは通常の取り込みURLとは異なります。 詳細については、「共同ストリーミングURLジェネレーター」をご参照ください。
Windowsデモをダウンロードするには、こちらをクリックしてください。 詳細については、「SDKダウンロード」をご参照ください。
デモパッケージを解凍します。 /bin/64bitフォルダに移動します。
クリックobs64.exeプログラムの実行を開始します。
ホームページの右下隅にある [設定] をクリックします。
[設定] ウィンドウで、[ストリーム] をクリックします。 次の表に、パラメーターを示します。
パラメーター
説明
サービス
ALIRTCを選択します。
サーバー
生成される共同ストリーミングの取り込みURLを入力します。 例: artc:// live.aliyun.com/push/100******?sdkAppId=580c9e85-176f-4a******&userId=10******×tamp=17211***&token=b4718487960******.
ストリームキー
このパラメータは空のままにします。
[ソース] セクションで、ソースを追加します。
[ストリーミング開始] をクリックしてストリーミングを開始します。