栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java SDK实现阿里云视频点播

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java SDK实现阿里云视频点播

一. 什么是视频点播 1. 简介

        阿里云视频点播(ApsaraVideo VoD)是集音视频采集、编辑、上传、自动化转码处理、媒体资源管理、高效云剪辑处理、分发加速、视频播放于一体的一站式音视频点播解决方案。

        阿里云视频点播基于阿里云强大的基础设施服务,面向视频网站、短视频、在线教育、娱乐社交、新闻传媒等行业,提供端-云-端的视频全链路服务,帮助企业和开发者快速搭建安全、弹性、高效、可定制的视频点播平台和应用。

2. 功能

(1)支持的上传方式 ——上传

        控制台上传,SDK上传,服务端(JAVA)上传,客户端上传:Web端(Javascript)、移动端(Android,iOS),离线拉取上传,PC客户端工具上传,并支持直播录制转点播。

(2)媒体管理和生产  ——处理

        视频点播支持对上传后的视频进行管理和剪辑。

(3)分发播放 ——播放

        视频点播支持播放音频和视频文件,您可以通过控制台预览、集成阿里云播放器SDK和集成第三方播放器进行播放。

二. Java SDK实现视频点播

使用视频点播实现音视频上传、存储、处理和播放的整体流程如下:

用户获取上传授权 —— VOD下发上传地址和凭证及VideoId —— 用户上传视频并保存视频ID(VideoId)—— 用户服务端获取播放授权 —— 用户客户端请求播放地址与凭证,VOD下发播放地址与带时效的播放凭证。—— 用户服务端将播放凭证下发给客户端完成视频播放

1. 开通视频点播

(1)登录视频点播控制台

(2)单击开通服务

 (3)选择视频点播服务,仔细阅读并选中视频点播服务协议,点击立即开通

(4)开通完成后,即可进入VOD控制台概览页面,开始使用点播服务。

2. 获取视频上传凭证和播放凭证

初始化

@Value("${aliyun.access-key-id}")
private String accessKeyId;

@Value("${aliyun.access-key-secret}")
private String accessKeySecret;

@PostConstruct
private void initialize(){
    String regionId = "cn-shanghai";
    DefaultProfile profile = DefaultProfile.getProfile(regionId, accessKeyId,         accessKeySecret);
    defaultAcsClient = new DefaultAcsClient(profile);
}

获取视频上传地址和凭证

private DefaultAcsClient defaultAcsClient;


public VideoAccessInfo createUploadVideo(UploadVideo uploadVideo) throws Exception {
    CreateUploadVideoRequest createUploadVideoRequest = transformRequest(uploadVideo);
    CreateUploadVideoResponse response = defaultAcsClient.getAcsResponse(createUploadVideoRequest);
    return transformResponse(response);
}


public VideoAccessInfo transformResponse(CreateUploadVideoResponse response) {
    VideoAccessInfo videoAccessInfo = new VideoAccessInfo();
    videoAccessInfo.setRequestId(response.getRequestId());
    videoAccessInfo.setUploadAddress(response.getUploadAddress());
    videoAccessInfo.setUploadAuth(response.getUploadAuth());
    videoAccessInfo.setVideoId(response.getVideoId());
    return videoAccessInfo;
}

刷新视频上传凭证

public VideoAccessInfo refreshUploadVideo(RefreshUpload refreshUpload) throws Exception {
    RefreshUploadVideoRequest request = new RefreshUploadVideoRequest();
    request.setVideoId(refreshUpload.getVideoId());
    RefreshUploadVideoResponse response = defaultAcsClient.getAcsResponse(request);
    return transformResponse(response);
}


public VideoAccessInfo transformResponse(RefreshUploadVideoResponse response) {
    VideoAccessInfo videoAccessInfo = new VideoAccessInfo();
    videoAccessInfo.setRequestId(response.getRequestId());
    videoAccessInfo.setUploadAddress(response.getUploadAddress());
    videoAccessInfo.setUploadAuth(response.getUploadAuth());
    videoAccessInfo.setVideoId(response.getVideoId());
    return videoAccessInfo;
}

获取视频播放凭证

public VideoPlayAuthVo getVideoPlayAuth(VideoPlayAuthRequest videoPlayAuthRequest) throws                     ClientException {
    GetVideoPlayAuthRequest request = new GetVideoPlayAuthRequest();
    request.setVideoId(videoPlayAuthRequest.getVideoId());
    request.setAuthInfoTimeout(videoPlayAuthRequest.getAuthInfoTimeout());
    return transformResponse(defaultAcsClient.getAcsResponse(request));
}


private VideoPlayAuthVo transformResponse(GetVideoPlayAuthResponse response) {
    VideoPlayAuthVo videoPlayAuthVo = new VideoPlayAuthVo();
    videoPlayAuthVo.setRequestId(response.getRequestId());
    videoPlayAuthVo.setPlayAuth(response.getPlayAuth());
    videoPlayAuthVo.setCoverURL(response.getVideometa().getCoverURL());
    videoPlayAuthVo.setDuration(response.getVideometa().getDuration());
    videoPlayAuthVo.setStatus(response.getVideometa().getStatus());
    videoPlayAuthVo.setTitle(response.getVideometa().getTitle());
    videoPlayAuthVo.setVideoId(response.getVideometa().getVideoId());
    return videoPlayAuthVo;
}

注意:客户端上传只能上传单个文件,服务端上传可以批量上传。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/317956.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号