媒体库相关
日期: 2021-03-02
创盛视联数码科技(北京)有限公司
[TOC]
一.流程
1.通过调用 申请视频ID接口 获取系统分配的视频ID 2.前端JS拿到视频ID相关参数,执行上传操作 3.将视频关联到房间
二.相关接口
1.创建视频上传信息
地址:
https://ccapi.csslcloud.net/api/v1/video/createuploadinfo
方法:
POST/GET
请求参数:
参数名称 | 参数类型 | 参数说明 | 备注 |
---|---|---|---|
account_id | 字符串 | 开发者账号ID | 必须 |
title | 字符串 | 视频标题 | 必须 |
filename | 字符串 | 视频文件名 | 必须 |
filesize | 字符串 | 视频大小 | 可选 |
返回示例:
{
"success": "true", # 失败: false,成功:true
"videoUploadInfo": {
"videoid": "F7B8DA319DE99681FC9558351D509E7C", # 系统分配的视频id
"userid": "1725A8A9604EAE30", # 开发者账号ID
"servicetype": "DF0236B91AECD81C", # 加密标识,实际上传时需要携带此参数
"metaurl": "http://1-15-vacombiner.bokecc.com/servlet/uploadmeta/v2", # 系统分配的文件状态及断点位置查询接口
"chunkurl": "http://1-15-vacombiner.bokecc.com/servlet/uploadchunk/v2" # 系统分配的上传文件内容块的接口
}
}
2.上传视频
1、调用创建视频上传信息接口, 获取视频上传信息(videoid,metaurl,chunkurl等)。
2、调用metaurl(第1步接口返回)地址, 查询该条文件的上传状态及断点位置。
3、根据断点位置对本地文件进行分块,循环调用chunkurl(第1步接口返回) 发送文件块,直到文件数据全部发送。
4、如果在发送文件块的过程中出现中断,可再次调用metaurl(第1步接口返回) 以查询当前的文件状态及断点位置,判断并执行后续动作,直到文件上传成功或失败。
5、详细说明及demo实现,参考点播视频上传文档(注意:第1步创建视频上传信息需使用云课堂接口,其余流程一致)
3.关联视频
地址:
https://ccapi.csslcloud.net/api/v1/video/relate
方法:
POST/GET
请求参数:
参数名称 | 参数类型 | 参数说明 | 备注 |
---|---|---|---|
account_id | 字符串 | 开发者账号ID | 必须 |
room_id | 字符串 | 房间ID | 必须 |
video_id | 字符串 | 视频ID | 必须 |
media_type | 整型 | 媒体类型 | 可选 1:视频 2:音频, 默认为视频 |
返回示例:
{
"result": "OK", # 失败: FAIL,成功:OK
}
4.取消关联视频
地址:
https://ccapi.csslcloud.net/api/v1/video/unrelate
备注:
video_id支持批量操作,以|分隔
方法:
POST/GET
请求参数:
参数名称 | 参数类型 | 参数说明 | 备注 |
---|---|---|---|
account_id | 字符串 | 开发者账号ID | 必须 |
room_id | 字符串 | 房间ID | 必须 |
video_id | 字符串 | 视频ID | 必须 |
返回示例:
{
"result": "OK", # 失败: FAIL,成功:OK
}
5.标记删除关联视频
地址:
https://ccapi.csslcloud.net/api/v1/video/delete
方法:
POST/GET
请求参数:
参数名称 | 参数类型 | 参数说明 | 备注 |
---|---|---|---|
account_id | 字符串 | 开发者账号ID | 必须 |
room_id | 字符串 | 房间ID | 必须 |
video_id | 字符串 | 视频ID | 必须 |
返回示例:
{
"result": "OK", # 失败: FAIL,成功:OK
}
6.设为暖场视频
地址:
https://ccapi.csslcloud.net/api/v1/video/warm/set
方法:
POST/GET
请求参数:
参数名称 | 参数类型 | 参数说明 | 备注 |
---|---|---|---|
account_id | 字符串 | 开发者账号ID | 必须 |
room_id | 字符串 | 房间ID | 必须 |
video_id | 字符串 | 视频ID | 必须 |
返回示例:
{
"result": "OK", # 失败: FAIL,成功:OK
}
7.取消设为暖场视频
地址:
https://ccapi.csslcloud.net/api/v1/video/warm/unset
方法:
POST/GET
请求参数:
参数名称 | 参数类型 | 参数说明 | 备注 |
---|---|---|---|
account_id | 字符串 | 开发者账号ID | 必须 |
room_id | 字符串 | 房间ID | 必须 |
video_id | 字符串 | 视频ID | 必须 |
返回示例:
{
"result": "OK", # 失败: FAIL,成功:OK
}
8.查询某房间下已关联的媒体
地址:
https://ccapi.csslcloud.net/api/v1/video/onrelated
备注:
video_id支持批量操作,以|分隔
方法:
POST/GET
请求参数:
参数名称 | 参数类型 | 参数说明 | 备注 |
---|---|---|---|
account_id | 字符串 | 开发者账号ID | 必须 |
room_id | 字符串 | 房间ID | 必须 |
video_id | 字符串 | 视频ID | 可选 |
page | 整型 | 获取指定页 | 可选 默认为1 |
lines | 整型 | 分页每页数据量 | 可选 默认为50 |
sort | 整型 | 排序方式 'CREATION_DATE:ASC': 日期升序,'CREATION_DATE:DESC': 日期降序,'FILE_SIZE:ASC': 大小升序, 'FILE_SIZE:DESC':大小降序,'VIDEO_TITLE:ASC': 标题升序,'VIDEO_TITLE:DESC': 标题降序 | 可选 默认日期升序 |
status | 字符串 | 视频状态,支持多选,以,分割 正常:0 处理中:2或者10 标记删除:6 转码失败:7 彻底删除:11 | 可选 |
isvaild | 整型 | 审核状态 1:已审核 0:未审核 | 可选 |
categoryid | 字符串 | 视频分类ID | 可选 |
start_time | 日期 date | 创建时间 | 可选 |
end_time | 日期 date | 结束时间 | 可选 |
onlydata | 整型 | 1:只查记录数据 | 可选 |
onlycount | 整型 | 1:只查视频总数 | 可选 |
isactive | 整型 | 只查询可用的视频(排除 标记删除/转码失败/删除), 1:是 0:否 | 可选 |
返回示例:
{
"result": 'OK', # 失败: FAIL,成功:OK
"videos": {
"total": 3, # 视频总数
"video": [
{
"id": "A4DE83629B02A0617E6C9CEE8B422289", # 视频ID
"userid": "1725A8A9604EAE30", # 账号ID
"title": "测试视频", # 视频标题
"desp": "这是第二条测试用的信息", # 视频描述
"tags": " ", # 视频标签
"duration": 30, # 视频时长(s)
"status": 0, # 视频状态 0:正常 处理中:2或者10 标记删除:6 转码失败:7 彻底删除:11
"isvalid": 0, # 是否已经审核(0未审核,1已审核)
"filesize": 489848, # 视频大小
"type": 80, # 视频类型(清晰度大小)
"creation-time": "2017-11-14 19:18:58", # 创建时间
"uploaduserid": "1725A8A9604EAE30", # 上传用户ID
"category": "8395FBC2E22C76D2", # 视频分类ID
"hasvideofile": 0, # 视频文件是否存在(0存在,1删除)
"playurl": "", # 播放地址
"mediaType": 2 # 视频类型是否是音频(1视频,2音频)
}
]
}
}}