Memulai tugas perekaman cloud RTC.
Deskripsi operasi
Perekaman cloud adalah fitur berbayar. Untuk detail penagihan, lihat Biaya perekaman cloud.
Titik akhir
Titik akhir berikut aktif untuk operasi ini:
| Wilayah | ID Wilayah | Titik akhir publik |
| Shanghai | cn-shanghai | live.aliyuncs.com |
| Singapura | ap-southeast-1 | live.ap-southeast-1.aliyuncs.com |
| AS (Virginia) | us-east-1 | live.us-east-1.aliyuncs.com |
Batas laju
Batas QPS pengguna individu untuk operasi ini adalah 50 panggilan per detik. Jika batas terlampaui, panggilan API akan dibatasi (throttled), yang dapat memengaruhi bisnis Anda. Panggil operasi ini sesuai kebutuhan.
Coba sekarang
Test
RAM authorization
|
Action |
Access level |
Resource type |
Condition key |
Dependent action |
|
live:StartRtcCloudRecording |
create |
*Semua sumber daya.
|
None | None |
Parameter permintaan
|
Parameter |
Type |
Required |
Description |
Example |
| AppId |
string |
Yes |
ID aplikasi tempat saluran yang akan direkam berada. Aplikasi harus milik akun utama dari akun yang memanggil operasi ini. |
********-7074-****-9ef5-85c19a4***** |
| ChannelId |
string |
Yes |
ID saluran yang akan direkam. Pastikan saluran memiliki pengguna aktif saat Anda memanggil operasi ini. Jika tidak, tugas perekaman gagal dibuat. |
room1024 |
| SubscribeParams |
object |
Yes |
Parameter langganan. |
|
| SubscribeUserIdList |
array<object> |
Yes |
Daftar entri UserId yang disubskripsi. Dalam mode perekaman single-stream, setiap UserId direkam secara terpisah. Dalam mode perekaman pencampuran aliran, audio dan video dari semua UserId dicampur menjadi satu set audio dan video. Catatan
|
|
|
object |
No |
Informasi tentang UserId yang disubskripsi. |
||
| UserId |
string |
Yes |
UserId yang dilanggan. |
userA |
| StreamType |
integer |
No |
Tipe media dari UserId yang dilanggan. Nilai valid:
Valid values:
|
0 |
| SourceType |
integer |
No |
Tipe aliran input video dari UserId. Parameter ini hanya valid ketika langganan bukan audio saja (StreamType != 1). Nilai valid:
Valid values:
|
0 |
| RecordParams |
object |
Yes |
Parameter perekaman. |
|
| RecordMode |
integer |
Yes |
Mode perekaman. Nilai valid:
Valid values:
|
0 |
| StreamType |
integer |
No |
Tipe media dari aliran output rekaman. Nilai valid:
Valid values:
|
0 |
| MaxFileDuration |
integer |
No |
Durasi maksimum file rekaman, dalam detik. File rekaman yang melebihi durasi ini akan dipisah. Nilainya harus berada dalam rentang [180, 7200], yaitu maksimal 2 jam. Jika tidak ditentukan, nilai default adalah 2 jam. |
7200 |
| StorageParams |
object |
Yes |
Parameter penyimpanan. |
|
| StorageType |
integer |
Yes |
Metode penyimpanan. Nilai valid:
Valid values:
|
1 |
| FileInfo |
array<object> |
No |
Informasi penyimpanan file, yang menentukan format, lokasi penyimpanan, dan penamaan file rekaman. Parameter ini hanya valid ketika StorageType diatur ke OSS. Catatan
File rekaman dibuat untuk setiap elemen dalam array berdasarkan konfigurasi yang sesuai. Jika format tidak ditentukan, format HLS digunakan secara default. |
|
|
object |
No |
Konfigurasi penyimpanan untuk setiap format file. |
||
| Format |
string |
Yes |
Format penyimpanan file. Nilai valid:
Valid values:
|
HLS |
| FileNamePattern |
string |
No |
Format penamaan file. Anda dapat memilih dan menggabungkan variabel berikut dalam urutan apa pun:
Nilai default:
Catatan
|
{AppId}_{ChannelId}_{StartTime}_{UserId} |
| SliceNamePattern |
string |
No |
Format penamaan segmen. Parameter ini hanya valid dalam format HLS. Mirip dengan FileNamePattern, kecuali bahwa variabel tambahan Sequence tersedia:
Nilai default:
Catatan
|
{AppId}_{ChannelId}_{StartTime}_{Sequence} |
| FilePathPrefix |
array |
No |
Jalur penyimpanan file. Setiap elemen dalam array sesuai dengan satu tingkat direktori. Misalnya, jika nilai parameter adalah ["dir1","dir2"], file xxx.m3u8 disimpan sebagai dir1/dir2/TaskId/xxx.m3u8. Jika parameter ini kosong, file disimpan langsung sebagai TaskId/xxx.m3u8.
|
|
|
string |
No |
Nama setiap tingkat direktori. |
dir1 |
|
| SliceDuration |
integer |
No |
Panjang segmen, dalam detik. Parameter ini hanya valid dalam format HLS. Nilainya harus berada dalam rentang [10, 30]. (Nilai default: 30) Jika Anda tidak memiliki persyaratan khusus, gunakan nilai default. |
30 |
| OSSParams |
object |
No |
Konfigurasi penyimpanan OSS. Parameter ini diperlukan ketika metode penyimpanan adalah OSS dan tidak valid ketika metode penyimpanan adalah VOD. |
|
| OSSEndpoint |
string |
Yes |
Titik akhir penyimpanan OSS. ID wilayah yang sesuai harus cocok dengan titik akhir yang dipilih. |
oss-cn-shanghai.aliyuncs.com |
| OSSBucket |
string |
Yes |
Nama bucket OSS. Bucket harus milik akun utama dari akun yang memanggil operasi ini. |
mytest-bucket |
| VodParams |
object |
No |
Konfigurasi penyimpanan VOD. Parameter ini diperlukan ketika metode penyimpanan adalah VOD dan tidak valid ketika metode penyimpanan adalah OSS. Catatan
|
|
| StorageLocation |
string |
No |
Alamat penyimpanan yang dikonfigurasi di konsol video-on-demand di bawah Manajemen Aset Media > Manajemen Penyimpanan. File rekaman pertama-tama disimpan ke lokasi ini lalu diunggah ke VOD. Catatan
|
mytest.oss-cn-shenzhen.aliyuncs.com |
| VodTranscodeGroupId |
string |
No |
ID kelompok template transkoding video-on-demand. Catatan
|
****8a914d3989e9825eb90530b2**** |
| AutoCompose |
integer |
No |
Apakah akan mengaktifkan penggabungan otomatis. Nilai valid:
Valid values:
|
0 |
| ComposeVodTranscodeGroupId |
string |
No |
ID kelompok template transkoding VOD yang digunakan untuk mentranskode video baru yang disusun secara otomatis di ApsaraVideo VOD. Catatan
|
****4c34112cfe68248f2f77759c**** |
| MixTranscodeParams |
object |
No |
Parameter transkoding. Biarkan parameter ini kosong dalam mode perekaman aliran tunggal. Parameter ini diperlukan dalam mode perekaman pencampuran aliran. |
|
| FrameFillType |
integer |
No |
Tipe pengisian frame ketika aliran terputus. Nilai valid:
Valid values:
|
0 |
| AudioBitrate |
integer |
Yes |
Laju bitrate audio dalam kbps. Nilainya harus berada dalam rentang [8, 500]. Parameter ini diperlukan dalam mode pencampuran aliran. |
300 |
| AudioChannels |
integer |
Yes |
Jumlah saluran audio. Nilai valid:
Parameter ini diperlukan dalam mode pencampuran aliran. Valid values:
|
2 |
| AudioSampleRate |
integer |
Yes |
Laju sampel audio dalam Hz. Nilai valid:
Parameter ini diperlukan dalam mode pencampuran aliran. Valid values:
|
32000 |
| VideoCodec |
string |
No |
Pengkodean video. Nilai valid:
Valid values:
|
H.264 |
| VideoBitrate |
integer |
No |
Laju bitrate video dalam kbps. Nilainya harus berada dalam rentang [1, 10000]. Parameter ini diperlukan dalam mode pencampuran aliran ketika output rekaman diharapkan mengandung video. Parameter ini tidak valid dalam kasus lain. |
5000 |
| VideoFramerate |
integer |
No |
Laju frame video dalam fps. Nilainya harus berada dalam rentang [1, 60]. Parameter ini diperlukan dalam mode pencampuran aliran ketika output rekaman diharapkan mengandung video. Tidak valid dalam kasus lain. |
30 |
| VideoGop |
integer |
No |
GOP video. I-frame ada setiap VideoGop frame. Nilainya harus berada dalam rentang [1, 60]. Parameter ini diperlukan dalam mode pencampuran aliran ketika output rekaman diharapkan mengandung video. Tidak valid dalam kasus lain. |
30 |
| VideoHeight |
integer |
No |
Tinggi video dalam piksel. Nilainya harus berada dalam rentang [0, 1920]. (Nilai default: 0) |
480 |
| VideoWidth |
integer |
No |
Lebar video dalam piksel. Nilainya harus berada dalam rentang [0, 1920]. (Nilai default: 0) |
640 |
| MixLayoutParams |
object |
No |
Parameter tata letak. Biarkan parameter ini kosong dalam mode perekaman aliran tunggal. Parameter ini diperlukan dalam mode perekaman pencampuran aliran ketika output rekaman diharapkan mengandung file non-audio saja. |
|
| MixBackground |
object |
No |
Gambar latar belakang global untuk pencampuran aliran. |
|
| RenderMode |
integer |
No |
Mode tampilan untuk output. Nilai valid:
Valid values:
|
0 |
| Url |
string |
No |
URL gambar latar belakang. Panjang maksimal adalah 2048 karakter. |
https://xxxx.com/photos/my-test-picture.png |
| UserPanes |
array<object> |
No |
Informasi tata letak jendela untuk pengguna yang disubskripsi. Hanya UserId dengan informasi tata letak yang dikonfigurasi yang ditempatkan dalam video. Parameter ini diperlukan dalam mode pencampuran aliran saat merekam file non-hanya-audio. |
|
|
array<object> |
No |
Konfigurasi jendela dalam video. |
||
| UserId |
string |
No |
UserId yang sesuai dengan jendela ini.
|
userA |
| SourceType |
integer |
No |
Tipe aliran input video dari UserId. Mengatur SourceType tidak valid ketika UserId tidak ditentukan. Nilai valid:
Kombinasi UserId dan SourceType yang ditentukan di sini harus disertakan dalam SubscribeUserIdList. Valid values:
|
0 |
| Height |
string |
No |
Tinggi panel sebagai persentase ternormalisasi. Nilainya harus berada dalam rentang [0, 1]. (Nilai default: 0) |
0.5 |
| Width |
string |
No |
Lebar panel sebagai persentase ternormalisasi. Nilainya harus berada dalam rentang [0, 1]. (Nilai default: 0) |
0.5 |
| X |
string |
No |
Koordinat X sebagai persentase ternormalisasi. Nilainya harus berada dalam rentang [0, 1]. (Nilai default: 0) |
0 |
| Y |
string |
No |
Koordinat Y sebagai persentase ternormalisasi. Nilainya harus berada dalam rentang [0, 1]. (Nilai default: 0) |
0 |
| ZOrder |
integer |
No |
Urutan penumpukan. 0 adalah lapisan bawah, lapisan 1 berada di atas lapisan 0, dan seterusnya. (Nilai default: 0) |
0 |
| SubBackground |
object |
No |
Gambar latar belakang sub-panel. Ketika pengguna mematikan kamera, belum memulai pengambilan aliran setelah bergabung, atau meninggalkan saluran di tengah jalan, gambar yang sesuai ditampilkan di posisi tata letak. |
|
| RenderMode |
integer |
No |
Mode tampilan untuk output sub-pane. Nilai valid:
Valid values:
|
0 |
| Url |
string |
No |
URL gambar latar belakang. Panjang maksimal adalah 2048 karakter. |
https://xxxx.com/photos/my-test-pane-picture.png |
| NotifyUrl |
string |
No |
URL untuk menerima Paket callback. Pesan status tugas dikirim ke URL ini melalui POST dalam format JSON. Panjang maksimal adalah 2048 karakter. Untuk detail Paket callback, lihat Dokumentasi. |
http://xxxx/test/mycallback |
| NotifyAuthKey |
string |
No |
Kunci otentikasi untuk Paket callback. Jika tidak ditentukan, tidak ada otentikasi yang dilakukan. Jika ditentukan, panjangnya harus berada dalam rentang [16, 64] karakter dan hanya berisi huruf besar, huruf kecil, dan digit.
|
mytestkeymytestkey |
| NotifyFileUploadedFormat |
array |
No |
Format yang ditentukan di mana Paket callback dikirim ketika event pembuatan file rekaman (RecordFileUploaded) dipicu. |
|
|
string |
No |
Format file spesifik di mana callback diterima. Nilai valid (tidak peka huruf besar/kecil):
Mode penyimpanan VOD tidak didukung. Untuk mode penyimpanan OSS, format yang dipilih harus disertakan dalam format file yang ditentukan di StorageParams.FileInfo. |
MP4 |
|
| MaxIdleTime |
integer |
No |
Periode pengatur waktu tunggu idle. Ketika tugas tetap idle lebih lama dari MaxIdleTime, tugas secara otomatis dihentikan. Unit: detik. Nilainya harus berada dalam rentang [10, 14400], yaitu maksimal 4 jam. (Nilai default: 300 detik)
|
600 |
-
Dalam mode perekaman single-stream:
Anda dapat menyubskripsi aliran kamera dan berbagi layar dari UserId yang sama secara bersamaan, tetapi parameter FileNamePattern dan SliceNamePattern harus menyertakan variabel SourceType untuk mencegah file rekaman saling menimpa.
Menyubskripsi hanya aliran hanya video dari UserId tidak didukung. Dalam mode single-stream, UserInfo.StreamType tidak dapat diatur ke 2.
-
Dalam mode perekaman aliran tunggal:
Jika RecordParams.StreamType diatur ke audio saja (nilai 1), SubscribeParams tidak boleh berisi langganan video saja (nilai SubscribeParams 2).
Jika RecordParams.StreamType diatur ke video saja (nilai 2), SubscribeParams tidak boleh berisi langganan audio saja (nilai SubscribeParams 1).
-
Dalam mode perekaman pencampuran aliran:
Jika RecordParams.StreamType diatur ke audio saja (nilai 1), tidak semua UserId di SubscribeParams dapat dilanggan ke video saja (semua nilai SubscribeParams diatur ke 2).
Jika RecordParams.StreamType diatur ke video saja (nilai 2), tidak semua UserId di SubscribeParams dapat dilanggan ke audio saja (semua nilai SubscribeParams diatur ke 1).
-
Selama perekaman, jika saluran ditutup di tengah jalan, pengguna harus bergabung kembali dan melanjutkan pengambilan aliran dalam periode pengatur waktu tunggu idle. Jika tidak, tugas secara otomatis dihentikan.
Elemen respons
|
Element |
Type |
Description |
Example |
|
object |
Parameter tanggapan. |
||
| RequestId |
string |
ID permintaan. |
******58-5876-****-83CA-B56278****** |
| TaskId |
string |
ID tugas. |
******73-8501-****-8ac1-72295a****** |
Contoh
Respons sukses
JSONformat
{
"RequestId": "******58-5876-****-83CA-B56278******",
"TaskId": "******73-8501-****-8ac1-72295a******"
}
Kode kesalahan
|
HTTP status code |
Error code |
Error message |
Description |
|---|---|---|---|
| 400 | InvalidParameter.NotifyUrl | %s, please check the notifyUrl. | Format parameter NotifyUrl tidak valid. Periksa parameter tersebut. |
| 400 | InvalidParameter.StorageParams.FileInfo | %s, please check the fileInfo of storageParams. | Parameter FileInfo berisi bidang tidak valid. Periksa parameter tersebut. |
| 400 | InvalidParameter.StorageParams.OSSParams | %s, please check the ossParams of storageParams. | Parameter OSSParams berisi bidang tidak valid. Periksa parameter tersebut. |
| 400 | NotFound.OSSBucket | %s, please check the ossBucket of storageParams. | OSSBucket yang ditentukan tidak ada. |
| 400 | InvalidParameter.SubscribeParams.SubscribeUserIdList | %s, please check the subscribeUserIdList of subscribeParams. | Parameter SubscribeUserIdList tidak valid. Periksa parameter tersebut. |
| 400 | InvalidParameter.MixLayoutParams.UserPanes | %s, please check the userPanes of mixLayoutParams. | Parameter UserPanes berisi bidang tidak valid. Periksa parameter tersebut. |
| 400 | InvalidParameter.MixTranscodeParams | %s, please check the transcodeParams. | Parameter MixTranscodeParams berisi bidang tidak valid. Periksa parameter tersebut. |
| 400 | MissingParameter | %s. | Parameter yang diperlukan hilang. |
| 403 | InvalidParameter.UserId | %s, please check the UserId. | Parameter UserId tidak valid. Periksa parameter tersebut. |
| 403 | QuotaExceed.RunningTask | The number of active cloud recording tasks has reached the limit. | Jumlah tugas Catatan cloud aktif telah mencapai batas atas. |
| 404 | InvalidParameter.ChannelId | %s, please check the channelId. | |
| 404 | InvalidParameter.AppId | %s, please check the appId. | Parameter AppId tidak valid. Periksa nilai parameter. |
| 405 | InvalidParameter.StorageParams.VodParams | %s, please check the vodParams of storageParams. | |
| 405 | InvalidParameter.NotifyAuthKey | %s, please check the notifyAuthKey. | |
| 405 | InvalidParameter.MaxIdleTime | %s, please check the maxIdleTime. | |
| 405 | InvalidParameter.RecordParams | %s, please check the recordParams. | |
| 405 | InvalidParameter.StorageParams.StorageType | %s, please check the storageType of storageParams. | Parameter StorageType tidak valid. Periksa nilai parameter. |
| 405 | InvalidParameter.NotifyFileUploadedFormat | %s, please check the notifyFileUploadedFormat. | Parameter NotifyFileUploadedFormat tidak valid. Periksa nilai parameter. |
Lihat Error Codes untuk daftar lengkap.
Catatan rilis
Lihat Release Notes untuk daftar lengkap.