视频加密使用说明
1 功能简介
网易云信官网API适用于业务服务器调用,为满足业务服务器的终端用户点播加密需求,设计相关API如下。
2 功能逻辑
- 终端用户登录,注册终端信息至用户业务服务器;
- 用户业务服务器注册终端用户信息至网易云信API服务器;
- 业务服务器返回accid和token给终端用户;
- 业务服务器向点播API获取传输令牌并下发给终端用户;
- 终端用户使用accid、token和传输令牌获取传输密钥进行解密。
注:accid、token的获取参见移动端终端用户管理使用说明
3 API
注:以下API的调用方式和请求头参数均和官网一致。
3.1 创建加密视频
3.1.1 接口描述
域名:vcloud.163.com
接口名:/app/vod/encrypt/create
用于将视频进行内容加密。
3.1.2 输入参数
参数 | 类型 | 必须 | 说明 |
---|---|---|---|
vid | Long | 是 | 视频 ID |
style | Int | 是 | 视频格式:0标识源视频、 1标识流畅mp4、2标识标清mp4、3标识高清mp4、 4标识流畅flv、5标识标清flv、6标识高清flv、 7标识流畅hls、8标识标清hls、9标识高清hls、19自适应hls(目前仅支持flv和hls类型视频加密) |
algo | Int | 否 | 加密算法类型,1表示RC4_ALL,2表示RC4_PART,默认为1 |
3.1.3 输出参数
参数 | 类型 | 说明 |
---|---|---|
code | Int | 状态码 |
encryptId | String | 加密视频 ID |
msg | String | 错误信息 |
注:此请求返回成功表示加密请求发送成功,视频加密完成通过转码回调地址回调相关信息(包括加密URL)。
3.1.4 响应状态码
HTTP状态码 | 含义 |
---|---|
200 | 操作成功 |
400 | 请求报文格式错误,报文构造不正确或者没有完整发送 |
700 | 服务器内部出现错误,请稍后重试或者将完整错误信息发送给客服人员帮忙解决 |
710 | 权限认证失败,请参考文档中的接口鉴权部分 |
720 | 访问失败,余额不足。 |
721 | 服务未开通,请前往开通页面申请服务开通 |
722 | 服务开通审核中,请联系客服人员开通服务 |
723 | 请求的次数超过了配额限制 |
3.1.5 示例代码
输入1
curl -X POST -H "Content-Type: application/json;charset=utf-8" -H "AppKey: 027338bf05cc4a65b5d98bc9d6af80b3" -H "Nonce: 1" -H "CurTime: 1465723418" -H "CheckSum: 61bbfd88c51028a2a28b3628584e65a2abe7ae13" -d '{"vid":22,"style":0,"algo":1}' https://vcloud.163.com/app/vod/encrypt/create
输出1
{
"code" : 200,
"ret" : {
"encryptId" : "sdfdsgsgegegsgsg"
}
}
3.2 更新加密视频
3.2.1 接口描述
域名:vcloud.163.com
接口名:/app/vod/encrypt/update
用于将加密视频进行更新,更新后加密视频ID不变,加密内容改变,需要重新获取传输密钥进行解密。
3.2.2 输入参数
参数 | 类型 | 必须 | 说明 |
---|---|---|---|
encryptId | String | 是 | 加密视频 ID |
3.2.3 输出参数
参数 | 类型 | 说明 |
---|---|---|
code | Int | 状态码 |
msg | String | 错误信息 |
3.2.4 响应状态码
HTTP状态码 | 含义 |
---|---|
200 | 操作成功 |
400 | 请求报文格式错误,报文构造不正确或者没有完整发送 |
700 | 服务器内部出现错误,请稍后重试或者将完整错误信息发送给客服人员帮忙解决 |
710 | 权限认证失败,请参考文档中的接口鉴权部分 |
720 | 访问失败,余额不足。 |
721 | 服务未开通,请前往开通页面申请服务开通 |
722 | 服务开通审核中,请联系客服人员开通服务 |
723 | 请求的次数超过了配额限制 |
3.2.5 示例代码
输入1
curl -X POST -H "Content-Type: application/json;charset=utf-8" -H "AppKey: 027338bf05cc4a65b5d98bc9d6af80b3" -H "Nonce: 1" -H "CurTime: 1465723418" -H "CheckSum: 61bbfd88c51028a2a28b3628584e65a2abe7ae13" -d '{"encryptId":"sdfdsgsgegegsgsg"}' https://vcloud.163.com/app/vod/encrypt/update
输出1
{
"code" : 200,
"ret" : {}
}
3.3 获取加密视频信息
3.3.1 接口描述
域名:vcloud.163.com
接口名:/app/vod/encrypt/getInfo
获取加密视频信息。
3.3.2 输入参数
参数 | 类型 | 必须 | 说明 |
---|---|---|---|
encryptId | String | 是 | 加密视频 ID |
3.3.3 输出参数
参数 | 类型 | 说明 |
---|---|---|
code | Int | 状态码 |
vid | Long | 视频 ID |
style | Int | 视频格式:0标识源视频、 1标识流畅mp4、2标识标清mp4、3标识高清mp4、 4标识流畅flv、5标识标清flv、6标识高清flv、 7标识流畅hls、8标识标清hls、9标识高清hls、19自适应hls(目前仅支持flv和hls类型视频加密) |
algo | Int | 加密算法类型,1表示RC4_ALL,2表示RC4_PART |
playUrl | String | 加密视频播放地址 |
downloadUrl | String | 加密视频下载地址 |
status | Int | 加密视频的状态,10表示初始,20表示加密失败,30表示加密中,40表示加密成功 |
msg | String | 错误信息 |
3.3.4 响应状态码
HTTP状态码 | 含义 |
---|---|
200 | 操作成功 |
400 | 请求报文格式错误,报文构造不正确或者没有完整发送 |
700 | 服务器内部出现错误,请稍后重试或者将完整错误信息发送给客服人员帮忙解决 |
710 | 权限认证失败,请参考文档中的接口鉴权部分 |
720 | 访问失败,余额不足。 |
721 | 服务未开通,请前往开通页面申请服务开通 |
722 | 服务开通审核中,请联系客服人员开通服务 |
723 | 请求的次数超过了配额限制 |
3.3.5 示例代码
输入1
curl -X POST -H "Content-Type: application/json;charset=utf-8" -H "AppKey: 027338bf05cc4a65b5d98bc9d6af80b3" -H "Nonce: 1" -H "CurTime: 1465723418" -H "CheckSum: 61bbfd88c51028a2a28b3628584e65a2abe7ae13" -d '{"vid":22,"style":0}' https://vcloud.163.com/app/vod/encrypt/getInfo
输出1
{
"code" : 200,
"ret" : {
"vid" : 21,
"style" : 0,
"algo" : 1,
"playUrl" : "http://vodk32ywxdf.vod.126.net/vodk32ywxdf/dcffdc0d-0735-41e1-8d30-d1d19450137f.flv",
"downloadUrl" : "http://vodk32ywxdf.vod.126.net/vodk32ywxdf/dcffdc0d-0735-41e1-8d30-d1d19450137f.flv"
}
}
3.4 删除加密视频
3.4.1 接口描述
域名:vcloud.163.com
接口名:/app/vod/encrypt/delete
删除加密视频。
3.4.2 输入参数
参数 | 类型 | 必须 | 说明 |
---|---|---|---|
encryptId | String | 是 | 加密视频 ID |
3.4.3 输出参数
参数 | 类型 | 说明 |
---|---|---|
code | Int | 状态码 |
msg | String | 错误信息 |
3.4.4 响应状态码
HTTP状态码 | 含义 |
---|---|
200 | 操作成功 |
400 | 请求报文格式错误,报文构造不正确或者没有完整发送 |
700 | 服务器内部出现错误,请稍后重试或者将完整错误信息发送给客服人员帮忙解决 |
710 | 权限认证失败,请参考文档中的接口鉴权部分 |
720 | 访问失败,余额不足。 |
721 | 服务未开通,请前往开通页面申请服务开通 |
722 | 服务开通审核中,请联系客服人员开通服务 |
723 | 请求的次数超过了配额限制 |
3.4.5 示例代码
输入1
curl -X POST -H "Content-Type: application/json;charset=utf-8" -H "AppKey: 027338bf05cc4a65b5d98bc9d6af80b3" -H "Nonce: 1" -H "CurTime: 1465723418" -H "CheckSum: 61bbfd88c51028a2a28b3628584e65a2abe7ae13" -d '{"encryptId":"sdfsdgewgweg"}' https://vcloud.163.com/app/vod/encrypt/delete
输出1
{
"code" : 200,
"ret" : {}
}
3.5 获取传输令牌
3.5.1 接口描述
域名:vcloud.163.com
接口名:/app/vod/encrypt/getToken
业务服务器获取传输令牌,用于下发给终端用户播放器请求获取传输密钥。
3.5.2 输入参数
参数 | 类型 | 必须 | 说明 |
---|---|---|---|
encryptId | String | 是 | 加密视频 ID |
expireTime | Long | 否 | 过期时间,默认为2小时 |
3.5.3 输出参数
参数 | 类型 | 说明 |
---|---|---|
code | Int | 状态码 |
transferToken | String | 获取到的传输令牌 |
msg | String | 错误信息 |
3.5.4 响应状态码
HTTP状态码 | 含义 |
---|---|
200 | 操作成功 |
400 | 请求报文格式错误,报文构造不正确或者没有完整发送 |
700 | 服务器内部出现错误,请稍后重试或者将完整错误信息发送给客服人员帮忙解决 |
710 | 权限认证失败,请参考文档中的接口鉴权部分 |
720 | 访问失败,余额不足。 |
721 | 服务未开通,请前往开通页面申请服务开通 |
722 | 服务开通审核中,请联系客服人员开通服务 |
723 | 请求的次数超过了配额限制 |
3.5.5 示例代码
输入1
curl -X POST -H "Content-Type: application/json;charset=utf-8" -H "AppKey: 027338bf05cc4a65b5d98bc9d6af80b3" -H "Nonce: 1" -H "CurTime: 1465723418" -H "CheckSum: 61bbfd88c51028a2a28b3628584e65a2abe7ae13" -d '{"encryptId":"adfsdgewgsdf","expireTime":7200}' https://vcloud.163.com/app/vod/encrypt/getToken
输出1
{
"code" : 200,
"ret" : {
"transferToken" : "tag=sdfesttgh&time=1487142939&expire=1234567&nonce=aaffdgetrevfdnboetoreeobnoerghreohorehorehoerhjeohjeohje&algo=1&checksum=sdfsdgjewjgowegjboerboregjoerorgeojo"
}
}
3.6 通过源视频获取加密视频
3.6.1 接口描述
域名:vcloud.163.com
接口名:/app/vod/encrypt/getPlayInfo
获取某个源视频的所有加密视频信息
3.6.2 输入参数
参数 | 类型 | 必须 | 说明 |
---|---|---|---|
vid | Long | 是 | 源视频ID |
3.6.3 输出参数
参数 | 类型 | 说明 |
---|---|---|
list | Array | 加密视频列表 |
- encryptId | String | 加密视频id |
- definition | String | 清晰度,origin表示源视频,sd表示流畅,hd表示标清,shd表示高清 |
- format | String | 格式,如flv、hls |
- playUrl | String | 播放地址 |
- downloadUrl | String | 下载地址 |
- encryptStatus | Int | 加密状态,10表示成功,20表示失败,30表示处理中,0表示已经删除 |
- size | Int | 视频文件大小(单位:字节) |
3.6.4 响应状态码
HTTP状态码 | 含义 |
---|---|
200 | 操作成功 |
400 | 请求报文格式错误,报文构造不正确或者没有完整发送 |
700 | 服务器内部出现错误,请稍后重试或者将完整错误信息发送给客服人员帮忙解决 |
710 | 权限认证失败,请参考文档中的接口鉴权部分 |
720 | 访问失败,余额不足。 |
721 | 服务未开通,请前往开通页面申请服务开通 |
722 | 服务开通审核中,请联系客服人员开通服务 |
723 | 请求的次数超过了配额限制 |
3.6.5 示例代码
输入1
curl -X POST -H "Content-Type: application/json;charset=utf-8" -H "AppKey: 027338bf05cc4a65b5d98bc9d6af80b3" -H "Nonce: 1" -H "CurTime: 1465723418" -H "CheckSum: 61bbfd88c51028a2a28b3628584e65a2abe7ae13" -d '{"vid":3729}' https://vcloud.163.com/app/vod/encrypt/getPlayInfo
输出1
{
"ret": {
"list": [{
"definition": "sd",
"downloadUrl": "http://voduzutnam1.nosdn.127.net/encrypt_SZGNF90M_4658_sd_encrypt.flv",
"encryptId": "7fb542e7-200a-4236-b1df-ca5a625b2fa4",
"encryptStatus": 10,
"format": "flv",
"playUrl": "http://voduzutnam1.vod.126.net/voduzutnam1/encrypt_SZGNF90M_4658_sd_encrypt.flv",
"size": 479227
}, {
"definition": "shd",
"downloadUrl": "http://voduzutnam1.nosdn.127.net/encrypt_fRGryiQJ_4658_shd_encrypt.flv",
"encryptId": "8a32ec23-ae24-4bb2-9b21-342d9891adf8",
"encryptStatus": 10,
"format": "flv",
"playUrl": "http://voduzutnam1.vod.126.net/voduzutnam1/encrypt_fRGryiQJ_4658_shd_encrypt.flv",
"size": 1240842
}]
},
"code": 200,
"requestId": "vod29a577ca-01f9-4ae5-ad68-977e9cc5b590"
}
本篇文档内容是否对您有帮助?
有帮助
我要吐槽
此文档对你是否有帮助
×
有帮助
我要吐槽
×