调用getUploadToken获取视频文件上传地址和凭证
| 参数名称 | 描述 |
|---|---|
*originFileNameString | 上传文件名,包含文件格式 |
fileIdString | 文件ID,最长32位的任意字符串。用于断点续传,如果不传则不支持断点续传功能。 |
fileMd5String | 文件的md5值,即将弃用,使用fileId代替 |
domainString | 视频发布域名,若不传,则以视频管理默认域名作为本视频的发布域名,可通过云点播控制台>全局配置>默认域名设置默认域名 |
workflowIdString | 工作流ID,workflowId会覆盖cmd、waterMarkName、transCodeCombineName、subtitleId |
overwriteInteger | 上传策略,是否覆盖。取值范围:
0(否)
1(是) |
categoryNamesString | 视频分类,可指定父分类和子分类。如:[{"childName":"子分类1","parentName":"父分类1"},{"childName":"子分类2","parentName":"父分类2"}] |
waterMarkNameString | 水印名,上传成功后会自动转码增加水印 |
transCodeCombineNameString | 转码组合名,上传成功后会自动转码增加清晰度 |
subtitleIdString | 字幕ID ,对应云点播素材管理的素材ID。上传成功后会自动转码增加字幕;仅支持ass或srt字幕格式。 |
subtitleString | 支持多个字幕,最多可以添加13个字幕。只支持多码率自适应转码。仅支持vtt字幕格式。
格式内容为:
lang:字幕code,可以根据自己需求定义
subtitleId:字幕ID,对应云点播素材管理的素材ID
code[{"lang":"cn","subtitleId":"8a36dfe101921000368ac14400000000"},{"lang":"en-US","subtitleId":"8a38e428019210004d56ef8c00000000"},{"lang":"ko","subtitleId":"8a36dfe101921000368ac14400000000"}] 的base64加密
控制台播放器字幕语言对应code。
语言 code
中文:cn
英文:en-US
日文:ja
繁体中文:zh-tw
法语:fr
德语:de
西班牙语:es
葡萄牙语:pt
俄语:ru
韩语:ko
泰语:th
越南语:vt
印尼语:id |
| 参数名称 | 描述 |
|---|---|
codeInteger | 创建结果状态码,200为成功 |
messageString | 返回消息 |
dataObject | 返回数据 |
uploadUrlString | 上传域名地址 |
fileKeyString | 上传文件的相对路径,不带域名和最前面的斜杠 |
httpDnsServerString | HttpDns服务器地址 |
videoIdString | 视频ID,上传完成后可通过该ID查询该视频相关信息 |
uploadTokenString | 上传token |
speedDomainlUrlString | 【计划弃用】上传加速域名地址 |
bucketNameString | 空间名称 |
| 错误代码(code) | 描述(message) | HTTP状态码 | 语义 |
|---|---|---|---|
| 1500 | The video name is more than 40 characters long | 200 | 视频名称,超过40个字符 |
| 1604 | The MD5 value of the file cannot be empty | 200 | 文件MD5值不能为空 |
| 1605 | The MD5 value of the file is too long. Procedure | 200 | 文件MD5值长度过长 |
| 1606 | The video name cannot be empty | 200 | 视频名称不能为空 |
| 1607 | Video source error | 200 | 视频来源错误 |
| 1608 | The overwrite policy value can only be 0 or 1 | 200 | 覆盖策略值只能为0或1 |
| 1609 | Video size can only be a non-negative integer | 200 | 视频大小只能为非负整数 |
| 1610 | The video size is out of range | 200 | 视频大小超出范围 |
#!/bin/bash
username='example_username'
apiKey='example_apiKey'
date=`env LANG="en_US.UTF-8" date -u "+%a, %d %b %Y %H:%M:%S GMT"`
password=`echo -en "$date" | openssl dgst -sha1 -hmac $apiKey -binary | openssl enc -base64`
curl -i --url "https://api.cdnetworks.com/vod/videoManage/getUploadToken" \
-X "POST" \
-u "$username:$password" \
-H "Date: $date" \
-H "x-cnc-auth-method: BASIC" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{
"originFileName": "test.mp4",
"fileId":"XXXXXX",
"domain":"xxxx.com",
"workflowId":"XXXXXX",
"categoryNames":"category1",
"waterMarkName":"waterMark1",
"transCodeCombineName":"transCodeCombine1",
"subtitleId":"XXXXXX",
"overwrite":"0"
}'{
"code": 200,
"data": {
"fileKey": "video/201704/245bbb46f2c1456ae076d2f131949999_1492507971/test.flv",
"httpDnsServer": "https://sdkoptedge.chinanetcenter.com",
"uploadToken":"7e7dae54118c45a6ffd213a18c9d4847b51a73f1:NmVlZGVhMDNkYTMzMDY2MWE2ODU2Yjg1NjNlYTNkNTU0YmUyZmZiOA==:eyJzY29wZSI6Im92cHRlc3Q6dmlkZW8vMjAxNzA0LzI0NWJiYjQ2ZjJjMTQ1NmFlMDc2ZDJmMTMxOTQ5OTk5XzE0OTI1MDc5NzEvdGVzdCIsImRlYWRsaW5lIjoiMjUyNDYyMjQwMDAwMCIsIm92ZXJ3cml0ZSI6MCwiZnNpemVMaW1pdCI6MCwiY2FsbGJhY2tVcmwiOiJodHRwOi8vMTIwLjQxLjMuNDU6OTA4MS9jYWxsYmFjay9jYWxsYmFjayF1cGxvYWRDYWxsYmFjay5hY3Rpb24iLCJjYWxsYmFja0JvZHkiOiImYnVja2V0PSQoYnVja2V0KSZrZXk9JChrZXkpJmZuYW1lPSQoZm5hbWUpJmZzaXplPSQoZnNpemUpJm1pbWVUeXBlPSQobWltZVR5cGUpJnVybD0kKHVybCkmaXA9JChpcCkmY29zdFRpbWU9JChjb3N0VGltZSkmYXZpbmZvPSQoYXZpbmZvKSJ9",
"uploadUrl": "http://ovptest.up2.v1.wcsapi.com",
"videoId": "4B8F584A572B15712998422C3363177D",
},
"message": "Operation succeeded"
}