Topik ini menjelaskan event TranscodeComplete, konten notifikasinya, serta contoh callback.
Jenis Peristiwa
TranscodeComplete
Deskripsi Peristiwa
Event TranscodeComplete dihasilkan setelah seluruh aliran video selesai ditranskode.
Jika Penandatanganan URL diaktifkan, Anda harus menghasilkan auth_key untuk mengakses URL pemutaran. Jika tidak, kesalahan HTTP 403 akan dikembalikan. Untuk informasi lebih lanjut tentang Penandatanganan URL, lihat Konfigurasi Penandatanganan URL.
Konten event
Parameter Name | Tipe | Diperlukan | Deskripsi |
EventTime | String | Ya | Waktu saat event dihasilkan. Waktu dalam format UTC: yyyy-MM-ddTHH:mm:ssZ. |
EventType | String | Ya | Jenis event. Ini adalah parameter yang diperlukan. Nilainya tetap TranscodeComplete. |
VideoId | String | Ya | ID video. |
Status | String | Ya | Status transkoding video. Status bernilai success jika setidaknya satu aliran berhasil ditranskode.
|
Extend | String | Tidak | Data transmisi langsung kustom untuk callback. Untuk informasi lebih lanjut, lihat Parameter permintaan. |
StreamInfos | Array | Tidak | Lihat tabel informasi aliran video di bawah ini. |
StreamInfos merupakan array. Tabel berikut menjelaskan bidang-bidang untuk setiap aliran.
Tabel 1. Informasi Aliran Video
Nama | Tipe | Diperlukan | Deskripsi |
Status | String | Tidak | Status transkoding aliran video.
|
Bitrate | String | Tidak | Bitrate aliran video. Satuan: Kbps. |
Definisi | String | Tidak | Definisi aliran video dalam callback. Untuk template preset dan template Narrowband HD, akhiran ditambahkan pada nilai ini. Contoh: HD-MP4.
|
Durasi | Float | Tidak | Durasi dari aliran video. Satuan: detik. |
Encrypt | Boolean | Tidak | Menunjukkan apakah aliran video dienkripsi. |
ErrorCode | String | Tidak | Kode kesalahan pekerjaan. Bidang ini dikembalikan ketika terjadi error selama transkoding aliran video. |
ErrorMessage | String | Tidak | Pesan kesalahan pekerjaan. Bidang ini dikembalikan ketika terjadi error selama transkoding aliran video. |
FileUrl | String | Tidak | URL pemutaran aliran video. URL ini tidak berisi auth_key. Jika Penandatanganan URL diaktifkan, hasilkan auth_key untuk mengakses URL tersebut. |
Format | String | Tidak | Format dari aliran video.
|
Fps | String | Tidak | Laju frame aliran video, dalam frame per detik. |
Height | Long | Tidak | Tinggi aliran video. Satuan: px. |
Size | Long | Tidak | Ukuran dari aliran video. Satuan: byte. |
Width | Long | Tidak | Lebar aliran video. Satuan: px. |
JobId | String | Tidak | ID pekerjaan transkode. |
WatermarkId | String | Tidak | Daftar ID watermark yang dipisahkan koma. |
IsAudio | Boolean | Ya | Ini adalah audio. |
StartTime | String | Ya | Waktu mulai tugas. Waktu dalam UTC. |
FinishTime | String | Ya | Waktu selesai tugas. Waktu dalam UTC. |
Contoh callback
Catatan mengenai contoh callback:
Untuk callback HTTP, konten berikut merupakan body POST HTTP.
Untuk callback MNS, konten berikut merupakan body pesan.
{ "EventTime": "2017-03-20T07:49:17Z", "EventType": "TranscodeComplete", "VideoId": "43q9fjsh73f****", "Status": "success", "Extend":"test data", "StreamInfos": [ { "Status": "success", "Bitrate": "925", "Definition": "LD", "Duration": 15, "Encrypt": false, "FileUrl": "http://example.aliyundoc.com/ABEBDE1JSU79FD4D****/62cb3151eba52js82j2da3b55bc5****.mp4", "Format": "mp4", "Fps": "30", "Height": 960, "Size": 1815321, "Width": 540, "WatermarkId": "33q9fj74hdf****,93q9fj74hdf****", "IsAudio": false, "StartTime": "2017-03-20T07:49:17Z", "FinishTime": "2017-03-20T09:49:17Z", "JobId":"ffffffffff" }, { "Status": "success", "Bitrate": "1575", "Definition": "SD", "Duration": 15, "Encrypt": false, "FileUrl": "http://example.aliyundoc.com/ABEBDE1JSU79FD4D****/62cb3151eba52js82j2da3b55bc5****.mp4", "Format": "mp4", "Fps": "30", "Height": 960, "Size": 3090951, "Width": 540, "WatermarkId": "33q9fj74hdf****,93q9fj74hdf****", "IsAudio": false, "StartTime": "2017-03-20T07:49:17Z", "FinishTime": "2017-03-20T09:49:17Z", "JobId":"ddddddddddd" } ] }