Membuat file indeks M3U8 untuk rentang waktu tertentu.
Deskripsi operasi
Anda telah mengonfigurasi OSS. Untuk informasi lebih lanjut, lihat Mengonfigurasi OSS. Pengindeksan rekaman siaran langsung merekam aliran video siaran langsung dalam format M3U8, menyimpannya di OSS, dan melakukan pemotongan real-time pada file indeks segmen TS yang disimpan.
Untuk membuat indeks rekaman, aliran siaran langsung harus memiliki aktivitas pengambilan aliran. Jika tidak ada streaming langsung dalam rentang waktu yang ditentukan atau NamaStream salah, pembuatan indeks rekaman akan gagal.
Pastikan DomainName, AppName, dan NamaStream benar. Jika tidak, error InvalidStream.NotFound akan dikembalikan.
Interval antara StartTime dan EndTime harus setidaknya sama dengan durasi satu segmen TS (30 detik secara default).
EndTime harus lebih akhir daripada StartTime, dan interval tidak boleh melebihi 4 hari.
Informasi segmen TS hanya disimpan dalam sistem ApsaraVideo Live selama 3 bulan. Anda hanya dapat membuat file M3U8 dari rekaman dalam 3 bulan terakhir.
File segmen TS disimpan di OSS. Periode retensi ditentukan oleh konfigurasi penyimpanan OSS. Untuk informasi lebih lanjut, lihat Pengaturan aturan siklus hidup.
Informasi tentang file indeks M3U8 yang dibuat hanya disimpan dalam sistem ApsaraVideo Live selama 6 bulan. Anda hanya dapat mengkueri informasi file indeks yang dibuat dalam 6 bulan terakhir.
File indeks M3U8 disimpan di OSS. Periode retensi ditentukan oleh konfigurasi penyimpanan OSS.
Jika file M3U8 dan TS disimpan di bucket yang berbeda, path TS dalam file M3U8 berada dalam format HTTP.
Batas QPS
Batas QPS per pengguna tunggal untuk API ini adalah 45 panggilan per detik. Jika batas ini terlampaui, pembatasan kecepatan akan dipicu, 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:CreateLiveStreamRecordIndexFiles |
create |
*Domain.
|
None | None |
Parameter permintaan
|
Parameter |
Type |
Required |
Description |
Example |
| DomainName |
string |
Yes |
Domain streaming Streamer. |
example.com |
| AppName |
string |
Yes |
Nama aplikasi tempat aliran berada. AppName harus cocok dengan AppName di URL ingest agar templat berlaku. Untuk mencocokkan semua nilai AppName, setel parameter ini ke *. |
liveApp**** |
| StreamName |
string |
Yes |
Nama aliran. NamaStream harus cocok dengan NamaStream di URL ingest agar templat berlaku. Untuk mencocokkan semua nilai NamaStream, setel parameter ini ke *. Aliran harus memiliki aktivitas pengambilan aliran aktual di bawah DomainName dan AppName yang ditentukan. Jika tidak, error InvalidStream.NotFound akan dikembalikan. |
liveStream**** |
| OssEndpoint |
string |
Yes |
Titik akhir bucket OSS. |
cn-oss-****.aliyuncs.com |
| OssBucket |
string |
Yes |
Nama bucket OSS. |
liveBucket**** |
| OssObject |
string |
Yes |
Nama file rekaman yang disimpan di OSS. |
{AppName}/{StreamName}/{Date}/{Hour}/{Minute}_{Second}.m3u8 |
| StartTime |
string |
Yes |
Waktu mulai file indeks. File TS yang diunggah setelah waktu ini disertakan dalam file indeks. Tentukan waktu dalam format yyyy-MM-ddTHH:mm:ssZ (UTC). |
2017-12-21T08:00:00Z |
| EndTime |
string |
Yes |
Waktu akhir file indeks. File TS yang diunggah sebelum waktu ini disertakan dalam file indeks. Tentukan waktu dalam format yyyy-MM-ddTHH:mm:ssZ (UTC). |
2017-12-22T08:00:00Z |
| EndTimeIncluded |
boolean |
No |
Apakah akan menyertakan waktu akhir. Jika Anda menyetel parameter ini ke true, sistem akan mencoba menyertakan satu file TS tambahan sehingga file indeks yang dibuat sepenuhnya mencakup periode antara StartTime dan EndTime. |
false |
Elemen respons
|
Element |
Type |
Description |
Example |
|
object |
|||
| RequestId |
string |
ID permintaan. |
550439A3-F8EC-4CA2-BB62-B9DB43EEEF30 |
| RecordInfo |
object |
Informasi konfigurasi rekaman. |
|
| RecordUrl |
string |
URL file indeks. |
http://*****/atestObject.m3u8 |
| StreamName |
string |
Nama aliran. |
liveStream**** |
| CreateTime |
string |
Waktu pembuatan. Waktu dalam format yyyy-MM-ddTHH:mm:ssZ (UTC). |
2016-05-27T09:40:56Z |
| RecordId |
string |
ID file indeks. |
c4d7f0a4-b506-43f9-8de3-07732c3f**** |
| Height |
integer |
Tinggi video. |
480 |
| OssBucket |
string |
Nama bucket OSS. |
liveBucket**** |
| DomainName |
string |
Domain streaming Streamer. |
example.com |
| OssObject |
string |
Nama file rekaman yang disimpan di OSS. |
liveObject****.m3u8 |
| EndTime |
string |
Waktu akhir. Waktu dalam format yyyy-MM-ddTHH:mm:ssZ (UTC). |
2015-12-01T07:40:00Z |
| AppName |
string |
Nama aplikasi tempat aliran berada. |
liveApp**** |
| StartTime |
string |
Waktu mulai. Waktu dalam format yyyy-MM-ddTHH:mm:ssZ (UTC). |
2015-12-01T07:36:00Z |
| Width |
integer |
Lebar video. |
640 |
| Duration |
number |
Durasi rekaman. Unit: detik. |
20 |
| OssEndpoint |
string |
Titik akhir bucket OSS. |
cn-oss-****.aliyuncs.com |
Contoh
Respons sukses
JSONformat
{
"RequestId": "550439A3-F8EC-4CA2-BB62-B9DB43EEEF30",
"RecordInfo": {
"RecordUrl": "http://*****/atestObject.m3u8",
"StreamName": "liveStream****",
"CreateTime": "2016-05-27T09:40:56Z",
"RecordId": "c4d7f0a4-b506-43f9-8de3-07732c3f****",
"Height": 480,
"OssBucket": "liveBucket****",
"DomainName": "example.com",
"OssObject": "liveObject****.m3u8",
"EndTime": "2015-12-01T07:40:00Z",
"AppName": "liveApp****",
"StartTime": "2015-12-01T07:36:00Z",
"Width": 640,
"Duration": 20,
"OssEndpoint": "cn-oss-****.aliyuncs.com"
}
}
Kode kesalahan
|
HTTP status code |
Error code |
Error message |
Description |
|---|---|---|---|
| 400 | InvalidStartTime.Mismatch | Specified StartTime does not math the current time. | |
| 400 | InvalidStartTime.Malformed | Specified StartTime is malformed. | |
| 400 | InvalidParams | invalid params | |
| 400 | InvalidEndTime.Malformed | Specified EndTime is malformed. | |
| 400 | InvalidEndTime.Mismatch | Specified end time does not math the specified start time. | Waktu akhir tidak cocok dengan waktu mulai. Verifikasi bahwa waktu konsisten. |
| 400 | InvalidOssEndpoint.Malformed | Specified OssEndpoint is malformed. | |
| 400 | InvalidOssBucket.Malformed | Specified OssBucket is malformed. | Parameter OSSBucket tidak valid. Pastikan parameter OSS BUCKET benar. |
| 400 | InvalidOssObject.Malformed | Specified OssObject is malformed. | |
| 400 | InvalidStream.NotFound | Speicified stream does not exist. | |
| 400 | InvalidConfig.Changed | The oss bucket info between StartTime and EndTime has changed. | Waktu mulai dan waktu akhir bucket OSS telah berubah. |
| 400 | NoRecordContent | The record content between StartTime and EndTime is empty. | Tidak ada catatan yang ditemukan antara StartTime dan EndTime. |
| 400 | RecordContentExceed | The record content between StartTime and EndTime is exceeded, please narrow down the range. | |
| 400 | OperationNotSupport | The Operation is not support for flv/mp4 format or live to vod record. | |
| 500 | InternalError | The request processing has failed due to some unknown error, exception or failure. | |
| 404 | InvalidBucket.NotFound | The bucket does not belong to you. | Bucket yang ditentukan bukan milik pengguna saat ini. |
Lihat Error Codes untuk daftar lengkap.
Catatan rilis
Lihat Release Notes untuk daftar lengkap.