Java实现阿里云视频点播的功能
获取视频的播放地址
1.在阿里云中开通视频点播功能,上传一个测试视频
视频基本信息:(视频ID)
2.创建一个maven项目,引入依赖
<dependencies><dependency><groupId>com.aliyun</groupId><artifactId>aliyun-java-sdk-core</artifactId></dependency><dependency><groupId>com.aliyun.oss</groupId><artifactId>aliyun-sdk-oss</artifactId></dependency><dependency><groupId>com.aliyun</groupId><artifactId>aliyun-java-sdk-vod</artifactId></dependency><dependency><groupId>com.aliyun</groupId><artifactId>aliyun-sdk-vod-upload</artifactId></dependency><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId></dependency><dependency><groupId>org.json</groupId><artifactId>json</artifactId></dependency><dependency><groupId>com.google.code.gson</groupId><artifactId>gson</artifactId></dependency><dependency><groupId>joda-time</groupId><artifactId>joda-time</artifactId></dependency></dependencies>
3.根据你自己的accessKeyId和accessKeySecret获取client (不知到阿里云accessKeyId和accessKeySecret的可以参照前面的OSS文章提到过怎么获取)
public class InitObject {public static DefaultAcsClient initVodClient(String accessKeyId, String accessKeySecret) throws ClientException {String regionId = "cn-shanghai"; // 点播服务接入区域DefaultProfile profile = DefaultProfile.getProfile(regionId, accessKeyId, accessKeySecret);DefaultAcsClient client = new DefaultAcsClient(profile);return client;}
}
4.获取视频的播放地址
public class testVod {public static void main(String[] args) {try {DefaultAcsClient client = InitObject.initVodClient("your accessKeyId","your accessKeySecret");//创建获取视频地址的request和responseGetPlayInfoRequest request = new GetPlayInfoRequest();GetPlayInfoResponse response = new GetPlayInfoResponse();//向request中传入视频idrequest.setVideoId("d6f12144360449b1935f01bb73e1f3fa");//调用初始化对象里方法,传递request,获取数据response = client.getAcsResponse(request);List<GetPlayInfoResponse.PlayInfo> playInfoList = response.getPlayInfoList();for (GetPlayInfoResponse.PlayInfo playInfo:playInfoList) {System.out.println("URL= "+ playInfo.getPlayURL());}System.out.println("VidoBase title = "+response.getVideoBase().getTitle());} catch (ClientException e) {e.printStackTrace();}}
}
5.结果,根据获取的URL可以直接播放
(在这里获取的是不加密的视频)
获取视频播放凭证(播放加密转码后的视频)
public static void main(String[] args) {//根据视频的ID获取视频的播放凭证try {DefaultAcsClient client = InitObject.initVodClient("accessKeyId","accessKeySecret");//创建获取视频凭证的request和responseGetVideoPlayAuthRequest request = new GetVideoPlayAuthRequest();GetVideoPlayAuthResponse response = new GetVideoPlayAuthResponse();//向request中传入视频idrequest.setVideoId("c1fc08a30da742a7af6d4a891a63c9a8");// //调用初始化对象里方法获取凭证response = client.getAcsResponse(request);System.out.println("凭证= "+ response.getPlayAuth());} catch (ClientException e) {e.printStackTrace();}}
上传视频到阿里云视频点播服务
public static void main(String[] args) {//本地上传UploadVideoRequest request = new UploadVideoRequest("accessKeyId", "accessKeySecret", "测试视频", "C:/Users/jaksiont/Desktop/test.mp4");/* 可指定分片上传时每个分片的大小,默认为2M字节 */request.setPartSize(2 * 1024 * 1024L);/* 可指定分片上传时的并发线程数,默认为1,(注:该配置会占用服务器CPU资源,需根据服务器情况指定)*/request.setTaskNum(1);UploadVideoImpl uploader = new UploadVideoImpl();UploadVideoResponse response = uploader.uploadVideo(request);System.out.print("RequestId=" + response.getRequestId() + "\n"); //请求视频点播服务的请求IDif (response.isSuccess()) {System.out.print("VideoId=" + response.getVideoId() + "\n");} else {/* 如果设置回调URL无效,不影响视频上传,可以返回VideoId同时会返回错误码。其他情况上传失败时,VideoId为空,此时需要根据返回错误码分析具体错误原因 */System.out.print("VideoId=" + response.getVideoId() + "\n");System.out.print("ErrorCode=" + response.getCode() + "\n");System.out.print("ErrorMessage=" + response.getMessage() + "\n");}}
如果项目中做了Nginx代理一定要注意
问题:我在测试上传视频时,总是出现跨域问题,可是检查了好久,跨域的配置都是正确的。一开始以为是Nginx修改了配置文件没有生效,可是测试了很久没毛病啊,终于在今天早上找到了原因配置nginx上传文件大小,否则上传时会有 413 (Request Entity Too Large) 异常
client_max_body_size 1024m;一定要在配置中加上这句,不加的话由于文件限制,Nginx就不做请求转发了!!!!!!
Java实现阿里云视频点播的功能相关推荐
- Java使用阿里云视频点播
阿里云视频点播服务 视频点播 是集音视频采集.编辑.上传.自动化转码处理.媒体资源管理.分发加速于一体的一站式音视频点播方案. 登录阿里云 搜索 视频点播 我们的账号需要实名认证 且功能是需要付费了 ...
- 超级详细!java实现阿里云视频直播功能
java实现阿里云视频直播 准备工作 [官方地址](https://help.aliyun.com/document_detail/198676.html?spm=a2c4g.446769.0.0.1 ...
- (短信服务)java SpringBoot 阿里云短信功能实现发送手机验证码
一.阿里云准备工作 1.阿里云短信服务-注册账号 阿里云官网: https://www.aliyun.com/ 点击官网首页注册按钮. 2.阿里云短信服务-设置短信签名(阿里云提供测试的签名,暂时可以 ...
- 【谷粒学院】阿里云视频点播VOD功能笔记
文章目录 1.准备工作 2.代码详解 3.测试结果 1.准备工作 首先配置文件中需要配置好阿里云相关id和密钥(和阿里云OSS配置一样) 如果不知道id和密钥,就去阿里云官网进行服务开通申请就可以得到 ...
- Java SDK实现阿里云视频点播
一. 什么是视频点播 1. 简介 阿里云视频点播(ApsaraVideo VoD)是集音视频采集.编辑.上传.自动化转码处理.媒体资源管理.高效云剪辑处理.分发加速.视频播放于一体的一站式音视频点播解 ...
- 第三方服务-阿里云视频点播服务java服务端SDK相关代码
视频点播服务中的视频,也依然是存在OSS上的,但是区别是什么呢?下面关于区别的描述摘自阿里云官网 视频的点播场景涉及视频的存储.转码.分发加速几个环节,那么: 视频点播是集视频音视频采集.编辑.上传. ...
- 阿里云视频点播功能使用
1.开通并且获得密钥和安全密钥 1.开通 1. 2. 3. 4. 2.获得配置参数 1.启用 2.添加转码模组 3.获取AccessKeyId和AccessKey Secret 2.使用 1.下载Ja ...
- 阿里云视频点播(VOD)服务的视频上传JAVA代码开发(上传)
一. 设计需求 使用阿里云视频点播服务对客户端上传的视频进行转码处理, 并存储到本地. 支持海外用户的大视频文件上传. 解决海外上传的有无问题. 二. 实现思路 客户端向服务端请求凭证, 获取上传地址 ...
- 知识付费阿里云视频点播功能
阿里云视频点播(VOD)是集音视频上传.自动化转码处理.媒体资源管理.分发加速于一体的全链路音视频点播服务.借助灵活.可伸缩的存储.处理及内容分发服务,帮助企业和开发者快速搭建安全.弹性.高可定制的点 ...
最新文章
- Python3和Raspberry Pi最全面最直接的课程
- GDCM:gdcm::Series的测试程序
- C语言学习总结(四)——数据结构
- endnotex9如何导入caj中文文献_EndNote系列教程(二)——数据库的建立及文献的筛选...
- 深度学习笔记(18) 迁移学习
- CCF NOI1027 数字之和
- php中通过post和get传递数组的方法
- 问题2:无法打开包括文件:“windows.h”:No such file or directory
- react如何写ajax,请问如何在React中做Ajax 请求?
- unity替换鼠标图标
- scrapy-redis爬取豆瓣电影短评,使用词云wordcloud展示
- 若依管理系统漏洞利用
- oracle怎么判断逻辑读,如何查看Oracle数据库物理读、逻辑读前10的sql?
- sql java web动态曲线图_使用Echarts实现动态曲线图表
- OpenCV显示MNIST中的手写图片
- AC/DC电源适配器科普
- Navigation测试常用网址导航工具
- SQLPrompt v7.2
- 【田姓】宗谱——【名人精粹】
- 读书笔记-偷影子的人
热门文章
- C语言中十六进制字符串处理以及分析
- 最新 eleme 超市药店数据采集爬虫接口0329
- This.invoke和this.begininvoke的区别?
- 使用 Trace32 对 FLASH 编程摘要及Trace32-ICD和Trace32-ICE的区别
- php 端口反弹,详解反弹shell命令
- Cannot inline bytecode built with JVM target 1.8 into bytecode that is being built with JVM target 1
- 更换windows xp序列号
- 小程序分享功能记录;小程序页面分享给好友携带参数
- 问卷排序题应该怎样分析?
- Linux安装输入法