搜索视频
接口描述
1、搜索视频详细内容
2、接口支持https协议
接口URL
http://api.polyv.net/v2/video/search-videos
请求方式
GET
接口约束
1、接口同时支持HTTP 、HTTPS ,建议使用HTTPS 确保接口安全,接口调用有频率限制,详细请查看
请求参数描述
ptime
true
Long
当前时间的毫秒级时间戳,3分钟内有效
sign
true
String
签名,为40位大写的SHA1值,生成签名的secretkey密钥作为通信数据安全的关键信息,严禁保存在客户端直接使用,所有API都必须通过客户自己服务器中转调用POLYV服务器获取响应数据
【详见签名生成规则】
filters
false
String
需要返回的视频信息,多个以英文逗号分隔,默认仅返回基础信息 basicInfo:基础信息 metaData:元数据 transcodeInfo:转码信息 snapshotInfo:截图信息
title
false
String
按标题/视频vid模糊搜索
tag
false
String
按视频标签模糊搜索
uploader
false
String
上传者,例如:主账号
containSubCate
false
Boolean
是否包含子分类 true:包含 false:不包含,默认为true
startTime
false
Long
按创建时间范围查询,起始时间戳,13位时间戳
endTime
false
Long
结束时间戳,13位时间戳
startModifyTime
false
Long
按修改时间范围查询,起始时间戳,13位时间戳
endModifyTime
false
Long
修改时间的结束时间戳,13位时间戳
encrypted
false
Boolean
是否加密
playAuthEnable
false
Boolean
是否开启了播放授权
sort
false
String
结果排序,可以按创建时间或播放次数降序/升序排序 creationTimeAsc:创建时间升序 creationTimeDesc:创建时间降序 playTimesAsc:播放次数升序 playTimesDesc:播放次数降序
page
false
Integer
页码,默认为1
pageSize
false
Integer
页面大小,默认为10,最大1000
status字段说明
60/61
已发布
10
等待编码
20
正在编码
50
等待审核
51
审核不通过
-1
已删除
示例
http://api.polyv.net/v2/video/search-videos?cateId=1615795867474&uploader=%E4%B8%BB%E8%B4%A6%E5%8F%B7&sign=1BE730A20058481E794D3B5BE27ED9FBF7B491C0&containSubCate=true&pageSize=10&filters=basicInfo%2CmetaData&page=1&sort=creationTimeDesc&userid=1b448be323&ptime=1620289391124&status=60
响应参数描述
data字段说明
pageNumber
Integer
当前的页数
totalPages
Integer
总的页数
pageSize
Integer
每页条数
totalItems
Integer
总的条数
contents字段说明
vid
String
视频id
basicInfo字段说明
title
String
视频标题
description
String
视频描述
duration
Long
源视频时长,单位:秒
thumbnailURL
String
首图地址,小图
coverURL
String
首图地址,大图
creationTime
String
创建时间,格式为:yyyy-MM-dd HH:mm:ss
updateTime
String
更新时间,格式为:yyyy-MM-dd HH:mm:ss
size
Long
源文件大小,单位:Bytes
status
Integer
视频状态码
cateId
Long
分类id;其中1为根目录,即"默认分类"
cateName
String
分类名称
tags
String
标签
uploader
String
上传者
playTimes
Integer
播放次数
md5Checksum
String
视频源文件校验md5校验和
metaData字段说明
size
Long
源文件大小,单位:Bytes
format
String
视频容器类型,如mp4、flv等
duration
Long
源视频时长,单位:秒
bitrate
Integer
视频码率,单位:kbps
fps
Integer
视频帧率
height
Integer
分辨率高,单位:px
width
Integer
分辨率宽,单位:px
codec
String
编码格式,例如:h264、h265等
transcodeInfos字段说明
playUrl
String
播放地址
definition
String
清晰度 SOURCE:原清晰度 LD:普清 SD:标清 HD:高清
bitrate
Integer
码率kbps
duration
Long
时长,秒
encrypt
Boolean
是否加密 true:加密视频 false:非加密
format
String
转码格式,如mp4、flv、pdx、hls
fps
Integer
视频帧率
height
Integer
分辨率高,单位:px
width
Integer
分辨率宽,单位:px
status
String
视频状态 normal:可以正常播放 unavailable:不能正常播放
snapshotInfo字段说明
imageUrl
String[]
截图url数组,小图
bigImageUrl
String[]
截图url数组,大图
Java请求示例
快速接入基础代码请下载相关依赖源码, 点击下载源代码 ,下载后加入到自己的源码工程中即可。测试用例中的HttpUtil.java 和 VodSignUtil.java 都包含在下载文件中。
强烈建议您使用点播Java SDK完成API的功能对接,点播Java SDK 对API调用逻辑、异常处理、数据签名、HTTP请求线程池进行了统一封装和优化。
private static final Logger log = LoggerFactory.getLogger(VodSearchTest.class);
/**
* 搜索视频
* @throws Exception
* @throws NoSuchAlgorithmException
*/
@Test
public void testSearchVideo() throws Exception, NoSuchAlgorithmException {
//公共参数,填写自己的实际参数
String secretKey = super.secretKey;
String userId = super.userId;
String ptime = String.valueOf(System.currentTimeMillis());
//业务参数
String url = "http://api.polyv.net/v2/video/search-videos";
String filters = "basicInfo,metaData";
String cateId = "1615795867474";
String uploader = "主账号";
String status = "60";
String containSubCate = "true";
String page = "1";
String pageSize = "10";
String sort = "creationTimeDesc";
Map<String, String> requestMap = new HashMap<>();
requestMap.put("userid", userId);
requestMap.put("ptime", ptime);
requestMap.put("cateId", cateId);
requestMap.put("filters", filters);
requestMap.put("uploader", uploader);
requestMap.put("status", status);
requestMap.put("containSubCate", containSubCate);
requestMap.put("page", page);
requestMap.put("pageSize", pageSize);
requestMap.put("sort", sort);
requestMap.put("sign", VodSignUtil.getSign(requestMap, secretKey));
String response = HttpUtil.get(url, requestMap);
log.debug("测试搜索视频,{}", response);
//do somethings
}
响应示例
系统全局错误说明详见全局错误说明
成功示例
{
"code": 200,
"status": "success",
"message": "success",
"data": {
"pageNumber": 1,
"totalPages": 1,
"pageSize": 10,
"contents": [
{
"vid": "1b448be32389acdf41f567e3a0bf0c19_1",
"basicInfo": {
"title": "3-25测试裁剪",
"description": "",
"duration": 81,
"coverURL": "https://img.videocc.net/uimage/1/1b448be323/9/1b448be32389acdf41f567e3a0bf0c19_0_b.jpg",
"creationTime": "2021-03-25 14:33:29",
"updateTime": "2021-03-25 14:35:22",
"size": 3101307,
"status": 61,
"cateId": 1616654004170,
"cateName": "fx20lh79cf",
"tags": "2191541_fx20lh79cf-2e77d0a29c11adbf9fea7a1a206fa666|ppt|playback",
"uploader": "API",
"playTimes": 1
},
"metaData": {
"size": 3101307,
"format": "m3u8",
"duration": 81,
"bitrate": 0,
"fps": 25,
"height": 720,
"width": 1280,
"codec": "h264"
}
},
{
"vid": "1b448be3230e2235bc8f43c3aafa23b5_1",
"basicInfo": {
"title": "合并后文件名1234",
"description": "",
"duration": 321,
"coverURL": "https://img.videocc.net/uimage/1/1b448be323/5/1b448be3230e2235bc8f43c3aafa23b5_0_b.jpg",
"creationTime": "2021-03-15 16:11:08",
"updateTime": "2021-03-15 16:16:21",
"size": 19117170,
"status": 61,
"cateId": 1615795867478,
"cateName": "fwr2dfsptr",
"tags": "2191541_fwr2dfsptr-b90e4e77230c24f895b1ffeabe3059cb|ppt|playback",
"uploader": "API",
"playTimes": 0
},
"metaData": {
"size": 19117170,
"format": "m3u8",
"duration": 321,
"bitrate": 0,
"fps": 25,
"height": 720,
"width": 1280,
"codec": "h264"
}
}
],
"totalItems": 2
}
}
异常示例
签名不正确
{
"code":400,
"status":"error",
"message":"the sign is not right",
"data":""
}
时间戳过期
{
"code": 400,
"status": "error",
"message": "ptime is too old.",
"data": ""
}
内部错误,或传了非法参数,程序转换异常
{
"code": 500,
"status": "fail",
"message": "undefined error",
"data": null
}
Last updated
Was this helpful?