調用StartRecordTask錄制視頻任務。
使用說明
-
調用本接口前,您必須已經調用AddRecordTemplate添加錄制配置模板。
QPS限制
本接口的單用戶QPS限制為500次/秒。超過限制,API調用會被限流,這可能會影響您的業務,請合理調用。更多信息,請參見QPS限制。
調試
您可以在OpenAPI Explorer中直接運行該接口,免去您計算簽名的困擾。運行成功后,OpenAPI Explorer可以自動生成SDK代碼示例。
請求參數
名稱 | 類型 | 是否必選 | 示例值 | 描述 |
---|---|---|---|---|
Action | String | 是 | StartRecordTask |
系統規定參數。取值:StartRecordTask。 |
SubSpecUsers.N | String | 否 | userID |
指定該任務訂閱的用戶列表,默認訂閱頻道內全部用戶,N表示的是數組的下標,取值范圍:1~16。 說明 N需要從1開始并從小到大,不能中斷,要連續。
|
SubSpecAudioUsers.N | String | 否 | audioUserID |
指定訂閱房間里有哪些用戶音頻流(輸入allStream表示混所有人音頻流)。N表示的是數組的下標,取值范圍:1~16。 說明 N需要從1開始并從小到大,不能中斷,要連續。
|
SubSpecShareScreenUsers.N | String | 否 | videoUserID |
指定訂閱房間里有哪些用戶屏幕共享流(輸入allStream表示混所有人屏幕共享流)。N表示的是數組的下標,取值范圍:1~16。 說明 N需要從1開始并從小到大,不能中斷,要連續。
|
SubSpecCameraUsers.N | String | 否 | cameraUserID |
指定訂閱房間里有哪些用戶攝像頭流(輸入allStream表示混所有人攝像頭流)。N表示的是數組的下標,取值范圍:1~16。 說明 N需要從1開始并從小到大,不能中斷,要連續。
|
UnsubSpecAudioUsers.N | String | 否 | audioUserID2 |
指定非訂閱房間里有哪些用戶音頻流(輸入allStream表示混所有人音頻流)。N表示的是數組的下標,取值范圍:1~16。 說明 N需要從1開始并從小到大,不能中斷,要連續。
|
UnsubSpecShareScreenUsers.N | String | 否 | videoUserID2 |
指定非訂閱房間里有哪些用戶屏幕共享流(輸入allStream表示混所有人屏幕共享流)。N表示的是數組的下標,取值范圍:1~16。 說明 N需要從1開始并從小到大,不能中斷,要連續。
|
UnsubSpecCameraUsers.N | String | 否 | cameraUserID2 |
指定非訂閱房間里有哪些用戶攝像頭流(輸入allStream表示混所有人攝像頭流)。N表示的是數組的下標,取值范圍:1~16。 說明 N需要從1開始并從小到大,不能中斷,要連續。
|
UserPanes.N.Images.N.Width | Float | 否 | 0.2456 |
窗格寬,歸一化百分比。 |
UserPanes.N.Images.N.Height | Float | 否 | 0.2456 |
窗格高,歸一化百分比。 |
UserPanes.N.Images.N.Y | Float | 否 | 0.7576 |
坐標Y,歸一化百分比。 |
UserPanes.N.Images.N.Url | String | 否 | https://www.example.com/image.jpg |
圖片的HTTP或HTTPS地址。 |
UserPanes.N.Images.N.Display | Integer | 否 | 1 |
圖片顯示,取值:
|
UserPanes.N.Images.N.ZOrder | Integer | 否 | 0 |
疊放順序,0為最底層,1層在0層之上,以此類推。 |
UserPanes.N.Images.N.X | Float | 否 | 0.7576 |
坐標X,歸一化百分比。 |
UserPanes.N.UserId | String | 否 | TestId |
對應布局框格的用戶ID。N的取值:1~16。 |
UserPanes.N.Texts.N.FontType | Integer | 否 | 0 |
字體類型。取值:
|
UserPanes.N.Texts.N.FontColor | Integer | 否 | 1 |
文字顏色(RGB)。計算公式為R+G×256+B×65536,R(紅)、G(綠)、B(藍)的取值:0~255。 |
UserPanes.N.Texts.N.Y | Float | 否 | 0.7576 |
坐標Y,歸一化百分比。 |
UserPanes.N.Texts.N.Text | String | 否 | text |
文本內容。 |
UserPanes.N.Texts.N.ZOrder | Integer | 否 | 0 |
疊放順序,0為最底層,1層在0層之上,以此類推。 |
UserPanes.N.Texts.N.X | Float | 否 | 0.7576 |
坐標X,歸一化百分比。 |
UserPanes.N.Texts.N.FontSize | Integer | 否 | 1 |
字體大小。字體合理范圍(0, 72]。 |
UserPanes.N.SourceType | String | 否 | camera |
對應布局的用戶視頻輸入。取值:
|
UserPanes.N.PaneId | Integer | 否 | 2 |
窗格ID,取值:0~15。 說明
|
LayoutIds.N | Long | 否 | 1 |
布局ID數據,您可在一次任務中指定多個布局,系統會根據當時頻道中的人數進行切換。數組下標取值范圍:1~16,相當于一個旁路任務中最多可以同時設置16種布局。詳情請參見布局。 說明
|
AppId | String | 是 | yourAppId |
應用ID。通過控制臺創建和查詢,僅支持傳單個ID。 |
ChannelId | String | 是 | yourChannelId |
頻道ID。僅支持傳單個ID。 |
TaskId | String | 是 | yourTaskId |
任務ID。僅支持傳單個ID,需保證唯一。由1~55位大小寫字母、數字、下劃線、短劃線(-)組成。 |
TaskProfile | String | 否 | 4IN_1080P |
任務計費配置,根據您的不同設置,進行收費。請參見下文中的TaskProfile枚舉值。 說明
|
MediaEncode | Integer | 否 | 20 |
編碼選項,請參見下文中的MediaEncode枚舉值。 |
TemplateId | String | 是 | 76dasgb**** |
配置模板ID。獲取模板ID,請參見AddRecordTemplate。 |
SourceType | String | 否 | camera |
單流錄制模式下視頻源,取值:
說明 如果視頻源為shareScreen,且僅推攝像頭流,則錄制攝像頭流;如果同時推屏幕共享流,則錄制屏幕共享流。
|
StreamType | Integer | 否 | 0 |
單流錄制模式,取值:
|
MixMode | Integer | 否 | 1 |
錄制模式,取值:
說明
|
CropMode | Long | 否 | 1 |
視頻的裁剪方式。取值:
|
ID |
寬 |
高 |
碼流(kps) |
幀率(fps) |
---|---|---|---|---|
0 |
0 |
0 |
64 |
0 |
1 |
640 |
360 |
500 |
15 |
54 |
360 |
640 |
500 |
30 |
53 |
360 |
640 |
500 |
15 |
52 |
640 |
360 |
500 |
30 |
10 |
960 |
540 |
700 |
24 |
20 |
1280 |
720 |
1024 |
25 |
22 |
720 |
1280 |
1024 |
30 |
23 |
800 |
600 |
1024 |
30 |
30 |
1920 |
1080 |
2048 |
30 |
31 |
1080 |
1920 |
2048 |
30 |
24 |
750 |
780 |
1024 |
30 |
25 |
750 |
540 |
700 |
30 |
26 |
720 |
1280 |
2048 |
30 |
27 |
1280 |
720 |
2048 |
30 |
28 |
1280 |
720 |
3096 |
30 |
32 |
1024 |
768 |
1024 |
24 |
33 |
1280 |
960 |
1024 |
24 |
34 |
1024 |
768 |
2048 |
24 |
35 |
1280 |
960 |
2048 |
24 |
36 |
1280 |
720 |
1024 |
24 |
37 |
1280 |
720 |
2048 |
24 |
38 |
540 |
960 |
750 |
15 |
39 |
540 |
960 |
1500 |
30 |
40 |
1280 |
720 |
1200 |
15 |
41 |
720 |
1280 |
1200 |
15 |
42 |
720 |
1280 |
1500 |
15 |
43 |
540 |
960 |
1200 |
15 |
- |
1080P |
720P |
360P |
Audio |
---|---|---|---|---|
1IN |
1IN_1080P |
1IN_720P |
1IN_360P |
無 |
2IN |
2IN_1080P |
2IN_720P |
2IN_360P |
無 |
4IN |
4IN_1080P |
4IN_720P |
4IN_360P |
無 |
9IN |
9IN_1080P |
9IN_720P |
9IN_360P |
無 |
12IN |
12IN_1080P |
12IN_720P |
12IN_360P |
無 |
16IN |
16IN_1080P |
16IN_720P |
16IN_360P |
無 |
Mixed |
無 |
無 |
無 |
Mixed_Audio |
返回數據
名稱 | 類型 | 示例值 | 描述 |
---|---|---|---|
RequestId | String | 760bad53276431c499e30dc36f6b**** |
請求ID。 |
錄制產生的結果文件寫入到用戶MNS隊列或者將結果文件通過JSON格式以HTTP POST方式回調,參數定義如下所示:
參數名稱 |
類型 |
說明 |
---|---|---|
AppId |
String |
應用ID。 |
ChannelId |
String |
頻道ID。 |
TaskId |
String |
錄制任務ID。 |
Event |
String |
事件類型,目前僅支持FileCreated事件。 |
MsgId |
String |
消息ID。 |
StartTime |
String |
錄制開始時間。 |
StopTime |
String |
錄制結束時間。 |
Url |
String |
錄制到OSS的文件HTTP地址。 |
示例說明:
{
"AppId": "9q****",
"ChannelId": "record-004",
"Duration": 1792.257,
"Event": "FileCreated",
"MsgId": "83eaaf62-19e8-45df-929b-79f4753b****",
"StartTime": "2020-09-02T10:23:54Z",
"StopTime": "2020-09-02T10:53:46Z",
"TaskId": "task-005",
"Url": "http://rtc-record.****.aliyuncs.com/record/0902-1/9q****/record-004_task-005/2020-09-02-18-23-56_2020-09-02-18-53-56.m3u8"
}
示例
請求示例
https://rtc.aliyuncs.com/?Action=StartRecordTask
&AppId=yourAppId
&ChannelId=yourChannelId
&TaskId=yourTaskId
&TemplateId=76dasgb****
&<公共請求參數>
正常返回示例
XML
格式
HTTP/1.1 200 OK
Content-Type:application/xml
<StartRecordTaskResponse>
<RequestId>760bad53276431c499e30dc36f6b****</RequestId>
</StartRecordTaskResponse>
JSON
格式
HTTP/1.1 200 OK
Content-Type:application/json
{
"RequestId" : "760bad53276431c499e30dc36f6b****"
}
特殊錯誤碼
錯誤代碼 |
描述 |
HTTP狀態碼 |
語義 |
---|---|---|---|
InternalError |
The request processing has failed due to some unknown error, exception or failure. |
500 |
內部錯誤。 |
TaskExisted |
task is already existed |
200 |
任務已存在。 |
InvalidLayoutID.Malformed |
The specified layout ID is malformed |
400 |
參數LayoutId錯誤。 |
InvalidMediaEncode.Malformed |
The specifed MediaEncode is malformed |
400 |
參數MediaEncode錯誤。 |
InvalidBackgroundColor.Malformed |
The specifed background color is malformed |
400 |
參數BackgroundColor錯誤。 |
InternalError |
The request processing has failed due to some unknown error, exception or failure. |
500 |
內部錯誤。 |