开始录制后,你可以调用 query
方法查询录制状态。
该 API 需要在 URL 中传入以下参数。
参数 | 类型 | 描述 |
---|---|---|
appid |
String | 你的项目使用的 App ID。必须使用和待录制的频道相同的 App ID。 |
resourceid |
String | 通过 acquire 请求获取的 resource ID。 |
sid |
String | 通过 start 请求获取的录制 ID。 |
mode |
String | 录制模式,支持单流模式 individual 、合流模式 mix 、页面录制模式 web 。 |
Content-Type
: application/json
Authorization
: 该字段的值需参考认证说明。无请求包体。
请求 URL:
https://api.sd-rtn.com/v1/apps/{appid}/cloud_recording/resourceid/{resourceid}/sid/{sid}/mode/{mode}/query
Content-type
为 application/json;charset=utf-8
Authorization
为 Basic authorization,生成方法请参考 RESTful API 认证。
如果返回的 HTTP 状态码为 200
,表示请求成功,响应包体中包含以下字段:
resourceId
:String 类型,云端录制使用的 resource ID。sid
:String 类型,录制 ID。serverResponse
:JSON Object,服务器返回的具体信息。该字段中的子元素与你在 start
请求中的设置有关。单流视频截图场景只会返回 status
和 sliceStartTime
字段,页面录制场景只会返回 status
和 extensionServiceState
字段,其他场景返回 status
、fileListMode
、fileList
和 sliceStartTime
字段。fileListMode
:String 类型,fileList
字段的数据格式。"string"
:fileList
为 String 类型。合流模式下,如果 avFileType
设置为 ["hls"]
,fileListMode
为 "string"
。"json"
:fileList
为 JSON Array 类型。单流模式下,或合流模式下 avFileType
设置为 ["hls","mp4"]
时,fileListMode
为 "json"
。fileList
:当 fileListMode
为 "string"
时,fileList
为 String 类型,录制产生的 M3U8 文件的文件名。当 fileListMode
为 "json"
时, fileList
为 JSON Array,由每个录制文件的具体信息组成的数组。如果你设置了 snapshotConfig
,则不会返回该字段。一个录制文件的具体信息包括以下字段:fileName
:String 类型,录制产生的 M3U8 文件和 MP4 文件的文件名。trackType
:String 类型,录制文件的类型。"audio"
:纯音频文件。"video"
:纯视频文件。"audio_and_video"
:音视频文件。uid
:String 类型,用户 UID,表示录制的是哪个用户的音频流或视频流。合流录制模式下,uid
为 "0"
。mixedAllUser
:Boolean 类型,用户是否是分开录制的。true
:所有用户合并在一个录制文件中。false
:每个用户分开录制。isPlayable
:Boolean 类型,是否可以在线播放。true
:可以在线播放。false
:无法在线播放。sliceStartTime
:Number 类型,该文件的录制开始时间,Unix 时间戳,单位为毫秒。status
:Number 类型,当前云服务的状态。0
:没有开始云服务。1
:云服务初始化完成。2
:云服务组件开始启动。3
:云服务部分组件启动完成。4
:云服务所有组件启动完成。5
:云服务正在进行中。6
:云服务收到停止请求。7
:云服务所有组件均停止。8
:云服务已退出。20
:云服务异常退出。sliceStartTime
: Number 类型,录制开始的时间,Unix 时间戳,单位为毫秒。extensionServiceState
: JSON Array,由每个服务的状态组成的数组。各扩展服务状态数组字段说明详见页面录制服务和页面录制转推到 CDN 服务。如果 HTTP 状态码不为 200
,请参考响应状态码排查问题。
serviceName
:String 类型,服务类型。 "web_recorder_service"
代表页面录制服务。payload
:JSON Object。该服务的状态信息。state
:String 类型,将订阅内容上传至扩展服务的状态。"init"
:服务正在初始化。"inProgress"
:服务启动完成,正在进行中。"exit"
:服务退出。fileList
:JSON Array。由每个录制文件的具体信息组成的数组。fileName
:String 类型,录制产生的 M3U8 或 MP4 文件的文件名。sliceStartTime
:Number 类型,该文件的录制开始时间,Unix 时间戳,单位为毫秒。onhold
:Bool 类型。页面录制是否处于暂停状态。true
:页面录制处于暂停状态。false
:页面录制处于运行状态。serviceName
:String 类型,服务类型。 "rtmp_publish_service"
代表页面录制转推 CDN 服务。payload
:JSON Object。该服务的状态信息。status
:String 类型,页面录制当前的推流状态,包括以下状态:"connecting"
:正在连接 CDN 服务器。"publishing"
:正在推流。"onhold"
:设置是否暂停推流。"disconnected"
:连接 CDN 服务器失败,声网建议你更换 CDN 推流地址。{
"resourceId":"JyvK8nXHuV1BE64GDkAaBGEscvtHW7v8BrQoRPCHxmeVxwY22-x-kv4GdPcjZeMzoCBUCOr9q-k6wBWMC7SaAkZ_4nO3JLqYwM1bL1n6wKnnD9EC9waxJboci9KUz2WZ4YJrmcJmA7xWkzs_L3AnNwdtcI1kr_u1cWFmi9BWAWAlNd7S7gfoGuH0tGi6CNaOomvr7-ILjPXdCYwgty1hwT6tbAuaW1eqR0kOYTO0Z1SobpBxu1czSFh1GbzGvTZG",
"sid":"38f8e3cfdc474cd56fc1ceba380d7e1a",
"serverResponse":{
"status":5,
"fileListMode":"json",
"fileList":[
{
"fileName":"aaaa/432efaf2144e051bb32fb490db89c462_httpClient463224__uid_s_123__uid_e_audio.m3u8",
"trackType":"audio",
"uid":"123",
"mixedAllUser":false,
"isPlayable":true,
"sliceStartTime":1562724971626
},
{
"fileName":"aaaa/432efaf2144e051bb32fb490db89c462_httpClient463224__uid_s_123__uid_e_video.m3u8",
"trackType":"video",
"uid":"123",
"mixedAllUser":false,
"isPlayable":false,
"sliceStartTime":1562724971626
},
{
"fileName":"aaaa/432efaf2144e051bb32fb490db89c462_httpClient463224__uid_s_456__uid_e_audio.m3u8",
"trackType":"audio",
"uid":"456",
"mixedAllUser":false,
"isPlayable":true,
"sliceStartTime":1562724971626
},
{
"fileName":"aaaa/432efaf2144e051bb32fb490db89c462_httpClient463224__uid_s_456__uid_e_video.m3u8",
"trackType":"video",
"uid":"456",
"mixedAllUser":false,
"isPlayable":false,
"sliceStartTime":1562724971626
}
],
"sliceStartTime":1562724971626
}
}
{
"resourceId":"JyvK8nXHuV1BE64GDkAaBGEscvtHW7v8BrQoRPCHxmeVxwY22-x-kv4GdPcjZeMzoCBUCOr9q-k6wBWMC7SaAkZ_4nO3JLqYwM1bL1n6wKnnD9EC9waxJboci9KUz2WZ4YJrmcJmA7xWkzs_L3AnNwdtcI1kr_u1cWFmi9BWAWAlNd7S7gfoGuH0tGi6CNaOomvr7-ILjPXdCYwgty1hwT6tbAuaW1eqR0kOYTO0Z1SobpBxu1czSFh1GbzGvTZG",
"sid":"38f8e3cfdc474cd56fc1ceba380d7e1a",
"serverResponse":{
"status":5,
"sliceStartTime":1562724971626
}
}
{
"resourceId":"JyvK8nXHuV1BE64GDkAaBGEscvtHW7v8BrQoRPCHxmeVxwY22-x-kv4GdPcjZeMzoCBUCOr9q-k6wBWMC7SaAkZ_4nO3JLqYwM1bL1n6wKnnD9EC9waxJboci9KUz2WZ4YJrmcJmA7xWkzs_L3AnNwdtcI1kr_u1cWFmi9BWAWAlNd7S7gfoGuH0tGi6CNaOomvr7-ILjPXdCYwgty1hwT6tbAuaW1eqR0kOYTO0Z1SobpBxu1czSFh1GbzGvTZG",
"sid":"38f8e3cfdc474cd56fc1ceba380d7e1a",
"serverResponse":{
"status":5,
"fileListMode":"string",
"fileList":"aaaa/432efaf2144e051bb32fb490db89c462_httpClient463224.m3u8",
"sliceStartTime":1562724971626
}
}
{
"resourceId":"JyvK8nXHuV1BE64GDkAaBGEscvtHW7v8BrQoRPCHxmeVxwY22-x-kv4GdPcjZeMzoCBUCOr9q-k6wBWMC7SaAkZ_4nO3JLqYwM1bL1n6wKnnD9EC9waxJboci9KUz2WZ4YJrmcJmA7xWkzs_L3AnNwdtcI1kr_u1cWFmi9BWAWAlNd7S7gfoGuH0tGi6CNaOomvr7-ILjPXdCYwgty1hwT6tbAuaW1eqR0kOYTO0Z1SobpBxu1czSFh1GbzGvTZG",
"sid":"38f8e3cfdc474cd56fc1ceba380d7e1a",
"serverResponse":{
"status":5,
"fileListMode":"json",
"fileList":[
{
"fileName":"aaaa/432efaf2144e051bb32fb490db89c462_httpClient463224.m3u8",
"trackType":"audio_and_video",
"uid":"0",
"mixedAllUser":true,
"isPlayable":true,
"sliceStartTime":1562724971626
}
],
"sliceStartTime":1562724971626
}
}
{
"resourceId":"JyvK8nXHuV1BE64GDkAaBGEscvtHW7v8BrQoRPCHxmeVxwY22-x-kv4GdPcjZeMzoCBUCOr9q-k6wBWMC7SaAkZ_4nO3JLqYwM1bL1n6wKnnD9EC9waxJboci9KUz2WZ4YJrmcJmA7xWkzs_L3AnNwdtcI1kr_u1cWFmi9BWAWAlNd7S7gfoGuH0tGi6CNaOomvr7-ILjPXdCYwgty1hwT6tbAuaW1eqR0kOYTO0Z1SobpBxu1czSFh1GbzGvTZG",
"sid":"38f8e3cfdc474cd56fc1ceba380d7e1a",
"serverResponse":{
"status":5,
"extensionServiceState":[
{
"payload":{
"fileList":[
{
"filename":"432efaf2144e051bb32fb490db89c462_httpClient463224.m3u8",
"sliceStartTime":1562724971626
}
],
"onhold":false,
"state":"inProgress"
},
"serviceName":"web_recorder_service"
}
]
}
}
{
"resourceId":"JyvK8nXHuV1BE64GDkAaBGEscvtHW7v8BrQoRPCHxmeVxwY22-x-kv4GdPcjZeMzoCBUCOr9q-k6wBWMC7SaAkZ_4nO3JLqYwM1bL1n6wKnnD9EC9waxJboci9KUz2WZ4YJrmcJmA7xWkzs_L3AnNwdtcI1kr_u1cWFmi9BWAWAlNd7S7gfoGuH0tGi6CNaOomvr7-ILjPXdCYwgty1hwT6tbAuaW1eqR0kOYTO0Z1SobpBxu1czSFh1GbzGvTZG",
"sid":"38f8e3cfdc474cd56fc1ceba380d7e1a",
"serverResponse":{
"status":5,
"extensionServiceState":[
{
"payload":{
"fileList":[
{
"filename":"432efaf2144e051bb32fb490db89c462_httpClient463224.m3u8",
"sliceStartTime":1562724971626
}
],
"onhold":false,
"state":"inProgress"
},
"serviceName":"web_recorder_service"
},
{
"payload":{
"outputs":[
{
"rtmpUrl":"rtmp://1.1.1.1:1935/live/test",
"status":"publishing"
}
],
"state":"inProgress"
},
"serviceName":"rtmp_publish_service"
}
]
}
}