视频点播播放器如何实现加密下载?

简介: 目前视频下载实现可使用播放器接口实现.下载实现能够加密安全下载.本文档演示如何添加一个下载项且完成下载流程.

1、概述

目前视频下载实现可使用播放器接口实现.下载实现能够加密安全下载.本文档演示如何添加一个下载项且完成下载流程.

2、下载实现流程

1.初始化下载管理类,配置下载加密密钥和保存路径。

AliyunDownloadConfig config = new AliyunDownloadConfig();
////设置安全图片,安全图片获取见另外一个文档:https://help.aliyun.com/document_detail/57920.html?spm=5176.doc51789.6.666.TQxC07
config.setSecretImagePath(Environment.getExternalStorageDirectory().getAbsolutePath() + "/DingTalk/encryptedApp.dat");
//设置保存路径。请确保有SD卡访问权限。
config.setDownloadDir(Environment.getExternalStorageDirectory().getAbsolutePath() + "/test_save");
//设置同时下载个数
config.setMaxNums(2);
AliyunDownloadManager.getInstance(this).setDownloadConfig(config);

2.准备下载

//(1)获取下载实例
downloadManager = AliyunDownloadManager.getInstance(this);
//(2)添加下载监听
downloadManager.addDownloadInfoListener(downloadInfoListener);
//(3)组装下载需要的视频信息并且调用prepareDoawloadMedia.如下的参数如何获取见:https://help.aliyun.com/document_detail/57916.html?spm=5176.7757620.6.666.4hd5uh
AliyunDataSource.AliyunDataSourceBuilder adb = new AliyunDataSource.    AliyunDataSourceBuilder(this);
       if (adb == null) return;
       adb.setAccessKeyId(akiStr);
       adb.setAccessKeySecret(aksStr);
       adb.setPlayKey(playKeyStr);
       adb.setVideoId(vidStr);
downloadManager.prepareDownloadMedia(adb.build());

3.调用准备下载之后,如信息没有异常会收到准备成功的回调.在准备成功的回调里面调用开始下载

        @Override
        public void onPrepared(List<AliyunDownloadMediaInfo> list) {
            //第二步 ; 准备完成
            Log.d("AliyunDownload","onPrepared");
            AliyunDataSource.AliyunDataSourceBuilder adb = getAliyunDataSourceBuilder();
            adb.setFormat(list.get(0).getFormat());
            adb.setQuality(list.get(1).getQuality());
            //返回值为0则为开始下载成功.
            downloadManager.startDownloadMedia(adb.build());
        }

4.如无异常将会开始下载,走onProgress的回调.成功会走onCompletion的回调.

private AliyunDownloadInfoListener downloadInfoListener = new AliyunDownloadInfoListener() {
        @Override
        public void onPrepared(List<AliyunDownloadMediaInfo> list) {
          //准备完成
        }
        @Override
        public void onStart(AliyunDownloadMediaInfo aliyunDownloadMediaInfo) {
          //开始下载
        }
        @Override
        public void onProgress(AliyunDownloadMediaInfo aliyunDownloadMediaInfo, int i) {
          //开始下载进度
        }
        @Override
        public void onStop(AliyunDownloadMediaInfo aliyunDownloadMediaInfo) {
          //停止下载
        }
        @Override
        public void onCompletion(AliyunDownloadMediaInfo aliyunDownloadMediaInfo) {
          //下载成功
        }
        @Override
        public void onError(AliyunDownloadMediaInfo aliyunDownloadMediaInfo, int i, String s) {
          //下载出错
        }
        @Override
        public void onWait(AliyunDownloadMediaInfo aliyunDownloadMediaInfo) {
          //等待下载
        }
        @Override
        public void onM3u8IndexUpdate(AliyunDownloadMediaInfo outMediaInfo, int index) {
         //m3u8更新
        }
    };

