Updates a recording configuration for an application or a live stream.
Usage notes
Obtain the main streaming domain, and then call this operation to update a recording configuration.
QPS limit
You can call this operation up to 30 times per second per account. Requests that exceed this limit are dropped and you will experience service interruptions. We recommend that you take note of this limit when you call this operation. For more information, see QPS limit on an API operation in ApsaraVideo Live.
Debugging
Request parameters
Parameter |
Type |
Required |
Example |
Description |
Action | String | Yes | UpdateLiveAppRecordConfig | The operation that you want to perform. Set the value to UpdateLiveAppRecordConfig. |
DomainName | String | Yes | example.com | The main streaming domain. |
AppName | String | Yes | liveApp**** | The name of the application to which the live stream belongs. |
OssEndpoint | String | Yes | learn.developer.aliyundoc.com | The endpoint of the Object Storage Service (OSS) bucket. To store live stream recordings in OSS, you need to create an OSS bucket in advance. For more information, see Configure OSS. |
StreamName | String | No | teststream | The name of the live stream. |
StartTime | String | No | 2018-04-10T09:57:21Z | The recording start time. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC. Note The start time must be within seven days after the stream ingest starts. This parameter takes effect only for the live stream specified by the StreamName parameter. If the StreamName parameter is not specified, this parameter does not take effect. |
EndTime | String | No | 2018-04-16T09:57:21Z | The recording end time. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC. Note The time range that is specified by the EndTime and StartTime parameters must be less than or equal to seven days. If the value exceeds seven days, ApsaraVideo Live considers seven days as the time range. This parameter takes effect only for the live stream specified by the StreamName parameter. If the StreamName parameter is not specified, this parameter does not take effect. |
OnDemand | Integer | No | 1 | Configures on-demand recording. Valid values:
Note If you set the OnDemand parameter to 1, you need to call the AddLiveRecordNotifyConfig operation to configure the OnDemandUrl parameter. Otherwise, ApsaraVideo Live does not perform on-demand recording. |
DelayTime | Integer | No | 180 | The interruption duration for merge. If the stream interruption duration exceeds the specified duration, a new recording is generated. The value of this parameter ranges from 15 to 21600. |
RecordFormat.N.SliceDuration | Integer | No | 30 | The duration of a single segment. Unit: seconds. Important This parameter takes effect only if you set the RecordFormat.N.Format parameter to m3u8.
If you do not specify this parameter, the default value is 30 seconds. Valid values: 5 to 30. |
RecordFormat.N.CycleDuration | Integer | No | 1 | The recording period. Unit: seconds. If you do not specify this parameter, the default value 6 hours is used. Note
|
RecordFormat.N.Format | String | No | m3u8 | The recording format. Supported formats include M3U8, FLV, and MP4. Valid values: Important You need to specify at lease one of the RecordFormat and TranscodeRecordFormat parameters.
|
TranscodeRecordFormat.N.SliceDuration | Integer | No | 30 | The duration of a single segment in the transcoded stream recording. Unit: seconds. Important This parameter takes effect only if you set the TranscodeRecordFormat.N.Format parameter to m3u8.
If you do not specify this parameter, the default value 30 seconds is used. Valid values: 5 to 30. |
TranscodeRecordFormat.N.CycleDuration | Integer | No | 21600 | The transcoded stream recording period. Unit: seconds. If you do not specify this parameter, the default value 6 hours is used. |
TranscodeRecordFormat.N.Format | String | No | m3u8 | The format of the transcoded stream recording. Supported formats include M3U8, FLV, and MP4. Valid values:
|
TranscodeTemplates.N | String | No | sd |
|
Response parameters
Parameter |
Type |
Example |
Description |
RequestId | String | 16A96B9A-F203-4EC5-8E43-CB92E68F4CD8 | The request ID. |
Examples
Sample requests
http(s)://live.aliyuncs.com/?Action=UpdateLiveAppRecordConfig
&DomainName=example.com
&AppName=liveApp****
&OssEndpoint=learn.developer.aliyundoc.com
&StreamName=teststream
&StartTime=2018-04-10T09:57:21Z
&EndTime=2018-04-16T09:57:21Z
&OnDemand=1
&RecordFormat=[{"SliceDuration":30,"CycleDuration":1,"Format":"m3u8"}]
&TranscodeRecordFormat=[{"SliceDuration":30,"CycleDuration":21600,"Format":"m3u8"}]
&TranscodeTemplates=["sd"]
&<Common request parameters>
Sample success responses
XML
format
HTTP/1.1 200 OK
Content-Type:application/xml
<UpdateLiveAppRecordConfigResponse>
<RequestId>16A96B9A-F203-4EC5-8E43-CB92E68F4CD8</RequestId>
</UpdateLiveAppRecordConfigResponse>
JSON
format
HTTP/1.1 200 OK
Content-Type:application/json
{
"RequestId" : "16A96B9A-F203-4EC5-8E43-CB92E68F4CD8"
}
Error codes
HttpCode |
Error code |
Error message |
Description |
400 | InvalidOssBucket.Malformed | Specified parameter OssBucket is not valid. | The error message returned because the OSS bucket is invalid. Check whether the value of the OssBucket parameter is valid. |
400 | InvalidOssBucket.NotFound | The parameter OssBucket does not exist. | The error message returned because the OSS bucket is invalid. Check whether the value of the OssBucket parameter is valid. |
400 | InvalidFormat.Malformed | Specified parameter Format is not valid. | The error message returned because the format specified for the recording is invalid. Check whether the value of the RecordFormat.N.Format parameter is valid. |
400 | InvalidCycleDuration.Malformed | Specified CycleDuration Format is not valid. | The error message returned because the format of the recording period is invalid. Check whether the value of the RecordFormat.N.CycleDuration parameter is valid. |
400 | MissingOssObjectPrefix | OssObjectPrefix is mandatory for this action. | The error message returned because the name of the recording is not specified. Check whether the value of the RecordFormat.N.OssObjectPrefix parameter is valid. |
400 | InvalidOssObjectPrefix.Malformed | Specified parameter OssObjectPrefix is not valid. | The error message returned because the name of the recording is invalid. Check whether the value of the RecordFormat.N.OssObjectPrefix parameter is valid. |
400 | InvalidSliceOssObjectPrefix.Malformed | Specified parameter SliceOssObjectPrefix is not valid. | The error message returned because the name of the segment is invalid. Check whether the value of the RecordFormat.N.SliceOssObjectPrefix parameter is valid. |
400 | ConfigAlreadyExists | Config has already exist. | The error message returned because an existing recording configuration is found. |
400 | InvalidStartTime.Malformed | Specified StartTime is malformed. | The error message returned because the value specified for StartTime is invalid. Check whether the value of the StartTime parameter is valid. |
400 | InvalidEndTime.Malformed | Specified EndTime is malformed. | The error message returned because the value specified for EndTime is invalid. Check whether the value of the EndTime parameter is valid. |
For a list of error codes, see Service error codes.