使用阿里云视频点播功能demo
使⽤阿⾥云视频点播功能demo
今天学习使⽤阿⾥云视频点播功能,现在做个总结。⾸先需要在阿⾥云的视频点播服务开通功能,开通后进⼊控制管理台即可看见各种数据。
阿⾥云学习⽂档:
根据⽂档,要成功上传要分为3步
1.获取视频播放地址
2.获取视频播放凭证
3.上传视频到阿⾥云视频点播服务
因为上传视频可以进⾏加密,加密之后,使⽤加密之后地址不能进⾏视频播放,在数据库存储不存地址,⽽是存视频id(可以取得地址和凭证)
⼤概分为4步:
1.初始化对象
2.创建request,response对象
3.向request对象中设置值
4.调⽤⽅法
所以我们⾸先创建⼀个初始化的类⽤于初始化对象
package com.hzh.vodtest;
import com.aliyuncs.DefaultAcsClient;
import ptions.ClientException;
import com.aliyuncs.profile.DefaultProfile;
public class InitObject {
public static DefaultAcsClient initVodClient(String accessKeyId, String accessKeySecret) throws ClientException {
String regionId = "cn-shanghai";  // 点播服务接⼊区域
DefaultProfile profile = Profile(regionId, accessKeyId, accessKeySecret);
DefaultAcsClient client = new DefaultAcsClient(profile);
return client;
}
}
然后编写⽅法根据id获取播放地址
public static void getPlayUrl() throws ClientException{
// 1.根据视频id获取视频播放地址
// 创建初始化对象
限电省份DefaultAcsClient client = InitObject.initVodClient("马赛克","马赛克");
// 创建获取视频地址的request对象和response对象
GetPlayInfoRequest request = new GetPlayInfoRequest();
GetPlayInfoResponse response = new GetPlayInfoResponse();
// 向request对象中设置视频id
request.setVideoId("dd6dbdd3962640f6baa58391907d00ca");
// 调⽤初始化对象⾥的⽅法传递request,获取数据
response = AcsResponse(request);
List<GetPlayInfoResponse.PlayInfo> playInfoList = PlayInfoList();
腾达路由器设置图解
//播放地址
for (GetPlayInfoResponse.PlayInfo playInfo : playInfoList) {
System.out.print("PlayInfo.PlayURL = " + PlayURL() + "\n");
}
/
/Base信息
System.out.print("VideoBase.Title = " + VideoBase().getTitle() + "\n");
}
再编写⽅法⽤于获取播放凭证
public static void getPlayAuth() throws Exception{
// 2.根据视频id获取播放凭证
// 创建初始化对象
DefaultAcsClient client = InitObject.initVodClient("马赛克","马赛克");高血压吃什么食物最好最佳
// 创建获取视频凭证的request和response
GetVideoInfoResponse response = new GetVideoInfoResponse();
GetVideoInfoRequest request = new GetVideoInfoRequest();二战电影推荐
/
/ 向request中设置视频id
request.setVideoId("dd6dbdd3962640f6baa58391907d00ca");
// 调⽤初始化对象的⽅法得到凭证
response = AcsResponse(request);
}
最后上传视频
public static void main(String[] args) throws ClientException {
String accessKeyId = "马赛克";
String accessKeySecret = "马赛克";
String title = "周杰伦-Mojito(⾼清).mp4";  //上传之后⽂件名称
String fileName = "D:/6 - What If I Want to Move Faster.mp4";  //本地⽂件路径和名称
/
/上传视频的⽅法
UploadVideoRequest request = new UploadVideoRequest(accessKeyId, accessKeySecret, title, fileName);
/* 可指定分⽚上传时每个分⽚的⼤⼩,默认为2M字节 */
request.setPartSize(2 * 1024 * 1024L);
/* 可指定分⽚上传时的并发线程数,默认为1,(注:该配置会占⽤服务器CPU资源,需根据服务器情况指定)*/
request.setTaskNum(1);
UploadVideoImpl uploader = new UploadVideoImpl();
UploadVideoResponse response = uploader.uploadVideo(request);
if (response.isSuccess()) {
海贼王d的意志
System.out.print("VideoId=" + VideoId() + "\n");
} else {
/* 如果设置回调URL⽆效,不影响视频上传,可以返回VideoId同时会返回错误码。其他情况上传失败时,VideoId为空,此时需要根据返回错误码分析具体错误原因 */            System.out.print("VideoId=" + VideoId() + "\n");
System.out.print("ErrorCode=" + Code() + "\n");
System.out.print("ErrorMessage=" + Message() + "\n");
}
}
ps:马赛克是⾃⼰阿⾥云账户的accessKeyId和accessKeySecret
ps:因为现在aliyun-sdk-vod-upload还没有开源,所以需要⾃⼰⼿动下载依赖,在sdk⽂档中下载依赖的zip后,在cmd命令⾏中输⼊命令mvn install:install-file -DgroupId=com.aliyun -DartifactId=aliyun-sdk-vod-upload -Dversion=1.4.13 -Dpackaging=jar -Dfile=aliyun-java-vod-upload-1.4.13.jar,成功后可以导⼊

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。