CSSレコーディングでは、プッシュドメイン名にバインドしたレコーディングテンプレートに基づきライブストリーミング画面をリアルタイムでレコーディングし、生成した対応するレコーディングファイルをVODの中に保存します。またレコーディングのコールバックを、レコーディングファイル情報をプッシュ送信するために利用し、これには主にレコーディングの開始時間、終了時間、生成したレコーディングファイルのID、レコーディングファイルサイズ、ファイルダウンロードアドレスが含まれます。お客様はコールバックテンプレートの中でレコーディングのコールバックメッセージを受信するサーバーアドレスを設定し、このテンプレートとプッシュドメイン名をバインドする必要があります。これにより、ライブストリーミングがレコーディングイベントをトリガーすると、Tencent Cloud CSSのバックエンドがレコーディングファイル情報をお客様の設定した受信サーバーにコールバックします。
ここでは、主にレコーディングコールバックイベントがトリガーされた後、Tencent Cloudバックエンドがユーザーに送信するコールバックメッセージ通知のフィールドについてご説明します。
イベントタイプ | フィールド設定値の説明 |
---|---|
CSSレコーディング | event_type = 100 |
フィールド名 | タイプ | 説明 |
---|---|---|
t | int64 | 期限切れ時間、イベント通知サイン期限のUNIXタイムスタンプ。
|
sign | string | イベント通知セキュリティサイン sign = MD5(key + t)。 説明:Tencent Cloudが、暗号化 key と t で文字列を結合した後、MD5でsignの値を算出し、それを通知メッセージに入れます。お客様のバックエンドサーバーは、通知メッセージの受信後、同じアルゴリズムに基づきsignが正確か確認し、さらにメッセージが確実にTencent Cloudバックエンドから来たものかを確認することができます。 |
説明:keyは、**イベントセンター>CSSコールバック**の中のコールバックキーとなり、主に認証に使用します。お客様のデータ、情報のセキュリティ保護のため、入力することをお勧めします。
フィールド名 | タイプ | 説明 |
---|---|---|
appid | int | ユーザー APPID |
app | string | プッシュドメイン名 |
appname | string | プッシュパス |
stream_id | string | CSSストリーム名 |
channel_id | string | CSSストリーム名と同じ |
file_id | string | VOD file ID、 VODプラットフォームで1つのVODビデオファイルを一意的に特定することができます |
record_file_id | string | VODファイルID |
file_format | string | FLV,HLS,MP4,AAC |
task_id | string | レコーディングタスクID。APIで作成したレコーディングタスクに対してのみ有効であり、すなわちCreateRecordTaskによって返されるタスクID |
start_time | int64 | レコーディングタスクによるファイル書き込み開始時間。この値をレコーディングコンテンツの開始時間にすることはできません。レコーディングコンテンツの開始時間 = end_time – duration |
end_time | int64 | レコーディングタスクによるファイル書き込み終了時刻 |
start_time_usec | int | レコーディングタスクでファイルへの書き込みを開始する時間(マイクロ秒部分) |
end_time_usec | int | レコーディングタスクでファイルへの書き込みを終了する時間(マイクロ秒部分) |
duration | int64 | レコーディングファイルの長さ。単位:秒 |
file_size | uint64 | レコーディングファイルサイズ。単位:byte |
stream_param | string | ユーザープッシュURLに付帯するパラメータ(カスタマイズ) |
video_url | string | レコーディングファイルのダウンロードURL |
media_start_time | int | レコーディングでプルを開始するときに受信した最初のフレームpts(必ずしもファイルの最初のフレームptsではありません) |
record_bps | int | レコーディングでトランスコードのプルから対応するビットレート(Kbps) |
callback_ext | string、jsonオブジェクト文字列 | jsonオブジェクトに複数のフィールドが含まれます。うち video_codecはプッシュビデオcodec名です resolutionはプッシュビデオの解像度です 以上はいずれもレコーディング コールバック拡張フィールドであり、ビジネスの参考となります。ビジネスロジックがこれらのフィールドに強く依存することはお勧めしません。 |
{
"event_type": 100,
"appid":12345678,
"app": "yourapp",
"callback_ext": "{\"video_codec\":\"h264\",\"resolution\":\"640x480\"}",
"appname": "yourappname",
"stream_id":"stream_test",
"channel_id":"stream_test",
"file_id":"1234567890",
"record_file_id": "1234567890",
"file_format":"hls",
"task_id":"UpTbk5RSVhRQ********************0xTSlNTQltlRVRLU1JAWW9EUb",
"start_time":1642089445,
"end_time":1642089598,
"start_time_usec": 316441,
"end_time_usec": 618577,
"duration":154,
"file_size":277941079,
"stream_param":"stream_param=test",
"video_url":"http://12345678.vod2.myqcloud.com/xxxx/yyyy/zzzz.m3u8",
"media_start_time": 135802,
"record_bps": 0,
"sign":"ca3e25e**********09a9ae7281e300d",
"t":1545030873
}
この記事はお役に立ちましたか?