全部產品
Search
文件中心

ApsaraVideo Live:CreateLiveStreamRecordIndexFiles - 建立錄製索引檔案

更新時間:Aug 28, 2025

建立某個時間範圍的M3U8索引檔案。

介面說明

您已配置 OSS,具體操作,請參見配置 OSS。 直播錄製索引是將ApsaraVideo for Live流以 M3U8 的格式進行錄製,儲存在 OSS 中後,對已儲存的 TS 分區索引檔案進行即時的剪輯處理。

說明
  • 建立錄製索引必保證直播流發生過推流行為,如果設定的時間內未發生過直播或直播流名稱錯誤等會導致建立錄製索引失敗。

  • 請確保 DomainName/AppName/StreamName 都是正確的,否則會返回 InvalidStream.NotFound 錯誤。

  • StartTime 和 EndTime 的間隔至少是一片 TS 的時間長度(預設為 30s)。

  • EndTime 要大於 StartTime,並且間隔最多不能超過 4 天。

  • TS 分區資訊在ApsaraVideo for Live系統中僅儲存 3 個月,建立 M3U8 檔案只能選擇最近 3 個月的錄製內容。

  • TS 分區檔案儲存體在 OSS 中,儲存時間由 OSS 的儲存配置決定。詳細資料,請參見設定生命週期規則

  • 建立好的 M3U8 索引檔案的資訊在ApsaraVideo for Live系統中僅儲存 6 個月,若要查詢僅能查詢 6 個月內建立的索引檔案的資訊。

  • M3U8 索引檔案儲存體在 OSS 中,儲存時間由 OSS 的儲存配置決定。

  • 當 M3U8 和 TS 的 bucket 不同時,M3U8 裡的 TS 路徑將會是 HTTP 格式。

QPS 限制

本介面的單使用者 QPS 限制為 45 次/秒。超過限制,API 呼叫會被限流,這可能會影響您的業務,請合理調用。

調試

您可以在OpenAPI Explorer中直接運行該介面,免去您計算簽名的困擾。運行成功後,OpenAPI Explorer可以自動產生SDK程式碼範例。

調試

授權資訊

下表是API對應的授權資訊,可以在RAM權限原則語句的Action元素中使用,用來給RAM使用者或RAM角色授予調用此API的許可權。具體說明如下:

  • 操作:是指具體的許可權點。

  • 存取層級:是指每個操作的存取層級,取值為寫入(Write)、讀取(Read)或列出(List)。

  • 資源類型:是指操作中支援授權的資源類型。具體說明如下:

    • 對於必選的資源類型,用前面加 * 表示。

    • 對於不支援資源級授權的操作,用全部資源表示。

  • 條件關鍵字:是指雲產品自身定義的條件關鍵字。

  • 關聯操作:是指成功執行操作所需要的其他許可權。操作者必須同時具備關聯操作的許可權,操作才能成功。

操作

存取層級

資源類型

條件關鍵字

關聯操作

live:CreateLiveStreamRecordIndexFiles

create

*Domain

acs:cdn:*:{#accountId}:domain/{#DomainName}

請求參數

名稱

類型

必填

描述

樣本值

DomainName

string

主播流網域名稱。

example.com

AppName

string

播流所屬應用程式名稱。AppName 名稱與推流地址中的 AppName 名稱對應,模板才會生效。若不限制 AppName 可填*,即可匹配所有 AppName。

liveApp****

StreamName

string

播流名稱。StreamName 名稱與推流地址中的 StreamName 名稱對應,模板才會生效。若不限制 StreamName 可填*,即可匹配所有 StreamName。

liveStream****

OssEndpoint

string

OSS 儲存 Endpoint 名稱。

cn-oss-****.aliyuncs.com

OssBucket

string

OSS 儲存 Bucket 名稱。

liveBucket****

OssObject

string

OSS 儲存的錄製檔案名稱。

{AppName}/{StreamName}/{Date}/{Hour}/{Minute}_{Second}.m3u8

StartTime

string

索引檔案的開始時間。ts 檔案的上傳時間在此之後則會被包含進索引檔案。格式為:yyyy-MM-ddTHH:mm:ssZ(UTC 時間)。

2017-12-21T08:00:00Z

EndTime

string

索引檔案的結束時間。ts 檔案的上傳時間在此之前則會被包含進索引檔案。格式為:yyyy-MM-ddTHH:mm:ssZ(UTC 時間)。

2017-12-22T08:00:00Z

EndTimeIncluded

boolean

是否包含結束時間。傳 true 會嘗試多包含一個 ts 檔案,建立的索引檔案會完整覆蓋 StartTime 和 EndTime。

false

返回參數

名稱

類型

描述

樣本值

object

RequestId

string

請求 ID。

550439A3-F8EC-4CA2-BB62-B9DB43EEEF30

RecordInfo

object

錄製配置資訊。

RecordUrl

string

索引檔案地址。

http://*****/atestObject.m3u8

StreamName

string

播流名稱。

liveStream****

CreateTime

string

建立時間。格式為:yyyy-MM-ddTHH:mm:ssZ(UTC 時間)。

2016-05-27T09:40:56Z

RecordId

string

索引檔案 ID。

c4d7f0a4-b506-43f9-8de3-07732c3f****

Height

integer

視頻高。

480

OssBucket

string

OSS 儲存 Bucket 名稱。

liveBucket****

DomainName

string

主播流網域名稱。

example.com

OssObject

string

OSS 儲存的錄製檔案名稱。

liveObject****.m3u8

EndTime

string

結束時間。格式為:yyyy-MM-ddTHH:mm:ssZ(UTC 時間)。

2015-12-01T07:40:00Z

AppName

string

播流所屬應用程式名稱。

liveApp****

StartTime

string

開始時間。格式為:yyyy-MM-ddTHH:mm:ssZ(UTC 時間)。

2015-12-01T07:36:00Z

Width

integer

視頻寬。

640

Duration

number

錄製時間長度。單位:秒。

20

OssEndpoint

string

OSS 儲存 Endpoint 名稱。

cn-oss-****.aliyuncs.com

樣本

正常返回樣本

JSON格式

{
  "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"
  }
}

錯誤碼

HTTP status code

錯誤碼

錯誤資訊

描述

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. 結束時間與開始時間不匹配,請您確認時間的匹配度。
400 InvalidOssEndpoint.Malformed Specified OssEndpoint is malformed.
400 InvalidOssBucket.Malformed Specified OssBucket is malformed. OSSBucket參數錯誤,請您確認該OSS BUCKET參數是否正確。
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. ossbucket開始結束時間已經改變。
400 NoRecordContent The record content between StartTime and EndTime is empty. StartTime和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不屬於目前使用者。

訪問錯誤中心查看更多錯誤碼。

變更歷史

更多資訊,參考變更詳情