咪咕视频云产品接口设计文档static.migucloud.com/imgcache/doc/咪咕视频云产品... ·...
TRANSCRIPT
咪咕视频云产品接口设计文档
1简介2
2 功能3
上传视频3
视频管理3
视频转码3
视频分发3
UGC功能3
3 接口规范3
3.1 消息体规范3
3.2 编码规范4
3.2 获取接口调用权限4
4 接口定义4
上传功能相关4
HTTP上传4
转码功能相关11
转码状态查询11
转码进度查询13
转码模板更新15
转码模板查询17
自定义转码模板查询19
自定义转码模板插入更新21
自定义转码模板删除23
开始转码24
转码时长查询(根据vid查询时长)25
转码时长查询(根据uid查询总时长)27
离线转码取消29
视频发布与播放查询30
视频查询30
视频高级查询34
视频编辑49
视频删除51
点播视频上下线52
批量修改视频分类53
取CDN播放地址-无防盗链55
获取CDN播放地址-防盗链57
视频下载60
视频分类管理61
创建分类61
移动分类63
修改分类名称64
删除分类65
分类树查询67
5 修订历史69
1 简介
点播(Video on Demand)汇聚咪咕强大视频处理能力,提供一站式视频点播服务。从灵活上传到快速转码,以及便捷发布,为客户提供专业可靠的完整视频服务。
2 功能上传视频
提供包括本地文件上传、URL文件拉取、API上传等多种方式,适应不同场景下的上传需求。
视频管理
可通过管理控制台或API对视频文件进行管理,包括分类,添加标签等操作,所有信息支持导出查看。
视频转码
可灵活添加水印,并设定不同转码格式,完美匹配不同应用场景
视频分发
可快速获得视频播放URL链接地址,以及自定义播放器代码,支持CDN快速分发。
UGC功能
UGC功能,也就是客户端上传视频功能。该功能支持终端用户将一段短小的视频快速地上传到云端
3 接口规范3.1 消息体规范
所有请求参照HTTP REST规范
时间戳:timestamp使用 Unix时间戳
3.2 编码规范
utf-8
输入参数与输出参数全部使用JSON格式
3.2 获取接口调用权限
获取和设置uid和token方案
接口调用时需要鉴权,参数为uid和token,请根据以下步骤获取:
1.登陆http://www.migucloud.com
2.点击右上角注册
3.通过自己搭建的业务服务器用注册的用户名密码获取uid和token(6小时过期)(参见用户鉴权文档v2.0.docx)
4.接口调用均需填写uid、token
4 接口定义视频上传
正式环境的地址为:
http://www.migucloud.com/c3/
上传的步骤如下:
1.调用创建上传任务接口
http://www.migucloud.com/c3/create_task
可以获取到task_id vid 等参数
2.拿着第一步获取到的参数调用上传接口
http://www.migucloud.com/c3/file_content
3 .当上传完成后调用上传状态上报接口
http://www.migucloud.com/c3/update_status
整个上传完成
说明:
关于断点续传的支持
1. 如果采用cookie作为断点续传的话:
上传文件开始 根据文件名称,大小,文件类型,上次修改时间等值,取md5值。注意该md5值要保证该文件的唯一性。cookie的key和内容为: 文件的md5值
2. 当文件的上传被中断的时候 可以根据待上传文件的MD5值与 cookie中的key值做对比。如果一致那么就重新调用上传任务接口。该接口会返回视频的上传进度等信息。
创建上传任务接口描述
接口名称
创建上传任务
接口描述
创建一个上传任务,大文件时支持断点续传
接口使用者
平台用户
http请求类型
Get
服务类
/c3/create_task
返回示例
成功:
{
"ret": "0",
"result": {
"server_addr": "http://test.migucloud.com/c3/file_content",
"task_id": " 89b0dcc831c1d0909ed9b08ae77388db",
"vid": " 0xIdvx6zh1OpjcIse2AYE",
"finished_present": 0,
"total_block": 9,
"blocksize": 2097152,
"blocks": [
0
]
},
"msg": "ok"
}
失败:
{
"ret": "-3",
"msg": "atoken校验不通过"
}
请求域
http://www.migucloud.com/c3/create_task?user_id=109&atoken=6ee31304b5acad53cba2433a509109d4160fd5d7f0914229d23972a484a6db68dcfb0bcacd046efb&ftoken=6be11b04b7acad53cba2433a509109d4160fd5d7f0914229d23972a484a6db68dcfb0bcacd046efb&filename=%25E5%25B0%258F%25E6%2589%258B%25E6%258B%2589%25E5%25A4%25A7%25E6%2589%258B_%25E9%25AB%2598%25E6%25B8%2585.mp4&title=%25E5%25B0%258F%25E6%2589%258B%25E6%258B%2589%25E5%25A4%25A7%25E6%2589%258B_%25E9%25AB%2598%25E6%25B8%2585.mp4&file_size=18795201&md5=38f30d75228f74818e762e37d6a7a8ca&public_flag=41&trans_flag=0&trans_version=0,4&catalog_id=77&tag=%25E4%25BD%25A0%25E5%25A5%25BD%25E5%2591%25A8%25E6%259D%25B0%25E4%25BC%25A6&desc=%25E4%25BD%25A0%25E5%25A5%25BD%25E5%2591%25A8%25E6%259D%25B0%25E4%25BC%25A6
备注
请求参数说明
字段
类型
是否必须
字段描述
备注
user_id
int
是
用户uid
atoken
string
是
用户校验的atoken
登录授权接口可生成
ftoken
string
是
刷新令牌
filename
String
是
文件名称
完整的文件名称,需要带后缀 如lxl.mp4
title
String
是
视频标题
file_size
int
是
文件大小
单位字节 如1M文件则为1024*1024
md5
String
是
客户端对原文件的md5生成值
每个视频文件的md5值是唯一的
public_flag
Int
是
该文件是否上线
41上线 42不上线
trans_flag
Int
是
该文件是否转码
0转码 1不转码
trans_version
String
是
转码模板
“0,1,2,3,4”对应转码模版id:0-流畅1-标清2-高清3-超清4-原画质
catalog_id
int
是
文件分类id
调用点播的/v0/catalog_query接口可以获取catalog_id
tag
string
否
文件标签,多标签间只用“,”连接
desc
string
否
文件描述
返回参数说明
返回格式:JSON
字段
类型
字段描述
备注
ret
string
状态码
0 代表成功
当ret==’0’代表成功
当ret<‘0’时代表失败,msg字段会返回原因
ret状态码说明:
-1 参数错误
-2鉴权服务器繁忙
-3 鉴权失败,并返回原因
-4 调用点播中间件失败
result
string
仅当ret==’0’时候返回
msg
string
错误描述,当ret小于0的时候返回
server_addr
string
上传的地址
task_id
string
任务序号
上传任务的唯一标示
vid
String
文件序号
上传后视频的唯一标示
finished_present
Int
已经上传部分的百分比
total_block
int
文件切片总数
例如一个文件3M,分片默认大小为2M,则会有2个分片
blocksize
Int
每个分片的大小
默认2M,也就是2097152
blocks
Int
上传到了第几个分片
实际上取的是blocks[0]的值
该值代表了您上次上传到了第几个分片 如果为2
那么这次的话 您将要从第三个分片开始上传
上传视频内容接口描述
接口名称
上传视频内容
接口描述
该接口为用户上传视频内容接口,用户在上传视频时通过post 视频响应分片的内容
接口使用者
平台用户
http请求类型
Get
服务类
/c3/file_content
返回示例
成功:
{
"ret": "0",
"result": {
"total_block": 9,
"current_block": 2,
"task_id": "89b0dcc831c1d0909ed9b08ae77388db",
"uid": "0xIdvx6zh1OpjcIse2AYE",
"remaining_block": 7
},
"msg": "ok"
}
失败:
{
"ret": "-1",
"msg": "参数错误_task_id"
}
请求域
http://www.migucloud.com/c3/file_content?task_id=019bddc40f3fdef5acce5fd69caecb92&user_id=109&block=2&blocksize=2097152&md5sum=8d40086e0385565e958eebd0d9021a3e
备注
请求参数说明
字段
类型
是否必须
字段描述
备注
user_id
int
是
用户uid
task_id
String
是
任务序号
调用创建上传任务接口时候返回的任务id
blocksize
int
否
分片大小
单位字节 默认为2M 也就是
2097152
block
int
是
切片序号
当前上传的是第几个分片就传几
如 1 代表当前是第一个分片
md5sum
int
否
切片MD5值
如果需要对每个分片的MD5值进行校验才需要传,默认不校验
返回参数说明
返回格式:JSON
字段
类型
字段描述
备注
ret
string
状态码
0 代表成功
当ret==’0’代表成功上传成功
当ret<‘0’时代表失败,msg字段会返回原因
ret状态码说明:
-1 参数错误
-2 非法请求
-3不存在该上传任务
-5,-6 上传失败
result
string
msg
string
错误描述,当ret小于0的时候返回
total_block
Int
该上传任务总计的分片数
current_block
int
当前完成的分片数
remaining_block
Int
剩下未传的分片数
task_id
String
当前上传所属的任务id
uid
Int
当前上传所属的用户uid
上传状态上报接口描述
接口名称
上传状态上报
接口描述
上报视频文件的上传状态
接口使用者
平台用户
http请求类型
Get
服务类
/c3/update_status
返回示例
成功:
{
"ret": "0",
"result": {
"uid": 109,
"vid": "15qahNF7tcWUj2lkuiXtnv",
"taskid": "019bddc40f3fdef5acce5fd69caecb92",
"md5": "38f30d75228f74818e762e37d6a7a8ca"
},
"msg": "success"
}
失败:
{
"ret": "-1",
"msg": " param_err_cmd "
}
请求域
http://www.migucloud.com/c3/update_status?user_id=109&task_id=019bddc40f3fdef5acce5fd69caecb92&cmd=0&atoken=6ee31304b5acad53cba2433a509109d4160fd5d7f0914229d23972a484a6db68dcfb0bcacd046efb
备注
请求参数说明
字段
类型
是否必须
字段描述
备注
user_id
int
是
用户uid
atoken
string
是
用户校验的atoken
登录授权接口可生成
task_id
string
是
任务序号
调用创建上传任务接口时候返回的任务id
cmd
int
是
0 上传完成 1上传失败 2取消上传
返回参数说明
返回格式:JSON
字段
类型
字段描述
备注
ret
string
状态码
0 代表成功
当ret==’0’代表成功
当ret<‘0’时代表失败,msg字段会返回原因
ret状态码说明:
-1 参数错误
-2鉴权服务器繁忙
-3 鉴权失败的原因
-5不存在该上传任务
-6 -7上报状态失败
result
string
仅当ret==’0’时候返回
msg
string
错误描述,当ret小于0的时候返回
uid
int
用户uid
所属的用户
vid
String
文件序号
视频的唯一标示
md5
string
文件的md5值
转码功能相关转码状态查询接口描述
用户选择上传不同码率的视频,通过该接口可以查看各个码率的任务转码的状态。
接口名称
转码状态更新
接口描述
接口使用者
平台门户
http请求类型
post
服务类
/v0/trans_query_status
返回示例
成功:
{
"ret": "0",
"result": {
"task_id": "2R3PNll6N5x9bHOO53kttM",
"status": 53,
"total_size": 12229805,
"err_code": 0,
"err_info": "",
"list": [
{
"vtype": "0",
"status": 3,
"size": 349737,
"vtype_desc": "流畅",
"err_code": 0,
"err_info": ""
},
{
"vtype": "1",
"status": 3,
"size": 584893,
"vtype_desc": "标清",
"err_code": 0,
"err_info": ""
},
{
"vtype": "2",
"status": 3,
"size": 866094,
"vtype_desc": "高清",
"err_code": 0,
"err_info": ""
},
{
"vtype": "3",
"status": 3,
"size": 1952653,
"vtype_desc": "超清",
"err_code": 0,
"err_info": ""
},
{
"vtype": "4",
"status": 3,
"size": 1956273,
"vtype_desc": "原画质",
"err_code": 0,
"err_info": ""
}
]
},
"msg": "success"
}失败:
{"ret":"1","result":{},"msg":"fail"}
请求域
http://www.migucloud.com/v0/trans_query_status
{
"uid":"109",
"token":"6ae61a04b3acad53cba84a3654940ed9160fd5d7f0914229d23972a484a6db68dcfb0bcacd046efb",
"vid":"2R3PNll6N5x9bHOO53kttM"
}
备注
请求参数
字段
含义
类型
必填
备注
uid
用户唯一标识
String
M
token
访问令牌
String
M
vid
文件编号
String
M
应答参数
字段
含义
类型
必填
备注
ret
是否成功
Integer
M
附录1 返回码及返回码描述
msg
失败错误描述
String
result
输出结果集
Object
请求成功或者失败即使result为空也需要返回一个空的结果集,前端需要
输出结果集参数项
task_id
转码任务ID
String
status
转码状态
Integer
total_size
转码视频总大小
Integer
err_code
任务转码状态
Integer
err_info
任务转码状态描述
String
list
下面是具体字段
List
vtype
转码清晰度
String
status
转码状态
Integer
1:转码等待2:转码进行3:转码成功4:转码失败
size
大小
Integer
vtype_desc
转码清晰度描述
String
720P 1080P ...
err_code
任务转码状态
Integer
err_info
任务转码状态描述
String
转码进度查询接口描述
用户选择上传不同码率的视频,通过该接口可以查看各个码率的任务已完成转码的百分比。
接口名称
转码进度查询
接口描述
接口使用者
平台门户
http请求类型
post
服务类
/v0/trans_query_present
返回示例
{
"ret": "0",
"result": {
"list": [
{
"percent": 100,
"vtype": "4"
},
{
"percent": 100,
"vtype": "0"
},
{
"percent": 100,
"vtype": "1"
},
{
"percent": 100,
"vtype": "2"
},
{
"percent": 100,
"vtype": "3"
}
],
"vid": "2R3PNll6N5x9bHOO53kttM"
},
"msg": "success"
}
失败:
{"ret":"1","result":{},"msg":"-1,Auth failed1"}
请求示例
http://www.migucloud.com/v0/trans_query_present
{
"uid":"109",
"token":"6ae61a04b3acad53cba84a3654940ed9160fd5d7f0914229d23972a484a6db68dcfb0bcacd046efb",
"vid":"2R3PNll6N5x9bHOO53kttM"
}
备注
请求参数
字段
含义
类型
必填
备注
uid
用户唯一标识
String
M
token
访问令牌
String
M
vid
文件编号
String
M
应答参数
字段
含义
类型
必填
备注
ret
是否成功
Integer
M
附录1 返回码及返回码描述
msg
失败错误描述
String
M
result
输出结果集
Object
M
请求成功或者失败即使result为空也需要返回一个空的结果集,前端需要
输出结果集参数项
vid
输出对象信息
String
M
list
下面是具体字段项
List
vtype
转码清晰度
Integer
percent
进度百分比
Integer
如果是50%的话,就返回50,(有小数点位,就四舍五入)
转码模板更新接口描述
接口名称
转码模板更新
接口描述
接口使用者
平台门户
http请求类型
post
服务类
/v0/trans_version_update
返回示例
成功:
{
"ret": 0,
"result": [
{"vtype":"0"," out_format ":"1"},
{"vtype":"1"," out_format ":"1"},
{"vtype":"3"," out_format ":"1"}
//...
]
}
失败:
{
"ret": 1,//参考附录1 返回码及返回码描述
"msg": "",
"result": {
}
}
请求域
http://www.migucloud.com/v0/trans_version_update
{"uid":"","token":""," trans_update ":[{"vtype":"0"," out_format ":"1"}]}
备注
开发说明
模板更新的时候,先通过uid去查,如果查不到,就插入,如果查到,就更新
请求参数
字段
含义
类型
必填
备注
uid
用户唯一标识
String
M
token
访问令牌
String
M
trans_update
List
vtype
转码版本的选择
String
可以为0,1,2,3,4,5中的一个值
out_format
输出格式
String
枚举值0:3GP,1:MP4,2:FLV,3:HLS
flag
模板开关
String
0:关闭,1:开启
应答参数
字段
含义
类型
必填
备注
ret
是否成功
Integer
M
附录1 返回码及返回码描述
msg
失败错误描述
String
result
输出结果集
List
请求成功或者失败即使result为空也需要返回一个空的结果集,前端需要
输出结果集参数项
vtype
转码清晰度
String
可以为0,1,2,3,4,5中的一个值
out_format
输出格式
String
枚举值0:3GP,1:MP4,2:FLV,3:HLS
flag
模板开关
String
0:关闭,1:开启
转码模板查询接口描述
接口名称
转码模板查询
接口描述
接口使用者
平台门户
http请求类型
post
服务类
/v0/trans_query_version
返回示例
成功:
{
"ret": 0,
"result": [
{"vtype":"0"," out_format ":"1"},
{"vtype":"1"," out_format ":"1"},
{"vtype":"3"," out_format ":"1"}
//...
]
}
失败:
{
"ret": 1,//参考附录1 返回码及返回码描述
"msg": "",
"result": {
}
}
请求域
http://www.migucloud.com/v0/ trans_query_version
{"uid":12,"token":""}
备注
请求参数
字段
含义
类型
必填
备注
uid
用户唯一标识
String
M
token
访问令牌
String
M
应答参数
字段
含义
类型
必填
备注
ret
是否成功
Integer
M
附录1 返回码及返回码描述
msg
失败错误描述
String
result
输出结果集
List
请求成功或者失败即使result为空也需要返回一个空的结果集,前端需要
输出结果集参数项
vtype
转码清晰度
String
可以为0,1,2,3,4,5中的一个值
out_format
输出格式
String
枚举值0:3GP,1:MP4,2:FLV,3:HLS
flag
模板开关
String
0:关闭,1:开启
自定义转码模板查询接口描述
接口名称
转码模板查询
接口描述
接口使用者
平台门户
http请求类型
post
服务类
/v0/custom_template_query
返回示例
{
"ret": "0",
"result": [
{
"summary": "",
"arate": "",
"audio_code": "",
"template_id": "cld240p",
"resolution": "",
"out_format": "HLS",
"id": "0",
"template_name": "流畅",
"audio_samplerate": "",
"vrate": "",
"out_format_id": "3",
"frame_rate": "",
"video_code": ""
},
{
"summary": "",
"arate": "",
"audio_code": "",
"template_id": "cld1080p",
"resolution": "",
"out_format": "HLS",
"id": "4",
"template_name": "原画质",
"audio_samplerate": "",
"vrate": "",
"out_format_id": "3",
"frame_rate": "",
"video_code": ""
}
],
"msg": "success"
}
请求域
http://www.migucloud.com/v0/ custom_template_query
{"uid":123,"token":"68e51006b8acad53c4a9413557900fd2160fd5d7f0914229d03372a48fa6db61d4f208cbc8026efb"}
备注
请求参数
字段
含义
类型
必填
备注
uid
用户唯一标识
String
M
token
访问令牌
String
M
应答参数
字段
含义
类型
必填
备注
ret
是否成功
Integer
M
附录1 返回码及返回码描述
msg
失败错误描述
String
result
输出结果集
List
请求成功或者失败即使result为空也需要返回一个空的结果集,前端需要
id
编号
String
M
summary
模板描述
String
M
resolution
分辨率
String
M
分辨率,单位:像素
frame_rate
帧率
String
M
单位:帧/秒
vrate
视频码率
String
M
单位:kbps
arate
音频码率
String
M
单位:kbps
video_code
视频编码方式
String
M
单位:h263、h264、h265等
audio_code
音频编码方式
String
M
单位:aac、mp2a等
audio_samplerate
音频采样率
String
M
单位:Hz
out_format_id
输出格式id
String
M
枚举值0:3GP,1:MP4,2:FLV,3:HLS
out_format
输出格式
String
M
枚举值0:3GP,1:MP4,2:FLV,3:HLS
template_id
模板编号
String
M
模板编号-来自转码平台
template_name
模板名称
String
M
模板名称
自定义转码模板插入更新接口描述
接口名称
转码模板插入更新
接口描述
接口使用者
平台门户
http请求类型
post
服务类
/v0/custom_template_update
返回示例
{
"ret": "0",
"result": [],
"msg": "success"
}
请求域
http://www.migucloud.com/v0/ custom_template_update
{
"uid": 123,
"token": "68e51006b8acad53c4a9413557900fd2160fd5d7f0914229d03372a48fa6db61d4f208cbc8026efb",
"trans_args": [
{
"summary": "1",
"id": 3,
"arate": "1",
"vrate": "1",
"video_code": "1",
"audio_code": "1",
"audio_samplerate": "1",
"resolution": "1",
"out_format_id": 1,
"frame_rate": "1",
"out_format": "1"
},
{
"summary": "12",
"id": 4,
"arate": "2",
"vrate": "2",
"video_code": "1",
"audio_code": "1",
"audio_samplerate": "1",
"resolution": "2",
"out_format_id": 2,
"frame_rate": "2",
"out_format": "2"
}
]
}
备注
开发说明
请求参数
字段
含义
类型
必填
备注
uid
用户唯一标识
String
M
token
访问令牌
String
M
trans_args
转码模板信息数组
List
M
id
编号
String
M
输入的请求参数id如果存在就是更新,不存在就插入。第一次插入是100,之后自增。
summary
模板描述
String
M
resolution
分辨率
String
M
分辨率,单位:像素
frame_rate
帧率
String
M
单位:帧/秒
vrate
视频码率
String
M
单位:kbps
arate
音频码率
String
M
单位:kbps
video_code
视频编码方式
String
M
单位:h263、h264、h265等
audio_code
音频编码方式
String
M
单位:aac、mp2a等
audio_samplerate
音频采样率
String
M
单位:Hz
out_format_id
输出格式
String
M
枚举值0:3GP,1:MP4,2:FLV,3:HLS
out_format
输出格式
String
M
枚举值0:3GP,1:MP4,2:FLV,3:HLS
template_name
模板名称
String
M
模板名称
应答参数
字段
含义
类型
必填
备注
ret
是否成功
Integer
M
附录1 返回码及返回码描述
msg
失败错误描述
String
自定义转码模板删除接口描述
接口名称
转码模板更新
接口描述
接口使用者
平台门户
http请求类型
post
服务类
/v0/custom_template_delete
返回示例
{
"ret": "0",
"result": [],
"msg": "success"
}
请求域
http://www.migucloud.com/v0/ custom_template_delete
{"uid":123,"token":"229d03372a48fa6db61d4f208cbc8026efb","trans_args":[{"id":1},{"id":2}]}
备注
开发说明
请求参数
字段
含义
类型
必填
备注
uid
用户唯一标识
String
M
token
访问令牌
String
M
trans_args
List
id
编号
String
M
应答参数
字段
含义
类型
必填
备注
ret
是否成功
Integer
M
附录1 返回码及返回码描述
msg
失败错误描述
String
开始转码接口描述
使用该接口设定好要转码的类型并启动转码任务执行。
接口名称
开始转码
接口描述
接口使用者
平台门户
http请求类型
post
服务类
/v0/start_trans
返回示例
成功:
{"ret":"0","result":{},"msg":"success"}
失败:
{"ret":"1","result":{},"msg":"-1,Auth failed1"}
请求示例
http://www.migucloud.com/v0/start_trans
{
"uid":"109",
"token":"6ae61a04b3acad53cba84a3654940ed9160fd5d7f0914229d23972a484a6db68dcfb0bcacd046efb",
"vid":"2R3PNll6N5x9bHOO53kttM",
"vtype":"0,1"
}
备注
请求参数
字段
含义
类型
必填
备注
uid
用户唯一标识
String
M
token
访问令牌
String
M
vid
文件编号
String
M
template_id
编码标准
String
可传0,1,2,3,4。为空则表示根据uid查找对应模板id。
应答参数
字段
含义
类型
必填
备注
ret
是否成功
Integer
M
附录1 返回码及返回码描述
msg
失败错误描述
String
M
result
输出结果集
M
转码时长查询(根据vid查询时长)接口描述
接口名称
转码时长查询
接口描述
接口使用者
平台门户
http请求类型
post
服务类
/v0/trans_query_time
返回示例
成功:
{
"ret": "0",
"result": {
"trans_time": 32,
"list": [
{
"trans_time": 14,
"svid": "2R3PNll6N5x9bHOO53kttMMP4cld240p"
},
{
"trans_time": 18,
"svid": "2R3PNll6N5x9bHOO53kttMMP4cld450p"
}
],
"vid": "2R3PNll6N5x9bHOO53kttM"
},
"msg": "success"
}
失败:
{
"ret": 1,//参考附录1 返回码及返回码描述
"msg": "",
"result": {
}
}
请求示例
http://www.migucloud.com/v0/trans_query_time
{
"uid":"109",
"token":"6ae61a04b3acad53cba84a3654940ed9160fd5d7f0914229d23972a484a6db68dcfb0bcacd046efb",
"vid":"2R3PNll6N5x9bHOO53kttM"
}
备注
请求参数
字段
含义
类型
必填
备注
uid
用户唯一标识
String
M
token
访问令牌
String
M
vid
文件编号
String
M
应答参数
字段
含义
类型
必填
备注
ret
是否成功
Integer
M
附录1 返回码及返回码描述
msg
失败错误描述
String
result
输出结果集
Object
请求成功或者失败即使result为空也需要返回一个空的结果集,前端需要
输出结果集参数项
vid
视频vid
String
M
trans_time
vid转码时长
Int
精确到秒
list
下面是具体字段项
List
svid
视频svid
String
trans_time
svid转码时长
Int
精确到秒
转码时长查询(根据uid查询总时长)接口描述
接口名称
转码时长查询
接口描述
接口使用者
平台门户
http请求类型
post
服务类
/v0/trans_query_sumtime
返回示例
成功:
{"ret":"0","result":{"trans_time":320282},"msg":"success"}
失败:
{
"ret": 1,//参考附录1 返回码及返回码描述
"msg": "",
"result": {
}
}
请求示例
http://www.migucloud.com/v0/trans_query_sumtime
{
"uid":"109",
"token":"6ae61a04b3acad53cba84a3654940ed9160fd5d7f0914229d23972a484a6db68dcfb0bcacd046efb"
}
备注
请求参数
字段
含义
类型
必填
备注
uid
用户唯一标识
String
M
token
访问令牌
String
M
应答参数
字段
含义
类型
必填
备注
ret
是否成功
Integer
M
附录1 返回码及返回码描述
msg
失败错误描述
String
M
result
输出结果集
Object
M
请求成功或者失败即使result为空也需要返回一个空的结果集,前端需要
输出结果集参数项
trans_time
Uid所有视频转码总时长
Long
精确到秒
离线转码取消接口描述
接口名称
离线转码取消
接口描述
接口使用者
平台门户
http请求类型
post
服务类
/v0/CancelTransTask
返回示例
成功:
{
"ret": 0,
"result": {
}
}
失败:
{
"ret": 1,//参考附录1 返回码及返回码描述
"msg": "",
"result": {
}
}
请求示例
http://www.migucloud.com/v0/CancelTransTask
{
"uid":"109",
"token":"6ae61a04b3acad53cba84a3654940ed9160fd5d7f0914229d23972a484a6db68dcfb0bcacd046efb"
}
备注
请求参数
字段
含义
类型
必填
备注
uid
用户唯一标识
String
M
token
访问令牌
String
M
vid
文件编号
String
M
应答参数
字段
含义
类型
必填
备注
ret
是否成功
Integer
M
附录1 返回码及返回码描述
msg
失败错误描述
String
result
输出结果集
Object
请求成功或者失败即使result为空也需要返回一个空的结果集,前端需要
vid
任务ID
Varchar(64)
请求参数中的vid
ct_ret
此任务返回码
int(8)
msg
返回码信息描述
Varchar(256)
视频发布与播放查询视频查询接口描述
通过该接口可以查看某个用户的指定或全部视频的信息。
接口名称
视频查询
接口描述
按视频ID查询
接口使用者
平台门户
http请求类型
post
服务类
/v0/query_videolist
返回示例
成功:
成功:
{
"ret": "0",
"msg": "success",
"result": [
{
"trans_type_list": null,
"snapshot": [],
"vid": "0009jre8Zb8GgPU81EIlrL",
"title": "p20161110000014_54.mp4",
"catalog_id": 1,
"catalog_name": "原创",
"tags": "",
"summary": "",
"introduction": "",
"vtype": "SOURCE",
"cover_img": "http://test.migucloud.com/vi0/ftp/miguread/CLOUD1000064721/54/p20161110000014_54_keep.MP4.pic/0000.jpg",
"pic_path": "/ftp/miguread/CLOUD1000064721/54/p20161110000014_54_keep.MP4.pic/0000.jpg",
"pics": 0,
"location": "http://test.migucloud.com/vi0/ftp/miguread/CLOUD1000064721/p20161110000014_54.mp4",
"format": "",
"duration": 76,
"size": 1000,
"space": 0,
"owner": "198",
"upload_time": "2015-01-11 16:00:00",
"access_passwd": "",
"auth_domain": null,
"forbid_domain": null,
"auth_ip": null,
"forbid_ip": null,
"sha1": "",
"status_desc": "",
"expired_time": "2500-12-31 15:59:59",
"md5": "4f864bd2b54e38a4570f0c51c2cbab49",
"create_time": "2016-11-10 03:23:29",
"update_time": "2016-11-25 10:29:35",
"mixing_rate": null,
"resolution": null,
"frame_rate": null,
"aspect_ratio": null,
"vcode": null,
"vrate": null,
"vrate_mode": null,
"frame_rate_mode": null,
"acodec": null,
"arate": null,
"arate_mode": null,
"channel": 0,
"sampling_rate": null,
"delete_time": null,
"public_flag": 41,
"trans_flag": 0,
"upload_status": 23,
"video_status": 32,
"trans_status": 53,
"trans_type_ids": null,
"total_rate_num": null,
"success_rate_num": 1
},
{
"trans_type_list": null,
"snapshot": [],
"vid": "001BwwZG16JEuUbkA521",
"title": "005_55.mp4",
"catalog_id": 1,
"catalog_name": "我的分类",
"tags": "",
"summary": "",
"introduction": "",
"vtype": "SOURCE",
"cover_img": "http://test.migucloud.com/vi0/ftp/miguread/CLOUD1000057474/5/005_55_keep.MP4.pic/0000.jpg",
"pic_path": "/ftp/miguread/CLOUD1000057474/5/005_55_keep.MP4.pic/0000.jpg",
"pics": 0,
"location": "http://test.migucloud.com/vi0/ftp/miguread/CLOUD1000057474/005_55.mp4",
"format": "",
"duration": 58,
"size": 1000,
"space": 0,
"owner": "198",
"upload_time": "2015-01-11 16:00:00",
"access_passwd": "",
"auth_domain": null,
"forbid_domain": null,
"auth_ip": null,
"forbid_ip": null,
"sha1": "",
"status_desc": "",
"expired_time": "2500-12-31 15:59:59",
"md5": "1e720c3d0bb8a438f47abe234ea5d94d",
"create_time": "2016-10-16 04:28:02",
"update_time": "2016-11-25 10:29:35",
"mixing_rate": null,
"resolution": null,
"frame_rate": null,
"aspect_ratio": null,
"vcode": null,
"vrate": null,
"vrate_mode": null,
"frame_rate_mode": null,
"acodec": null,
"arate": null,
"arate_mode": null,
"channel": 0,
"sampling_rate": null,
"delete_time": null,
"public_flag": 41,
"trans_flag": 0,
"upload_status": 23,
"video_status": 32,
"trans_status": 53,
"trans_type_ids": null,
"total_rate_num": null,
"success_rate_num": 1
}
]
}
失败:
{
"ret": 1,//参考附录1 返回码及返回码描述
"msg": "",
"result": {
}
}
请求示例
http:// www.migucloud.com /v0/query_videolist
{
"uid":"198",
"token":"",
"vid":"0009jre8Zb8GgPU81EIlrL,001BwwZG16JEuUbkA521"
}
备注
请求参数
字段名
注释
类型(长度)
可否为空
备注
uid
用户ID
String
否
token
token
String
否
vid
视频ID集
String
否
多个VID之间用“,”分割,vid最多不大于20个.
应答参数
字段名
注释
类型(长度)
可否为空
备注
ret
是否成功
Integer
M
附录1 返回码及返回码描述
msg
失败错误描述
String
result
输出结果集
Object
请求成功或者失败即使result为空也需要返回一个空的结果集,前端需要
vid
视频ID
String
M
title
视频标题
String
M
catalog_id
分类id
Integer
M
默认为0
catalog_name
分类
String
M
tags
标签列表
String
多个以英文逗号隔开
summary
简介
String
introduction
说明
String
vtype
视频类型
String
这里固定为“SOURCE”
cover_img
封面图
String
pic_path
截图输出地址
String
pics
截图输出数量
String
location
视频存放地址
String
非点播地址
format
视频格式
String
duration
时长
Integer
size
视频大小
Integer
space
占用空间
Integer
owner
视频所有者
String
upload_time
上传时间
Datetime
access_passwd
访问密码
String
auth_domain
授权域名
String
多个域名间用“,”分割
forbid_domain
禁止域名
String
多个域名间用“,”分割
auth_ip
授权IP
String
多个IP间用“,”分割
forbid_ip
禁止IP
String
多个IP间用“,”分割
sha1
SHA1文件校验值
String
status_desc
状态描述
String
expired_time
过期时间
String
2015-12-1 15:33:33
md5
MD5文件校验值
String
create_time
创建时间
Datetime
update_time
更新时间戳
Datetime
mixing_rate
混合码率
String
resolution
分辨率
String
frame_rate
帧率
String
aspect_ratio
宽高比
String
vcode
视频编码格式
String
vrate
视频码率
String
vtate_mode
视频码率模式
String
视频码率模式,CBR|VBR
frame_rate_mode
帧率模式
String
帧率模式,CBR|VBR
acodec
音频编码格式
String
arate
音频码率
String
arate_mode
音频码率模式
String
音频码率模式,CBR/VBR
channel
音频通道数
Integer
sampling_rate
音频采样率
String
delete_time
视频删除时间
String
public_flag
是否上线
Integer
M
41为上线(true),42为下线
trans_flag
是否转码
Integer
M
0位需要转码(true),1为不需要转码
upload_status
上传业务状态
Integer
21 上传创建
22 上传中
23 上传完成
24 上传失败
25 任务取消
26 任务错误
27 任务自动删除
video_status
视频业务状态
Integer
31 审核中
32 审核通过
33 审核未通过
34 被动下线
trans_status
转码业务状态
Integer
51 待转码
52 转码中
53 转码成功
54 转码失败
trans_type_ids
转码模版拼接String
String
"0,1,2"
trans_type_list
转码模版类型list
List
[“0”,”1”,”2”]
total_rate_num
需转码码率总数
Integer
success_rate_num
成功转码码率数
Integer
snapshot
截图对象信息
List
[url1,url2,url3…]
视频高级查询接口描述
该接口可通过标题模糊查询,通过标签,通过分类,通过状态,通过开始时间和结束时间和指定开始和结束时间段来查询获得视频信息。
接口名称
视频高级查询
接口描述
可通过标题模糊查询,通过标签,通过分类,通过状态,通过开始时间和结束时间和指定开始和结束时间段来查询
接口使用者
平台门户
http请求类型
POST
服务类
/v0/query_videolist_advanced
返回示例
成功:
{
"ret": "0",
"result": {
"offset": 1,
"limit": 10,
"count": 59,
"list": [
{
"vid": "37XOw_HCV8IrpD2HbOkV89",
"title": "2.mov",
"catalog_id": 0,
"catalog_name": "我的分类",
"tags": " ",
"summary": "",
"introduction": "",
"vtype": "SOURCE",
"cover_img": "http://www.migucloud.com/vi_1.jpg",
"location": "http://www.migucloud.com/vi0/109/37/XOw_HCV8IrpD2HbOkV89/2.mov",
"format": "",
"duration": 111,
"size": 140955553,
"space": 0,
"owner": "109",
"upload_time": "2015-12-01 10:14:37",
"access_passwd": "",
"auth_domain": null,
"forbid_domain": null,
"auth_ip": null,
"forbid_ip": null,
"sha1": "",
"status": 4,
"status_desc": "uploading",
"expired_time": "2500-12-31 15:59:59",
"md5": "f76354ade5ae4412a7ddb5f6f04807a9",
"create_time": "2015-12-01 10:14:37",
"update_time": "2015-12-01 10:17:54",
"mixing_rate": null,
"resolution": "1920*816",
"frame_rate": "23.976",
"aspect_ratio": null,
"vcode": null,
"vrate": "10.1M",
"vrate_mode": null,
"frame_rate_mode": null,
"acodec": null,
"arate": null,
"arate_mode": null,
"channel": 0,
"sampling_rate": null,
"delete_time": null,
"public_flag": 1,
"trans_flag": 1
},
{
"vid": "1lWJSX7JR9HVz2tJbEdZcr",
"title": "3.mov",
"catalog_id": 0,
"catalog_name": "我的分类",
"tags": " ",
"summary": "",
"introduction": "",
"vtype": "SOURCE",
"cover_img": "http://www.migucloud.com/vi0",
"location": "http://www.migucloud.com/vi0/109/1l/WJSX7JR9HVz2tJbEdZcr/3.mov",
"format": "",
"duration": 0,
"size": 82338226,
"space": 0,
"owner": "109",
"upload_time": "2015-12-01 10:13:18",
"access_passwd": "",
"auth_domain": null,
"forbid_domain": null,
"auth_ip": null,
"forbid_ip": null,
"sha1": "",
"status": 2,
"status_desc": "cancel",
"expired_time": "2500-12-31 15:59:59",
"md5": "fb37780c8ebf24d261803cb507c32184",
"create_time": "2015-12-01 10:13:18",
"update_time": "2015-12-01 10:33:00",
"mixing_rate": null,
"resolution": "",
"frame_rate": "",
"aspect_ratio": null,
"vcode": null,
"vrate": "",
"vrate_mode": null,
"frame_rate_mode": null,
"acodec": null,
"arate": null,
"arate_mode": null,
"channel": 0,
"sampling_rate": null,
"delete_time": null,
"public_flag": 1,
"trans_flag": 1
},
{
"vid": "0aJodbWoVcQqkwIwpmM6z0",
"title": "发送到发送到发送fasdfa发生地发呆是法定",
"catalog_id": 0,
"catalog_name": "我的分类",
"tags": "",
"summary": "",
"introduction": "",
"vtype": "SOURCE",
"cover_img": "http://www.migucloud.com/vi0",
"location": "http://www.migucloud.com/vi0",
"format": "",
"duration": 7200,
"size": 0,
"space": 0,
"owner": "109",
"upload_time": "2015-12-01 06:21:03",
"access_passwd": "",
"auth_domain": null,
"forbid_domain": null,
"auth_ip": null,
"forbid_ip": null,
"sha1": "",
"status": 0,
"status_desc": "",
"expired_time": "2500-12-31 15:59:59",
"md5": "",
"create_time": "2015-12-01 06:21:03",
"update_time": "2015-12-01 09:42:12",
"mixing_rate": null,
"resolution": null,
"frame_rate": null,
"aspect_ratio": null,
"vcode": null,
"vrate": null,
"vrate_mode": null,
"frame_rate_mode": null,
"acodec": null,
"arate": null,
"arate_mode": null,
"channel": 0,
"sampling_rate": null,
"delete_time": null,
"public_flag": 0,
"trans_flag": null
},
{
"vid": "1tZSviable79wG61GWyfJK",
"title": "factory_test.mp4",
"catalog_id": 0,
"catalog_name": "我的分类",
"tags": "",
"summary": "",
"introduction": "",
"vtype": "SOURCE",
"cover_img": "http://www.migucloud.com/vi0",
"location": "http://www.migucloud.com/vi0/109/1t/ZSviable79wG61GWyfJK/factory_test.mp4",
"format": "",
"duration": 0,
"size": 23059633,
"space": 0,
"owner": "109",
"upload_time": "2015-12-01 06:12:56",
"access_passwd": "",
"auth_domain": null,
"forbid_domain": null,
"auth_ip": null,
"forbid_ip": null,
"sha1": "",
"status": 2,
"status_desc": "cancel",
"expired_time": "2500-12-31 15:59:59",
"md5": "0c237697bd84cc35aeae9f8f0c74197e",
"create_time": "2015-12-01 06:12:56",
"update_time": "2015-12-01 06:13:22",
"mixing_rate": null,
"resolution": "",
"frame_rate": "",
"aspect_ratio": null,
"vcode": null,
"vrate": "",
"vrate_mode": null,
"frame_rate_mode": null,
"acodec": null,
"arate": null,
"arate_mode": null,
"channel": 0,
"sampling_rate": null,
"delete_time": null,
"public_flag": 1,
"trans_flag": 0
},
{
"vid": "2Lthz9lCV2UGlNu-hvUwbN",
"title": "demo_5s.mp4",
"catalog_id": 0,
"catalog_name": "我的分类",
"tags": "",
"summary": "",
"introduction": "",
"vtype": "SOURCE",
"cover_img": "http://www.migucloud.com/vi0",
"location": "http://www.migucloud.com/vi0/109/2L/thz9lCV2UGlNu-hvUwbN/demo_5s.mp4",
"format": "",
"duration": 4,
"size": 21415740,
"space": 0,
"owner": "109",
"upload_time": "2015-12-01 06:12:10",
"access_passwd": "",
"auth_domain": null,
"forbid_domain": null,
"auth_ip": null,
"forbid_ip": null,
"sha1": "",
"status": 3,
"status_desc": "uploading",
"expired_time": "2500-12-31 15:59:59",
"md5": "79d758bff5a75b7a9391625f8ef90b8f",
"create_time": "2015-12-01 06:12:11",
"update_time": "2015-12-01 06:12:53",
"mixing_rate": null,
"resolution": "1920*1080",
"frame_rate": "30.000",
"aspect_ratio": null,
"vcode": null,
"vrate": "35.9M",
"vrate_mode": null,
"frame_rate_mode": null,
"acodec": null,
"arate": null,
"arate_mode": null,
"channel": 0,
"sampling_rate": null,
"delete_time": null,
"public_flag": 1,
"trans_flag": 0
},
{
"vid": "0amoOig31eFbPn3Nt53dfR",
"title": "demo_5s.mp4",
"catalog_id": 0,
"catalog_name": "我的分类",
"tags": " ",
"summary": "",
"introduction": "",
"vtype": "SOURCE",
"cover_img": "http://www.migucloud.com/vi0",
"location": "http://www.migucloud.com/vi0/109/0a/moOig31eFbPn3Nt53dfR/demo_5s.mp4",
"format": "",
"duration": 4,
"size": 21415740,
"space": 0,
"owner": "109",
"upload_time": "2015-12-01 05:01:01",
"access_passwd": "",
"auth_domain": null,
"forbid_domain": null,
"auth_ip": null,
"forbid_ip": null,
"sha1": "",
"status": 4,
"status_desc": "uploading",
"expired_time": "2500-12-31 15:59:59",
"md5": "79d758bff5a75b7a9391625f8ef90b8f",
"create_time": "2015-12-01 05:01:01",
"update_time": "2015-12-01 05:01:37",
"mixing_rate": null,
"resolution": "1920*1080",
"frame_rate": "30.000",
"aspect_ratio": null,
"vcode": null,
"vrate": "35.9M",
"vrate_mode": null,
"frame_rate_mode": null,
"acodec": null,
"arate": null,
"arate_mode": null,
"channel": 0,
"sampling_rate": null,
"delete_time": null,
"public_flag": 1,
"trans_flag": 1
},
{
"vid": "0k4GOopqZ4bGpnEQBTkECI",
"title": "logo.mp4",
"catalog_id": 0,
"catalog_name": "我的分类",
"tags": " ",
"summary": "",
"introduction": "",
"vtype": "SOURCE",
"cover_img": "http://www.migucloud.com/vi0",
"location": "http://www.migucloud.com/vi0/109/0k/4GOopqZ4bGpnEQBTkECI/logo.mp4",
"format": "",
"duration": 0,
"size": 691200,
"space": 0,
"owner": "109",
"upload_time": "2015-12-01 04:54:02",
"access_passwd": "",
"auth_domain": null,
"forbid_domain": null,
"auth_ip": null,
"forbid_ip": null,
"sha1": "",
"status": 4,
"status_desc": "uploading",
"expired_time": "2500-12-31 15:59:59",
"md5": "598ab22a8739f322395e9dfe889e9350",
"create_time": "2015-12-01 04:54:02",
"update_time": "2015-12-01 04:54:11",
"mixing_rate": null,
"resolution": "*",
"frame_rate": "",
"aspect_ratio": null,
"vcode": null,
"vrate": "",
"vrate_mode": null,
"frame_rate_mode": null,
"acodec": null,
"arate": null,
"arate_mode": null,
"channel": 0,
"sampling_rate": null,
"delete_time": null,
"public_flag": 1,
"trans_flag": 1
},
{
"vid": "241u4aV3R0HECF-ORnFIVz",
"title": "demo_5s.mp4",
"catalog_id": 0,
"catalog_name": "我的分类",
"tags": " ",
"summary": "",
"introduction": "",
"vtype": "SOURCE",
"cover_img": "http://www.migucloud.com/vi0",
"location": "http://www.migucloud.com/vi0/109/24/1u4aV3R0HECF-ORnFIVz/demo_5s.mp4",
"format": "",
"duration": 4,
"size": 21415740,
"space": 0,
"owner": "109",
"upload_time": "2015-11-30 09:49:00",
"access_passwd": "",
"auth_domain": null,
"forbid_domain": null,
"auth_ip": null,
"forbid_ip": null,
"sha1": "",
"status": 4,
"status_desc": "uploading",
"expired_time": "2500-12-31 15:59:59",
"md5": "79d758bff5a75b7a9391625f8ef90b8f",
"create_time": "2015-11-30 09:49:01",
"update_time": "2015-11-30 09:49:18",
"mixing_rate": null,
"resolution": "1920*1080",
"frame_rate": "30.000",
"aspect_ratio": null,
"vcode": null,
"vrate": "35.9M",
"vrate_mode": null,
"frame_rate_mode": null,
"acodec": null,
"arate": null,
"arate_mode": null,
"channel": 0,
"sampling_rate": null,
"delete_time": null,
"public_flag": 1,
"trans_flag": 1
},
{
"vid": "1eC67JsbZ7U9j8GLGP4hwP",
"title": "455555555555",
"catalog_id": 0,
"catalog_name": "我的分类",
"tags": "bb,dd",
"summary": "7777777",
"introduction": "",
"vtype": "SOURCE",
"cover_img": "http://www.migucloud.com/vi0",
"location": "http://www.migucloud.com/vi0/109/1e/C67JsbZ7U9j8GLGP4hwP/aa.mp4",
"format": "",
"duration": 7200,
"size": 456464,
"space": 0,
"owner": "109",
"upload_time": "2015-11-30 08:00:54",
"access_passwd": "",
"auth_domain": null,
"forbid_domain": null,
"auth_ip": null,
"forbid_ip": null,
"sha1": "",
"status": 0,
"status_desc": "",
"expired_time": "2500-12-31 15:59:59",
"md5": "455555555555",
"create_time": "2015-11-30 07:58:49",
"update_time": "2015-11-30 07:58:49",
"mixing_rate": null,
"resolution": null,
"frame_rate": null,
"aspect_ratio": null,
"vcode": null,
"vrate": null,
"vrate_mode": null,
"frame_rate_mode": null,
"acodec": null,
"arate": null,
"arate_mode": null,
"channel": 0,
"sampling_rate": null,
"delete_time": null,
"public_flag": 0,
"trans_flag": 1
},
{
"vid": "1uUEr5PnleUro04SEI7PnE",
"title": "455555555555",
"catalog_id": 100,
"catalog_name": "fasdfasd",
"tags": "bb,dd",
"summary": "7777777",
"introduction": "",
"vtype": "SOURCE",
"cover_img": "http://www.migucloud.com/vi0",
"location": "http://www.migucloud.com/vi0/109/1u/UEr5PnleUro04SEI7PnE/aa.mp4",
"format": "",
"duration": 7200,
"size": 456464,
"space": 0,
"owner": "109",
"upload_time": "2015-11-30 07:58:04",
"access_passwd": "",
"auth_domain": null,
"forbid_domain": null,
"auth_ip": null,
"forbid_ip": null,
"sha1": "",
"status": 0,
"status_desc": "",
"expired_time": "2500-12-31 15:59:59",
"md5": "455555555555",
"create_time": "2015-11-30 07:56:37",
"update_time": "2015-12-01 06:10:46",
"mixing_rate": null,
"resolution": null,
"frame_rate": null,
"aspect_ratio": null,
"vcode": null,
"vrate": null,
"vrate_mode": null,
"frame_rate_mode": null,
"acodec": null,
"arate": null,
"arate_mode": null,
"channel": 0,
"sampling_rate": null,
"delete_time": null,
"public_flag": 0,
"trans_flag": 1
}
]
},
"msg": "success"
}
失败:
{
"ret": 1,//参考附录1 返回码及返回码描述
"msg": "",
"result": {
}
}
请求示例
http://www.migucloud.com/v0/query_videolist_advanced
{
"uid": 109,
"token": "",
"title": "66",
"catalog_id":"111",
"status":0,
"tags":"aa,ee",
"start_date": "2014-11-16",
"end_date": "2015-12-16",
"offset":1,
"limit":10
}
备注
请求参数
编号
字段名
注释
类型(长度)
可否为空
备注
1.
uid
用户ID
String
否
2.
token
token
String
否
3.
vid
视频ID
String
4.
offset
非必须,偏移量,默认1
Integer
从第几行记录开始
5.
limit
非必须,最大结果集,默认10
Integer
返回记录10条
6.
title
视频标题,模糊匹配
String
7.
catalog_id
目录ID
Integer
0-所有目录;
其他-具体id,只有child为1时生效。
8.
child
是否包括子目录
String
0-只包括当前目录;1-包括当前目录和子目录
9.
tags
视频标签,多个标签用“,”分割,多个标签之间为OR关系
String
10.
public_flag
是否上线
Integer
41为上线(true),42为下线
11.
status
状态
Integer
12.
start_date
开始时间
Date
13.
end_date
结束时间
Date
应答参数
字段名
注释
类型(长度)
可否为空
备注
ret
是否成功
Integer
M
附录1 返回码及返回码描述
msg
失败错误描述
String
result
输出结果集
Object
请求成功或者失败即使result为空也需要返回一个空的结果集,前端需要
输出结果集参数项
count
符合记录的总记录条数
Integer
M
list
下面list数组包含字段项
vid
视频ID
String
M
title
视频标题
String
M
catalog_id
分类id
M
默认为0
catalog_name
分类
String
M
tags
标签列表
String
多个以英文逗号隔开
summary
简介
String
introduction
说明
String
vtype
视频类型
String
cover_img
封面图
String
pic_path
截图输出地址
String
pics
截图输出数量
String
location
视频存放地址
String
非点播地址
format
视频格式
String
duration
时长
Integer
size
视频大小
Integer
space
占用空间
Integer
owner
视频所有者
String
upload_time
上传时间
Datetime
access_passwd
访问密码
String
auth_domain
授权域名
String
多个域名间用“,”分割
forbid_domain
禁止域名
String
多个域名间用“,”分割
auth_ip
授权IP
String
多个IP间用“,”分割
forbid_ip
禁止IP
String
多个IP间用“,”分割
sha1
SHA1文件校验值
String
status
视频及转码状态
String
审核通过则显示转码状态,否则显示视频状态
status_desc
状态描述
String
expired_time
过期时间
String
2015-12-1 15:33:33
md5
MD5文件校验值
String
create_time
创建时间
Datetime
update_time
更新时间戳
Datetime
mixing_rate
混合码率
String
resolution
分辨率
String
frame_rate
帧率
String
aspect_ratio
宽高比
String
vcode
视频编码格式
String
vrate
视频码率
String
vtate_mode
视频码率模式
String
视频码率模式,CBR|VBR
frame_rate_mode
帧率模式
String
帧率模式,CBR|VBR
acodec
音频编码格式
String
arate
音频码率
String
arate_mode
音频码率模式
String
音频码率模式,CBR/VBR
channel
音频通道数
Integer
sampling_rate
音频采样率
String
delete_time
视频删除时间
String
public_flag
是否上线
Integer
M
41为上线(true),42为下线
trans_flag
是否转码
Integer
M
0位需要转码(true),1为不需要转码
upload_status
上传业务状态
Integer
21 上传创建
22 上传中
23 上传完成
24 上传失败
25 任务取消
26 任务错误
27 任务自动删除
video_status
视频业务状态
Integer
31 审核中
32 审核通过
33 审核未通过
34 被动下线
trans_status
转码业务状态
Integer
51 待转码
52 转码中
53 转码成功
54 转码失败
trans_type_list
转码模版类型
String
"0,1,2"
total_rate_num
需转码码率总数
Integer
success_rate_num
成功转码码率数
Integer
视频编辑接口描述
通过该接口可以修改视频的详细信息,如移动所属分类、更换封面图片等。
接口名称
视频编辑
接口描述
接口使用者
平台门户
http请求类型
post
服务类
/v0/edit_video
请求参数
字段名
注释
类型(长度)
可否为空
备注
uid
视频所有者
String
M
vid
视频ID
String
M
用户不可更改
token
token
String
M
title
视频标题
String
M
catalog_id
分类id
Integer
默认为0
catalog_name
分类名称
String
tags
标签列表
String
多个以英文逗号隔开
summary
简介
String
introduction
说明
String
cover_img
封面图
String
只接受图片的相对路径,/vi0包含前面的域名不需要传,如http://www.migucloud.com/vi0,不需要传入
注:非必填字段如果不需要更新,可以不传该字段。
应答参数
字段名
注释
类型(长度)
可否为空
备注
ret
是否成功
Integer
M
附录1 返回码及返回码描述
msg
失败错误描述
String
result
输出结果集
Object
请求成功或者失败即使result为空也需要返回一个空的结果集,前端需要
输出结果集参数项
示例
请求示例:
http:// www.migucloud.com /v0/ edit_video
{
"uid":"109",
"token":"",
"vid":"000o8NKrl6naQ8QKSyosaL",
"title":"IMG_0040",
"catalog_id":4,
"catalog_name":"音乐",
"tags":"",
"summary":"",
"introduction":"",
"cover_img":""
}
返回示例:
成功:
{
"ret": "0",
"msg": "success",
"result": null
}
失败:
{
"ret": "1",
"msg": "失败信息描述",
"result": null
}
视频删除接口描述
删除某个视频,支持批量删除。
接口名称
视频删除
接口描述
接口使用者
平台门户
http请求类型
post
服务类
/v0/delete_video
请求参数
字段名
注释
类型(长度)
可否为空
备注
uid
用户ID
varchar(20)
否
token
token
varchar(20)
否
vid
视频id
varchar(20)
否
应答参数
字段名
注释
类型(长度)
可否为空
备注
ret
是否成功
Integer
M
附录1 返回码及返回码描述
msg
失败错误描述
String
result
输出结果集
Object
请求成功或者失败即使result为空也需要返回一个空的结果集,前端需要
输出结果集参数项
示例
请求示例:
http:// www.migucloud.com /v0/ delete_video
{
"uid":"109",
"token":"",
"vid":"000o8NKrl6naQ8QKSyosaL " //批量删除时,vid通过‘,’拼接
}
返回示例:
成功:
{
"ret": "0",
"msg": "success",
"result": null
}
失败:
{
"ret": "1",
"msg": "失败信息描述",
"result": null
}
点播视频上下线接口描述
上传任务完成后,用户可对某些视频选择是否上线,或者下线。
接口名称
点播视频上下线
接口描述
接口使用者
平台门户
http请求类型
post
服务类
/v0/video_publish
请求参数
字段名
注释
类型(长度)
可否为空
备注
uid
用户ID
String
否
token
token
String
否
vid
是否成功
String
否
vid以英文逗号隔开,可传入多个,作为批量上下线功能。
publishstatus
发布参数
Integer
否
41上线,42下线
应答参数
字段名
注释
类型(长度)
可否为空
备注
ret
是否成功
Integer
M
附录1 返回码及返回码描述
msg
失败错误描述
String
result
输出结果集
Object
请求成功或者失败即使result为空也需要返回一个空的结果集,前端需要
示例
请求示例:
http:// www.migucloud.com /v0/ video_publish
{
"uid":"109",
"token":"",
"vid":"000o8NKrl6naQ8QKSyosaL ",
"publishstatus":0
}
返回示例:
成功:
{
"ret": "0",
"msg": "success",
"result": null
}
失败:
{
"ret": "1",
"msg": "失败信息描述",
"result": null
}
批量修改视频分类接口描述
该接口可对已上传的视频从根目录或某个分类移到其他分类下面。
接口名称
批量修改视频分类
接口描述
接口使用者
平台门户
http请求类型
post
服务类
/v0/video_catalog
请求参数
字段名
注释
类型(长度)
可否为空
备注
uid
用户ID
String
否
token
token
String
否
vid
是否成功
String
否
catalog_id
发布参数
Integer
否
应答参数
字段名
注释
类型(长度)
可否为空
备注
ret
是否成功
Integer
M
附录1 返回码及返回码描述
msg
失败错误描述
String
result
输出结果集
Object
请求成功或者失败即使result为空也需要返回一个空的结果集,前端需要
输出结果集参数项
示例
请求示例:
http:// www.migucloud.com /v0/video_catalog
{
"uid":"109",
"token":"",
"vid":"000o8NKrl6naQ8QKSyosaL ",
" catalog_id ":0
}
返回示例:
成功:
{
"ret": "0",
"msg": "success",
"result": null
}
失败:
{
"ret": "1",
"msg": "失败信息描述",
"result": null
}
取CDN播放地址-无防盗链接口描述
通过该接口用户获得某个视频的点播地址,以观看该视频。
接口名称
获取CDN播放地址-无防盗链
接口描述
接口使用者
平台门户
http请求类型
get
服务类
/v3/query_spotviurl
请求参数
字段名
注释
类型(长度)
可否为空
备注
uid
用户ID
String
M
vid
视频ID
String
M
tflag
终端类型
String
是
FLASH,IOS,Android,其他
vtype
请求的码率类型
String
是
为空时,默认应答参数list部分为返回全部,如果有选择的码率的话(type),就只返回对应的码率,主要考虑某些手机只支持某一码率的情况。
source
源站标识
String
是
source,字段不传时默认走cdn,source=www.migucloud.com 时走源站播放
应答参数
字段名
注释
类型(长度)
可否为空
备注
ret
是否成功
Integer
M
附录1 返回码及返回码描述
msg
失败错误描述
String
result
输出结果集
Object
请求成功或者失败即使result为空也需要返回一个空的结果集,前端需要
输出结果集参数项
title
标题
String
timestamp
时间戳
String
没有可为空,
创建上传任务生成数据库记录的时间
list
下面是包含的字段项
List
vtype
码率类型
vurl
地址
String
否
各种码率集合
示例:
xxxx://xxx.xxx.xxx.xxx/a/b/c/d/e.m3u8
点播流媒体服务器地址(xxxx://xxx.xxx.xxx.xxx/)+转码服务器生成的(/a/b/c/d/e.m3u8),注:转码服务器可能给一个绝对路径,所以要截取(/a/b/c/d/e.m3u8)然后去和点播流媒体服务器地址拼接
示例
请求示例:
http://www.migucloud.com/v3/query_spotviurl?uid=109&vid=3xP-vftUddyGI6-piGrt5Y&vtype=2,3
返回示例:
{
"ret":"0",
"result":{
"title":"logo.mp4",
"timestamp":1448692568000,
"list":[
{"vtype":"高清",
"vurl":"http://www.migucloud.com/vi0/109/3x/
P-vftUddyGI6-piGrt5Y/sim184.logo_sim184.FLV?duration=0&owner=109&path=/109/3x/P-vftUddyGI6-piGrt5Y/sim184.logo_sim184.FLV&quality=高清&sign=ea067177989e11e593061cb72cab8a47×tamp=1449024400&title=logo.mp4&vid=3xP-vftUddyGI6-piGrt5Y¶1=yyy¶2=xxx"},
{"vtype":"超清",
"vurl":"http://www.migucloud.com/vi0/109/3x/
P-vftUddyGI6-piGrt5Y/sim54.logo_sim54.FLV?duration=0&owner=109&path=/109/3x/P-vftUddyGI6-piGrt5Y/sim54.logo_sim54.FLV&quality=超清&sign=ea5bcdd2989e11e593061cb72cab8a47×tamp=1449024400&title=logo.mp4&vid=3xP-vftUddyGI6-piGrt5Y¶1=yyy¶2=xxx"}]},
"msg":"success"
}
获取CDN播放地址-防盗链接口描述
接口名称
获取CDN播放地址-防盗链
接口描述
接口使用者
平台门户
http请求类型
Get
服务类
/v3/query_spotviurl_cdn
请求参数
字段名
注释
类型(长度)
可否为空
备注
uid
用户ID
String
M
vid
视频ID
String
M
tflag
终端类型
String
是
FLASH,IOS,Android,其他
vtype
请求的码率类型
String
是
为空时,默认应答参数list部分为返回全部,如果有选择的码率的话(type),就只返回对应的码率,主要考虑某些手机只支持某一码率的情况。
应答参数
字段名
注释
类型(长度)
可否为空
备注
ret
是否成功
Integer
M
附录1 返回码及返回码描述
msg
失败错误描述
String
result
输出结果集
Object
请求成功或者失败即使result为空也需要返回一个空的结果集,前端需要
输出结果集参数项
publicFlag
视频上下线状态
Integer
41上线,42下线
desc
上下线状态描述
String
title
标题
String
timestamp
时间戳
String
没有可为空,
创建上传任务生成数据库记录的时间
list
下面是包含的字段项
List
vtype
码率类型
vurl
地址
String
否
各种码率集合
示例:
xxxx://xxx.xxx.xxx.xxx/a/b/c/d/e.m3u8
点播流媒体服务器地址(xxxx://xxx.xxx.xxx.xxx/)+转码服务器生成的(/a/b/c/d/e.m3u8),注:转码服务器可能给一个绝对路径,所以要截取(/a/b/c/d/e.m3u8)然后去和点播流媒体服务器地址拼接
示例
http://www.migucloud.com/v3/query_spotviurl_cdn?uid=109&vid=04N9X0Es5aNVy19S6iAXY&token=afef99d4310511e698c800e0ed23fd72
返回示例
{
"ret": "0"
"result": {
"publicFlag": 41
"desc": "视频上线"
"title": "320x480.mp4"
"timestamp": "1466650090"
"list": [2]
0: {
"vtype": "流畅"
"vurl": "http://video.migucloud.cmvideo.cn/vi0/109/04/N9X0Es5aNVy19S6iAXY/cld240p/04N9X0Es5aNVy19S6iAXY_cld240p/index.m3u8?duration=61&owner=109&path=/109/04/N9X0Es5aNVy19S6iAXY/cld240p/04N9X0Es5aNVy19S6iAXY_cld240p/index.m3u8&quality=0&sign=44d9597838f311e6841f00e0ed333d74×tamp=1466652816&title=320x480.mp4&vid=04N9X0Es5aNVy19S6iAXY¶1=yyy¶2=xxx"
}-
1: {
"vtype": "原画质"
"vurl": "http://video.migucloud.cmvideo.cn/vi0/109/04/N9X0Es5aNVy19S6iAXY/cld1080p/04N9X0Es5aNVy19S6iAXY_cld1080p/index.m3u8?duration=61&owner=109&path=/109/04/N9X0Es5aNVy19S6iAXY/cld1080p/04N9X0Es5aNVy19S6iAXY_cld1080p/index.m3u8&quality=4&sign=44d95a8138f311e6841f00e0ed333d74×tamp=1466652816&title=320x480.mp4&vid=04N9X0Es5aNVy19S6iAXY¶1=yyy¶2=xxx"
}-
-
}-
"msg": "success"
}
视频下线:
{
"ret": "0",
"result": {
"publicFlag": 42,
"desc": "视频已下线",
"title": "1230000001.mp4",
"timestamp": "1451881903",
"list": []
},
"msg": "success"
}
失败:
{
"ret": 1,//参考附录1 返回码及返回码描述
"msg": "",
"result": {
}
}
视频下载接口描述
接口名称
视频下载
接口描述
接口使用者
平台门户
http请求类型
get
服务类
/v3/download_spotviurl
请求参数
字段名
注释
类型(长度)
可否为空
备注
Uid
用户ID
String
M
Vid
视频ID
String
M
Token
用户令牌
String
M
应答参数
字段名
注释
类型(长度)
可否为空
备注
Ret
是否成功
Integer
M
附录1 返回码及返回码描述
Msg
失败错误描述
String
Result
输出结果集
Object
请求成功或者失败即使result为空也需要返回一个空的结果集,前端需要
输出结果集参数项
url
视频下载地址
String
M
示例
http://www.migucloud.com/v3/download_spotviurl
{
"uid":"109",
"token":"",
"vid":"000o8NKrl6naQ8QKSyosaL ",
}
返回示例
成功:
{
"ret": "0",
"msg": "success",
"result": {
"url": "http://www.migucloud.com/vi0/187/0f/9xPxMjBcV9kLEaT3pDlS/08_Shanghai_20150813.rmvb"
}
}
失败:
{
"ret": 1,//参考附录1 返回码及返回码描述
"msg": "",
"result": {
}
}
视频分类管理创建分类接口描述
通过该接口新增分类。
接口名称
创建分类
接口描述
接口使用者
平台门户
http请求类型
post
服务类
/v0/catalog_create
请求示例
http://www.migucloud.com/v0/catalog_create
{"uid":"","token":"","name":"","parent_id":""}
请求参数
字段名
注释
类型(长度)
可否为空
备注
uid
用户ID
varchar(20)
否
token
token
varchar(20)
否
name
分类名称
varchar(20)
否
parent_id
父分类ID,默认0(表示根分类)
应答参数
字段名
注释
类型(长度)
可否为空
备注
ret
是否成功
Integer
M
附录1 返回码及返回码描述
msg
失败错误描述
String
result
输出结果集
Object
请求成功或者失败即使result为空也需要返回一个空的结果集,前端需要
输出结果集参数项
catalog_id
分类ID
M
uid
用户ID
M
parent_id
父分类ID
M
name
分类名
示例
请求示例:
http://www.migucloud.com/v0/catalog_create
{"uid":"109","token":"xxx","name":"11","parent_id":"1"}
返回示例:
成功:
{
"ret": 0,
"msg": "success",
"result": {
"catalog_id":”1”,
"uid":"109",
"parent_id":”1”,
"name":"11"
}
}
失败:
{
"ret":"1",
"result":{
"catalog_id":null,
"owner":null,
"name":null,
"parent_id":null
},
"msg":"-1,Auth failed1"
}
移动分类接口描述
将某个子分类移到其他分类下面,即修改某个子分类的父分类。
接口名称
移动分类
接口描述
接口使用者
平台门户
http请求类型
post
服务类
/v0/catalog_move
请求参数
字段名
注释
类型(长度)
可否为空
备注
uid
用户ID
varchar(20)
否
token
token
varchar(20)
否
catalog_id
分类ID
bigint(32)
否
parent_id
父分类ID,默认0(表示根分类)
bigint(32)
应答参数
字段名
注释
类型(长度)
可否为空
备注
ret
是否成功
Integer
M
附录1 返回码及返回码描述
msg
失败错误描述
String
result
输出结果集
Object
请求成功或者失败即使result为空也需要返回一个空的结果集,前端需要
输出结果集参数项
示例
请求示例:
http://www.migucloud.com/v0/catalog_move
{"uid":"101","token":"asd","catalog_id":"8","parent_id":"9"}
返回示例:
成功:
{
"ret": 0,
"msg": "success",
"result": {
"uid": "101",
"token": "asd",
"catalog_id": 8,
"parent_id": 9
}
}
失败:
{
"ret":"1",
"result":{
},
"msg":"-1,Auth failed1"
}
修改分类名称接口描述
修改某个分类的名字。
接口名称
修改分类名称
接口描述
接口使用者
平台门户
http请求类型
post
服务类
/v0/catalog_edit
请求参数
字段名
注释
类型(长度)
可否为空
备注
uid
用户ID
varchar(20)
否
token
token
varchar(20)
否
catalog_id
分类ID
bigint(32)
否
name
分类名称
varchar(20)
否
应答参数
字段名
注释
类型(长度)
可否为空
备注
ret
是否成功
Integer
M
附录1 返回码及返回码描述
msg
失败错误描述
String
result
输出结果集
Object
请求成功或者失败即使result为空也需要返回一个空的结果集,前端需要
输出结果集参数项
示例
请求示例:
http://www.migucloud.com/v0/catalog_edit
{"uid":"109","token":"asd","catalog_id":"8","name":"1111"}
返回示例:
成功:
{
"ret": 0,
"msg": “success”,
"result": {
"uid": "109",
"token": "asd",
"catalog_id": 8,
"name": "1111"
}
}
失败:
{
"ret":"1",
"result":{
},
"msg":"-1,Auth failed1"
}
删除分类接口描述
删除某个分类,删除的分类下的视频移到根目录。
接口名称
删除分类
接口描述
接口使用者
平台门户
http请求类型
post
服务类
/v0/catalog_delete
请求参数
字段名
注释
类型(长度)
可否为空
备注
uid
用户ID
varchar(20)
否
token
token
varchar(20)
否
catalog_id
分类ID,0表示根目录,即删除所有分类;其他为删除根目录下的某个分类
bigint(32)
否
删除的分类下的视频移到根目录
应答参数
字段名
注释
类型(长度)
可否为空
备注
ret
是否成功
Integer
M
附录1 返回码及返回码描述
msg
失败错误描述
String
result
输出结果集
Object
请求成功或者失败即使result为空也需要返回一个空的结果集,前端需要
输出结果集参数项
示例
请求示例:
http://www.migucloud.com/v0/catalog_delete
{"uid":"109","token":"asd","catalog_id":"11"}
返回示例:
成功:
{
"ret": 0,
"msg": "success",
"result": {
"uid": "101",
"token": "asd",
"catalog_id": 11
}
}
失败:
{
"ret":"1",
"result":{
},
"msg":"-1,Auth failed1"
}
分类树查询接口描述
获得用户的所以分类列表,包含分类结构信息。
接口名称
分类树查询
接口描述
接口使用者
平台门户
http请求类型
post
服务类
/v0/catalog_query
返回示例
成功:
{
"ret": 0,
“msg”:”success”
"result": {
"catalog_id": 0,
"name": "我的分类",
"parent_id": 0,
"child": [{
"catalog_id": 1,
"name": "分类1",
"parent_id": 0,
child: [{
"catalog_id": 2,
"name": "分类2",
"parent_id": 1,
child: [...]
},
{
"catalog_id": 3,
"name": "分类3",
"parent_id": 1,
child: [...]
}]
},
{
"catalog_id": 4,
"name": "分类4",
"parent_id": 0,
child: [{
"catalog_id": 5,
"name": "分类5",
"parent_id": 4,
child: [...]
}]
},
{
"catalog_id": 6,
"name": "分类6",
"parent_id": 0,
child: [{
"catalog_id": 7,
"name": "分类7",
"parent_id": 6,
child: [...]
}]
}]
}
}
失败:
{
"ret":"1",
"result":{
"catalog_id":null,
"name":null,
"parent_id":null,
"mov_sum":null,
"child":[]
},
"msg":"-1,Auth failed1"
}
请求示例
http://www.migucloud.com/v0/catalog_query
{
"uid":"109",
"token":"asd"
}
备注
请求参数
字段名
注释
类型(长度)
可否为空
备注
uid
用户ID
varchar(20)
否
token
token
varchar(20)
否
应答参数
字段名
注释
类型(长度)
可否为空
备注
ret
是否成功
Integer
M
附录1 返回码及返回码描述
msg
失败错误描述
String
result
输出结果集
Object
请求成功或者失败即使result为空也需要返回一个空的结果集,前端需要
输出结果集参数项
catalog_id
Long
name
String
parent_id
Integer
mov_sum
节点下视频个数
Integer
child
List
包含如下字段
catalog_id
Long
name
String
parent_id
Integer
mov_sum
节点下视频个数
Integer
5 修订历史
时间
修改者
版本号
备注
2015-12-22
潘兴浩
1、更新模板ID
2015-11-18
潘兴浩
1. 删除Vidinfo内的svid字段;
1. Zm_out_list新增svid字段;
2016-01-05
潘兴浩
1、【转码进度查询】【离线转码任务创建】接口更新错误代码列表2、【hd_out_list】【cx_out_list】接口更新错误代码列表
3、新增708,709,799
2016-02-05
潘兴浩
1、新增概述
2、转码创建接口更新为v2
3、新增附加信息相关内容
2016-04-14
Gwl
1、 新增获取真实点播视频地址接口
2、 新增视频下载接口
3、 4月15日更新了所有接口的请求示例和返回示例
2016-07-07
Gwl
1、 修改获取点播视频地址接口,增加一个字段区分获取播放地址是否走cdn,默认走cdn
2、 修改获取真实点播地址-CDN接口,增加cdn防盗链功能,失效时间为2小时。
2016-10-14
郭自峰
增加自定义转码模板查询,自定义转码模板插入更新,自定义转码模板删除三个接口