ユースケース
リモート教育、ステージライブストリーミング、ビデオミーティング、リモートでの損失評価、金融に関する録音・録画、オンライン医療などのユースケースでは、証明取得、品質検査、審査、アーカイブおよび再生などのニーズを考慮して、ビデオ通話やインタラクティブライブストリーミングプロセスの全体をレコーディングまたは保存する必要が度々出てきます。
TRTCのクラウドレコーディングは、ルームの各ユーザーのオーディオビデオストリーミングを独立した一つのファイルにレコーディングします。
ルーム内のマルチチャネルのオーディオビデオを、まずクラウドミクスストリーミングしてから、ミックス後のオーディオビデオストリーミングを一つのファイルにレコーディングします。
ご注意:
SDKAppIDが140で始まるユーザーは、このクラウド録画および再生操作ガイドを参照して統合および使用してください。アプリケーションのSDKAppIDが200で始まる場合は、新バージョンのクラウドレコーディングを参照して、クラウドレコーディング機能を起動してください。 コンソールガイド
レコーディングサービスのアクティブ化
2. ターゲットアプリケーションが所在する行の機能設定をクリックして、機能設定ページカードに進みます。アプリケーションを作成したことがない場合は、アプリケーションの作成をクリックしてアプリケーション名を入力し、OKをクリックして新しいアプリケーションを作成します。
3. クラウドレコーディングの起動右側のをクリックすると、クラウドレコーディングの設定ページがポップアップで表示されます。 レコーディング形式の選択
TRTCのクラウドレコーディングサービスは、「Global Auto-Recording」および「指定ユーザーレコーディング」という2種類の異なるレコーディング形式を提供しています。
Global Auto-Recording
各TRTCルームの各ユーザーのアップストリームのオーディオとビデオは自動的にレコーディングされます。レコーディングタスクの開始と停止は自動的に行われるため、心配する必要はありません。操作は比較的シンプルで使いやすいです。具体的な使用方法については、方法1:Global Auto-Recordingをご参照ください。 クラウドレコーディングでは、HLS、MP4、FLV 、AACという4種類の異なるファイルフォーマットをサポートしています。4種類のフォーマットの違いと適用ケースを表形式でリストアップしているので、ご自分の業務のニーズに合わせて選択することができます。
|
ファイルタイプ | 以下のファイルタイプをサポートしています。 HLS:このファイルタイプは、ほとんどのブラウザでオンライン再生をサポートしており、ビデオ再生シナリオに適しています。このファイルタイプを選択すると、ブレークポイント記録がサポートされ、単一ファイルの最大長が制限を受けません。 FLV:このファイルタイプはブラウザでのオンライン再生はサポートしていませんが、このフォーマットはシンプルでフォールトトレラント性に優れています。レコーディングファイルをVODプラットフォームに保存する必要がない場合、このファイルタイプを選択すると、レコーディングが完了したら、すぐにレコーディングファイルをダウンロードしてソースファイルを削除することができます。 MP4:このファイルタイプはWebブラウザでのオンライン再生をサポートしていますが、このフォーマットはフォールトトレラント性が低いです。ビデオ通話中は、どのようなパケットロスであっても、最終ファイルの再生品質に影響を与えます。 AAC:オーディオのみをレコーディングする必要がある場合、このファイルタイプを選択できます。 |
単一ファイルの最長時間(分) | 実際の業務上のニーズに応じて、単一のビデオファイルの継続時間の最大制限を設定します。時間制限を超えると、ビデオファイルは自動的に分割されます。単位は分、値の範囲は1~120です。 ファイルタイプがHLSに設定されている場合、単一ファイルの最大長に制限はないため、このパラメータは無効となります。 |
ファイルの保存期間(日) | 実際の業務ニーズに応じて、ビデオファイルをVODプラットフォームに保存する日数を設定します。日数単位で数値範囲は0~1500です。期限後は、ファイルはVODプラットフォームによって自動的に削除され、復元できなくなります。0は永久保存を表します。 |
連続レコーディングタイムアウト時間(秒) | デフォルトでは、ネットワークの変動やその他の原因で通話(またはライブストリーミング)が中断した場合、レコーディングファイルは複数のファイルに分割されます。 「1回の通話(またはライブストリーミング)で1つしか再生リンクが生成されない」ようにする必要がある場合、実際の状況に応じて、連続レコーディングのタイムアウト時間を設定できます。中断間隔が設定された連続レコーディングタイムアウト時間を超えない場合、1回の通話(またはライブストリーミング)に対して1ファイルのみ生成されます。ただし、レコーディングファイルを受信する前に、連続レコーディング時間がタイムアウトするのを待つ必要があります。 単位は秒、値の範囲は1~1800で、0はブレークポイント以降、レコーディングを継続しないことを意味します。 |
HLSは最長で30分間の連続レコーディングをサポートしており、「1講義に1つしか再生リンクが生成されないように」することができます。また、ほとんどのブラウザのオンライン視聴をサポートしており、eラーニングにおけるビデオ再生のユースケースに大変適しています。
保存場所の選択
TRTCクラウドレコーディングファイルは、デフォルトではTencent Cloud VODサーバーに保存されます。プロジェクトで多くの業務が一つのTencent Cloud VODアカウントを共有している場合、レコーディングファイルの隔離が必要になることがあります。Tencent Cloud VODの「サブアプリ」機能によって、TRTCのレコーディングファイルをその他の業務エリアと切り離すことができます。
VODのメインアプリとサブアプリとは何ですか。
メインアプリとサブアプリとは、VODの1種類のリソース分割方式です。メインアプリはVODのメインアカウントに相当し、サブアプリは複数作成できます。各サブアプリは、ルートアカウント下の1個のサブアカウントに相当し、独立したリソース管理を備えています。ストレージ領域では、その他のサブアプリと相互に隔離することができます。
レコーディングコールバックの設定
レコーディングコールバックアドレス:
新しいファイルのランディング通知をリアルタイムで受信する必要がある場合は、サーバーがレコーディングファイルのコールバックを受け取るアドレスをここに入力できます。このアドレスは、HTTP(またはHTTPS)プロトコルに適合する必要があります。新しいレコーディングファイルが生成されたら、Tencent Cloudはこのアドレスを介して、サーバーに通知を送信します。
レコーディングコールバックキー:
コールバックキーは、コールバックイベントの受信時に署名認証を生成するために使用します。このキーはアルファベットの大文字・小文字と数字で構成し、32文字を超えないようにしてください。使用については、レコーディングイベントパラメータの説明をご参照ください。 レコーディングの制御方法
コンソールでこの方式の使用設定をする方法
レコーディングタスクを開始する方法
レコーディングタスクを終了する方法
ルームのマルチチャネル画面を1チャネルにミックスする方法
レコーディングしたファイルの命名方法
ほかにどのような方法でプラットフォームをサポートするのか
方法1:Global Auto-Recording
コンソールでの設定
このレコーディング方法を使用したい場合は、コンソールのレコーディング形式の選択で「Global Auto-Recording」に設定してください。 レコーディングタスクの開始
TRTCルームの各ユーザーのオーディオ・ビデオストリーミングは、すべてファイルに自動レコーディングされるので、追加の操作は必要ありません。
レコーディングタスクの終了
自動停止。各キャスターがオーディオビデオのアップストリームを停止すると、このキャスターのクラウドレコーディングは自動停止します。ファイルフォーマットの選択のときに「連続レコーディング時間」を設定すると、レコーディングファイルを受信する前に、連続レコーディング時間がタイムアウトするのを待つ必要が出てきます。 マルチ画面のミックス
Global Auto-Recordingモードでのクラウドミクスストリーミングには、「サーバーREST API方式」と「クライアントSDK API方式」という2つの方式があります。この2つの方式を混合して使用しないでください。
クライアントSDK APIミクスストリーミング方式:直接クライアントからミクスストリーミングを開始できます。現在サポートしているのは、iOS、Android、Windows、Mac、Webなどのプラットフォームであり、WeChat Mini Programは現在サポートしていません。 レコーディングファイルの命名
キャスターが入室時にuserDefineRecordIdパラメータを指定した場合、レコーディングファイルはuserDefineRecordId_streamType_開始時間_終了時間
で命名されます(streamTypeにはmainおよびauxの2つの値があり、mainはメインストリームを、auxはサブストリームを表します。サブストリームは通常、画面共有に利用されます)。 キャスターが入室時にuserDefineRecordIdパラメータも、streamIdパラメータも指定していない場合、レコーディングファイルは、sdkappid_roomid_userid_streamType_開始時間_終了時間
で命名されます(streamTypeにはmainおよびauxの2つの値があり、mainはメインストリームを、auxはサブストリームを表します。サブストリームは通常、画面共有に利用されます)。 サポート済みのプラットフォーム
お客様側のサーバーで制御し、クライアント側プラットフォームの制限は受けません。
方法2:指定ユーザーレコーディング(SDK API)
TRTC SDKが提供するいくつかのAPIインターフェースとパラメータを呼び出すことで、クラウドミクスストリーミング、クラウドレコーディング、Relayed live streamingの3つの機能を実装できます。
|
| 入室時にパラメータTRTCParams 内のuserDefineRecordId フィールドを指定します | |
| | |
| 入室時にパラメータTRTCParams のstreamId フィールドを指定します | |
コンソールでの設定
このレコーディング方法を使用したい場合は、コンソールのレコーディング形式の選択で「ユーザーレコーディングの指定」に設定してください。 レコーディングタスクの開始
キャスターが入室時に入室パラメータ TRTCParams の userDefineRecordId フィールドを指定すると、その後、同キャスターのアップストリームのオーディオ・ビデオデータがクラウドレコーディングされます。このパラメータを指定していないキャスターはレコーディングタスクを起動することはありません。
TRTCCloud *trtcCloud = [TRTCCloud sharedInstance];
TRTCParams *param = [[TRTCParams alloc] init];
param.sdkAppId = 1400000123;
param.roomId = 1001;
param.userId = @"rexchang";
param.userSig = @"xxxxxxxx";
param.role = TRTCRoleAnchor;
param.userDefineRecordId = @"1001_rexchang";
[trtcCloud enterRoom:params appScene:TRTCAppSceneLIVE];
レコーディングタスクの終了
自動停止。入室時にuserDefineRecordIdパラメータのキャスターを指定してオーディオビデオのアップストリームを停止すると、クラウドレコーディングは自動停止します。ファイルフォーマットの選択のときに「連続レコーディング時間」を設定すると、レコーディングファイルを受信する前に、連続レコーディング時間がタイムアウトするのを待つ必要が出てきます。 ご注意:
1つのTRTCルーム内では、1人のキャスター(配信を開始したキャスターを推奨)のみがsetMixTranscodingConfig
を呼び出せます。複数のキャスターが呼び出すと、ステータスの混乱を生じて、エラーが起きる可能性があります。
レコーディングファイルの命名
レコーディングファイルは、userDefineRecordId_開始時間_終了時間
のフォーマットで命名されます。
サポート済みのプラットフォーム
iOS、Android、Windows、Mac、Electron、Webなどの端末からのレコーディング制御の開始をサポートしていますが、現時点ではWeChat Mini Programからの制御はサポートしていません。 方法3:指定ユーザーレコーディング(REST API)
説明:
これらのREST APIに対する制御は、TRTCクラウドサービスのコアとなるミクスストリーミングモジュール(MCU)であり、MCUミクスストリーミング後の結果はレコーディングシステムとライブCDNに送信されるため、APIの名前はStart/StopMCUMixTranscode
と呼ばれます。したがって機能面から言うと、Start/StopMCUMixTranscode
はミクスストリーミングの機能を実装できるだけでなく、クラウドレコーディングとRelayed live streaming CDNの機能も実装できます。
コンソールでの設定
このレコーディング方法を使用したい場合は、コンソールのレコーディング形式の選択で「ユーザーレコーディングの指定」に設定してください。 レコーディングタスクの開始
サーバーから StartMCUMixTranscode を呼び出して、 OutputParams.RecordId
パラメータを指定すると、ミクスストリーミングおよびレコーディングが実行できます。
https:
&SdkAppId=1400000123
&RoomId=1001
&OutputParams.RecordId=1400000123_room1001
&OutputParams.RecordAudioOnly=0
&EncodeParams.VideoWidth=1280
&EncodeParams.VideoHeight=720
&EncodeParams.VideoBitrate=1560
&EncodeParams.VideoFramerate=15
&EncodeParams.VideoGop=3
&EncodeParams.BackgroundColor=0
&EncodeParams.AudioSampleRate=48000
&EncodeParams.AudioBitrate=64
&EncodeParams.AudioChannels=2
&LayoutParams.Template=1
&<パブリックリクエストパラメータ>
ご注意:
このREST APIは、ルーム内の少なくとも1人のユーザーが入室(enterRoom)に成功した場合に有効になります。
REST APIを使用すると、シングルストリームのレコーディングはサポートされません。シングルストリームをレコーディングしたい場合は、方法1または方法2を選択してください。 マルチ画面のミックス
StartMCUMixTranscodeを呼び出す時に、同時にLayoutParams
パラメータを指定すれば、クラウドミクスストリーミングを実装できます。このAPIは、ライブストリーミング全時間内での複数回呼び出しをサポートしていますので、必要に応じてLayoutParams
パラメータを修正し、このAPIを再度呼び出して合成画面のレイアウトを調整することができます。ただし、注意が必要なのは、パラメータOutputParams.RecordId
と OutputParams.StreamId
が複数回呼び出しの中で一致性を維持する必要があることです。維持しない場合、ストリームが切断され、複数のレコーディングファイルが生成されてしまいます。 レコーディングファイルの命名
レコーディングファイルは、 StartMCUMixTranscode を呼び出すときに指定した OutputParams.RecordId
パラメータで命名します。命名フォーマットは、 OutputParams.RecordId_開始時間_終了時間
です。 サポート済みのプラットフォーム
お客様側のサーバーで制御し、クライアント側プラットフォームの制限は受けません。
レコーディングファイルの検索
レコーディング機能を起動させた後、TRTCシステムからレコーディングしたファイルは、Tencent CloudのVODサーバーから探し出せます。VODコンソールから手動で直接探し出したり、バックエンドサーバーからREST APIを使用したりして所定の時間にフィルタリングを行うこともできます。
方法1:VODコンソールで手動で検索
1. VODコンソールにログインし、左側ナビゲーションバーでメディア資産管理を選択します。 2. リスト上方のプレフィックス検索をクリックして、プレフィックス検索を選択します。検索ボックスに、例えば1400000123_1001_rexchang_main
といったキーワードを入力して検索ボタンをクリックすると、ビデオ名がプレフィックスと符合するビデオファイルを表示します。
3. 作成時間に基づき、必要なターゲットファイルをフィルタリングすることができます。
方法2:VOD REST APIによる検索
Tencent CloudのVODシステムは、一連のREST APIを提供してその上のオーディオビデオファイルを管理します。メディア情報検索のこのREST APIによって、VODシステム上のファイルを検索します。パラメータ表のText
パラメータをリクエストすることで、あいまい一致や、StreamId
パラメータをもとに正確な検索を行うこともできます。
RESTリクエスト例: https:
&StreamId=stream1001
&Sort.Field=CreateTime
&Sort.Order=Desc
&<パブリックリクエストパラメータ>
レコーディングファイルの受け取り
レコーディングファイルの検索のほかにも、コールバックアドレスを設定することによって、Tencent Cloudに新たにレコーディングしたファイル情報をサーバーに自動的にプッシュさせることもできます。
ルームの最後の1チャネルのオーディオビデオストリーミングが終了すると、Tencent Cloudはレコーディングを終了し、ファイルをVODプラットフォームに転送して保存します。このプロセスには、デフォルトで約30秒から2分かかります(連続レコーディング時間を300秒に設定した場合、待ち時間はデフォルトの時間に300秒を加えた時間になります)。転送と保存が完了すると、Tencent Cloudは、レコーディングコールバック設定で設定したコールバックアドレス(HTTP/HTTPS)を介してサーバーに通知を送信します。 Tencent Cloudは、レコーディングおよびレコーディング関連のイベントを、設定したコールバックアドレスを介して、サーバーにプッシュします。コールバックメッセージの例を次の図に示します。
下表のフィールドによって、現在のコールバックがどの通話(またはCSS)に対応するかを確定することができます。 |
| event_type | 情報形式。event_typeが100のときは、このコールバックメッセージが、レコーディングファイルが生成したメッセージであることを表します。 |
| stream_id | ライブCDNのstreamIdです。入室時にTRTCParamsのstreamIdフィールドを設定することで指定でき(推奨)、また、TRTCCloudのstartPublishingを呼び出すときにパラメータstreamIdで指定することもできます。 |
| stream_param.userid | ユーザー名のBase64エンコード。 |
| stream_param.userdefinerecordid | |
| video_url | レコーディングファイルの視聴アドレスは、VOD再生に使用できます。 |
レコーディングファイルの削除
Tencent CloudのVODシステムは、一連のシステムREST APIを提供して、その上のオーディオビデオファイルを管理します。メディアAPIの削除によって任意の指定したファイルを削除することができます。
RESTリクエスト例: https:
&FileId=52858907988664150587
&<パブリックリクエストパラメータ>
レコーディングファイルの再生
eラーニングなどのユースケースでは、教育リソースを最大限に活用するために、通常、ライブストリーミングの終了後、レコーディングファイルを複数回再生する必要があります。
ファイルフォーマットの選択(HLS)
レコーディングフォーマットの設定では、ファイルフォーマットをHLSに選択します。
HLSは最長30分間のブレークポイントでの連続レコーディングをサポートしており、「1つのライブストリーミング(または1回の授業)で1つしか再生リンクが生成されないように」することができます。また、HLSファイルは、ほとんどのブラウザのオンライン再生をサポートしており、ビデオ再生のユースケースに大変適しています。 VODアドレス(video_url)の取得
レコーディングファイルの受け取りのときに、コールバック情報のvideo_urlフィールドを取得できます。このフィールドは、現在のレコーディングファイルのTencent CloudにおけるVODアドレスになります。 VODプレーヤーとの接続
使用するプラットフォームに基づいてVODプレーヤーと接続します。具体的な操作は以下をご参照ください。
ご注意:
プロフェッショナル版のTRTC SDKの使用を推奨します。プロフェッショナル版にはSuper Player(Player+)やモバイルライブストリーミングなどの機能が統合され、基盤モジュールを高度に再利用することにより、統合したプロフェッショナル版の容量増加は同時に2つの独立したSDKを統合させた場合よりも小さくなります。さらにシンボル重複(symbol duplicate)の問題も回避できます。 関連料金
クラウドレコーディングと再生機能で使用できる機能には、クラウドサービスリソース(クラウドレコーディングサービス、VODの再生ファイルストレージおよび処理、VODの再生サービスなどを含む)、端末SDKのオンデマンドビデオ再生の機能が含まれます。実際のニーズに応じて次の料金が発生する可能性があります。
クラウドサービス消費
クラウドサービス消費には、クラウドレコーディングによって発生する料金とファイル再生によって発生する消費料金が含まれます。実際のニーズに応じて使用することができます。
レコーディング料金:トランスコーディングまたはカプセル化によって発生した料金の計算
レコーディングは、オーディオ・ビデオストリーミングのトランスコーディングまたはそのパッケージングが必要となるため、サーバーの計算リソースの消費が発生します。このため、レコーディング業務が計算リソースを占有するコストに応じて費用を徴収する必要があります。
ご注意:
2020年7月1日以降、初めてTRTCコンソールでアプリケーションを作成したTencent Cloudアカウントの場合、クラウドレコーディング機能を使用した後に発生するレコーディング料金については、クラウドレコーディング課金説明を基準とします。 2020年7月1日以前にTRTCコンソールでアプリケーションを作成したことのあるTencent Cloudアカウントの場合、2020年7月1日以前またはそれ以降に作成したアプリケーションであっても、クラウドレコーディング機能を使用して発生するレコーディング料金については、デフォルトで、CSSレコーディングの課金ルールを引き続き適用します。
CSSレコーディング課金の計算方法は、同時レコーディングのチャネル数に応じて料金を徴収し、同時実行数が多いほどレコーディング料金も高くなります。具体的な課金説明については、CSS > CSSレコーディングをご参照ください。 計算式:
レコーディング有効日数割合=1暦月におけるレコーディング機能を使用する日数/その月の総日数。
レコーディング料金=1暦月の同時レコーディングチャネル数ピーク値×レコーディング有効日数割合×レコーディングチャネル数単価。
例えば、4月には1000名のキャスターがいて、夕方のピーク時に、最多500チャネルのキャスターのオーディオビデオストリーミングを同時レコーディングする必要があると同時に、4月に計6日間、レコーディング機能を使用したとします(有効日数の割合は6/30)。仮にレコーディング単価が5.2941ドル/チャネル/月とすると、4月の合計レコーディング料金は、500チャネル×5.2941米ドル/チャネル/月=2647.05米ドル/月
となります。
レコーディングフォーマットの設定をする時に同時に2種類のレコーディングファイルを選択した場合、レコーディング料金とストレージ料金はいずれも× 2になります。同様の理屈により、3種類のファイルを選択した時のレコーディング料金とストレージ料金は× 3になります。不要な場合は、必要な1種類のファイルフォーマットのみを選択することをお勧めします。コストを大幅に抑えることができます。 トランスコード料金:ミクスストリーミングレコーディングを有効にすると、この料金が発生します
ミクスストリーミングレコーディングを有効にすると、ミクスストリーミング自体にデコードとエンコードが必要なため、別途ミクスストリーミングトランスコード料金が発生します。ミクスストリーミングトランスコーディングは、解像度のサイズとトランスコーディング時間によって課金され、キャスターが使用する解像度が高く、マイク接続時間が長いほど(通常、マイク接続シナリオにのみミクスストリーミングトランスコーディングが必要)、料金が高くなります。具体的な料金の計算については、CSSトランスコードをご参照ください。 例えば、setVideoEncoderParam()を介してキャスターのビットレート(videoBitrate)を1500kbps、解像度を720Pに設定したとします。1名のキャスターが視聴者と1時間マイク接続し、マイク接続の間にクラウドミクスストリーミングを有効にした場合、発生するトランスコード料金は0.0057米ドル/分×60分=0.342米ドル
となります。 再生ファイル保存料金:クラウドビデオストレージサービスによって発生する保存料金
レコーディングしたビデオファイルをVODサービスに保存すると、VODのクラウドストレージサービスを利用することになります。保存自体にディスクリソースの消費が発生しますので、保存するリソースの占用状況に応じて料金を徴収する必要があります。保存期間が長いほど料金も高くなるため、特殊なニーズがない場合は、ファイルの保存期間を短めに設定して費用を節約するか、またはファイルを自分のサーバーに保存することもできます。保存料金は、ビデオ保存(日次決済)価格を選択し、日次決済で計算することができます。 例えば、setVideoEncoderParam()を介してキャスターのビットレート(videoBitrate)を1000kbpsに設定し、そのキャスターのライブストリーミングビデオ(1種類のファイルフォーマットを選択)をレコーディングし、1時間レコーディングすると、おおよそ(1000/8)KBps×3600秒=450000KB=0.45GB
サイズのビデオファイルが生成されます。このファイルに毎日発生するおおよそのストレージ料金は、0.45GB×0.0009米ドル/GB/日=0.000405米ドル
となります。 再生視聴料金:VODビデオの配信と再生によって発生する再生料金
レコーディングしたビデオファイルを再生に用いる場合は、VODのCDN再生機能を利用することになります。視聴自体にCDNトラフィックが消費されるため、VODの価格に基づいて課金する必要があります。デフォルトは、トラフィックによる課金となっています。視聴者数が多いほど料金は高くなります。視聴料金はビデオアクセラレーション(日次決済)価格 を選択し、日次決済で計算できます。 例えば、クラウドレコーディングによって1GBのファイルが生成され、1,000名の視聴者が最初から最後まで完全にそのビデオを視聴すると、約1TBのVOD視聴トラフィックが発生します。この場合は、階層価格表にもとづき、1,000名の視聴で、1000×1GB×0.0794米ドル/GB=79.4米ドル
の料金が発生します。トラフィックパッケージの場合、24.5ドルです。
Tencent Cloudからファイルをお客様のサーバーにダウンロードするように選択した場合も、非常に小さなVODトラフィックが消費され、お客様の月次請求書の中に反映されます。
SDKの再生権限承認
Tencent Real-Time Communication(TRTC)の全機能版SDKは全面的な機能と高度なパフォーマンスが可能なビデオ再生機能をご提供し、VODと組み合わせることで簡単にビデオ再生機能を実装できます。モバイルSDKの10.1以降のバージョンでは、指定のLicenseを取得することでビデオ再生機能のロックを解除することができます。
ご注意:
TRTCの再生機能にはLicense承認は必要ありません。
この記事はお役に立ちましたか?