本文为【问答合集】阿里视频云常见技术问题汇总——内含技术文档40+ 持续更新中 系列文章之一,如果本文还不能解决你的问题可以在汇总合集中查看,有任何问题也欢迎回复,谢谢.

相关实践学习
使用CLup和iSCSI共享盘快速体验PolarDB for PostgtreSQL
在Clup云管控平台中快速体验创建与管理在iSCSI共享盘上的PolarDB for PostgtreSQL。
AnalyticDB PostgreSQL 企业智能数据中台:一站式管理数据服务资产
企业在数据仓库之上可构建丰富的数据服务用以支持数据应用及业务场景;ADB PG推出全新企业智能数据平台,用以帮助用户一站式的管理企业数据服务资产,包括创建, 管理,探索, 监控等; 助力企业在现有平台之上快速构建起数据服务资产体系
目录
相关文章
|
6月前
|
存储 安全 机器人
如何下载阿里云视频点播数据
如何下载阿里云视频点播(VOD)数据
249 0
|
4月前
|
编解码 缓存 安全
视频点播这边在执行 HLS标准加密 转码后的视频,在解密播放上有些技术问题视频点播这边在执行 HLS标准加密 转码后的视频,在解密播放上有些技术问题
视频点播这边在执行 HLS标准加密 转码后的视频,在解密播放上有些技术问题视频点播这边在执行 HLS标准加密 转码后的视频,在解密播放上有些技术问题
140 1
|
存储 编解码 JSON
视频点播HLS标准加密常见问题
为了有效防止视频泄露和盗链问题,视频加密技术的应用越来越广泛。阿里云视频点播服务提供了私有加密和标准加密,并在官网产品帮助文档中心提供了开发文档。本文再官网开发文档的基础上,补充说明一些开发者经常遇到的问题,以便更快速的定位、解决问题。
3529 0
视频点播HLS标准加密常见问题
|
编解码 运维 安全
开放下载!《VoD问题排查与实战手册》40+技术问答快速入门阿里云视频点播
精解基本概念快速入门阿里云视频点播,40+技术问答详解常用功能排查及解决方案,针对多种业务场景的最佳实战分享。云运维工程师不可错过的匠心之作《VoD问题排查与实战手册》现已开放下载!快来下载阅读吧~
13367 0
开放下载!《VoD问题排查与实战手册》40+技术问答快速入门阿里云视频点播
|
开发框架 .NET 数据安全/隐私保护
视频点播HLS 标准加密实现 .net解密服务器搭建说明
解密服务器搭建成功了,但是访问之后出现解密失败或者无法访问加密的m3u8,可以从如下几点确认可能的原因。
视频点播HLS 标准加密实现 .net解密服务器搭建说明
|
开发工具 Swift iOS开发
视频点播IOS播放器SDK Swift集成和实现
通过Swift 集成和实现阿里视频点播IOS播放器SDK的介绍
1796 0
视频点播IOS播放器SDK Swift集成和实现
|
数据安全/隐私保护
【视频点播】播放器vid播放+MtsHlsUriToken
针对视频点播服务的播放器,HLS标准加密使用vid播放的情况,需要增加MtsHlsUriToken的场景
1272 0
【视频点播】播放器vid播放+MtsHlsUriToken
|
Web App开发 编解码 开发工具
视频点播 SDK-播放器问题
使用阿里云播放器 目前随便手机型号的增加,和大量短视频的接入,VOD 点播播放器会遇到各种奇葩问题,今天从几个非常多的案例入手讲下坑点。 案例分析:ios 3.4.7 播放器 crash 出现问题,先看下视频编码,发现客户源文件是 vcodec 是 h264 ,acodec 是 amr ,可以使用 ffprobe 命令分析视频的编码。
视频点播 SDK-播放器问题
|
Java 数据安全/隐私保护
Java实现最电话号码的简单加密源码
Java实现最电话号码的简单加密源码
17 0
|
2月前
|
存储 安全 算法
【接口加密】Java中的接口加密实践
【接口加密】Java中的接口加密实践