我是
靠谱客的博主
欣喜绿草,最近开发中收集的这篇文章主要介绍
移动端加密视频的授权播放,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
移动端加密视频的授权播放
Polyv的移动端加密视频由hls(m3u8文件)来实现。
移动端加密视频授权播放分三个级别
1.开放授权
开放授权意味着视频可以被随意观看,视频解密的key不被保护。
2.web授权
web授权播放需要输入指定参数,并且增加签名传递给m3u8地址。 m3u8的key授权服务器收到参数进行校验,如果参数和签名正确,key服务器会返回16字节的key文件给播放器。 如果参数或签名错误,则会返回403错误。
以下代码演示了如何输入参数和提交参数
1
2
3
4
5
6
7
8
9
| <?php
$vid = "sl8da4jjbx5d715bc3a8ce8f8194afab_s";
$secretKey= "";
$ts=time()*1000;
$hash = md5($secretKey.$vid.$ts);
$url = "http://hls.videocc.net/sl8da4jjbx/b/sl8da4jjbx5d715bc3a8ce8f8194afab.m3u8?ts=".$ts."&sign=".$hash;
?>
<video src="<?php echo $url ?>" preload="auto" controls=""></video>
|
播放器的javascript:
1
2
3
4
5
6
7
8
9
10
11
| <script src='http://static.polyv.net/file/polyvplayer_v2.0.min.js'></script>
<div id='player'></div>
<script>
var player = polyvObject('#player').videoPlayer({
'width':'600',
'height':'337',
'vid' : 'sl8da4jjbx5d715bc3a8ce8f8194afab_s',
'ts':'<?php echo $ts ?>',
'sign':'<?php echo $sign ?>'
});
</script>
|
另外需要指出的一点是,需要支持html5的浏览器下播放,就需要提供解密key,所以授权给html5播放器,就不能阻止附带下载功能的浏览器下载该加密视频。 但每个视频的签名和请求的时间戳都不同,可以阻止视频盗取者批量下载其他视频。
3.app授权
app授权播放需要集成polyv的iOS或android的sdk,通过sdk进行视频解密的key授权,key传输过程也进行了加密,可以有效防止视频被破解。 而客户只需要调用sdk的播放器以及简单函数就可以播放视频,不用理会key验证和视频解密的过程。
以下代码演示如何使用iOS代码播放加密视频
1
2
3
4
5
6
7
| #import "MPMoviePlayerController+plv.h"
...
//播放自适应码率视频
self.videoPlayer = [[MPMoviePlayerController alloc]initWithVid:_vid];
//播放指定码率的视频
self.videoPlayer = [[MPMoviePlayerController alloc]initWithVid:vid level:1];
|
最后
以上就是欣喜绿草为你收集整理的移动端加密视频的授权播放的全部内容,希望文章能够帮你解决移动端加密视频的授权播放所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复