PlaySafe®视频版权保护解决方案
全终端视频加密防下载
对视频进行逐帧加密,杜绝被破解下载;通过视频防录屏(用户ID跑马灯)、数字化动态水印、防盗链(域名白名单限制)、防篡改(HTTPS)等技术,全方位保护您的视频。支持PC端/移动端/web网页/微信/APP/小程序。

酷播云HTML5视频加密网页播放器_效果图

跨平台多终端适配/视频加密网页播放器/效果截图

跨平台多终端适配
支持PC端/iOS端/安卓端/微信
对视频进行逐帧加密,杜绝被破解下载;通过视频防录屏(用户ID跑马灯)、随机水印、防盗链(域名白名单限制)、防篡改(HTTPS)等技术,全方位保护您的视频,支持PC端/移动端/网页web/微信/APP/小程序
高强度AES视频加密、独家研发加密技术专利、智能动态加密、逐帧重编码加密、视频加密专用播放器
酷播云HTML5视频加密网页播放器_效果图
移动端视频加密
移动端加密覆盖web、APP及小程序等多个终端。通过优化Apple HLS Encryption 视频保护机制,对视频文件切片加密、多级混淆,对AES key密钥文件深度保护、播放域名加密等,实现从源文件到播放的全流程视频安全。
关键词: HLS加密 / 小程序加密 / 视频文件切片加密 / 多级混淆加密
酷播云HTML5视频加密网页播放器_效果图
独家研发的VRM13加密技术
VRM13采用分布式编码技术,将视频文件物理切片,每片视频进行多种算法混合型加密, 同时结合POLYV独立研制密码本,将关键数据进行错序混淆,对视频文件进行最高级别加密,这样经过加密的视频内容即使被下载,也无法进行恶意的二次分发,视频破解难度倍增。
酷播云HTML5视频加密网页播放器_效果图
数字化动态水印
将用户ID、电话号码或其他信息内容等以动态水印形式展现在视频上,实现水印在视频上不规则地显现,可追溯录屏者身份,对翻录行为起到强有力的震慑作用。
关键词: 用户id动态水印 / 会员id动态水印 / 动态水印防录屏 / 随机水印识别 / 视频随机动态水印
酷播云HTML5视频加密网页播放器_效果图
用户ID跑马灯
将用户的ID、电话号码或其他信息内容以跑马灯形式在视频上不规则滚动,以此来警示盗版者,对于盗录行为也起到保护和震慑作用,通常可以显示用户的会员ID/身份信息等。
如下演示是取用户姓名/电话号码/观看时间用作跑马灯。
关键词: 用户id跑马灯 / 会员id跑马灯 / 跑马灯防录屏 / 用户信息跑马灯 / 视频随机跑马灯
酷播云HTML5视频加密网页播放器_效果图
浏览器防录屏
通过播放器实时监测,如果检测到视频处于录屏状态或小窗待录屏状态,视频会立即停止播放,显示报错信息,视频无法继续播放。
关键词: 浏览器防录屏 / 浏览器防盗录 / 浏览器视频防录 / 视频小窗禁用 / 浏览器小窗口防录屏
酷播云HTML5视频加密网页播放器_效果图
域名白名单OVP防盗链
设置视频只允许某些指定的域名下才能正常播放,其他域名无法播放。
关键词: 域名白名单防盗链 / 域名黑名单防盗链 / 视频域名防盗链 / 限定域名播放 / 特定播放域名限制
酷播云HTML5视频加密网页播放器_效果图
ATS/HTTPS数据防篡改
传输链路支持ATS/HTTPS加密协议,避免视频在传输过程中被截取或被篡改;避免视频播放指被小运营商劫持,防止网页被替换/篡改、用户信息泄露。
关键词: HTTPS安全 / HTTPS防篡改 / 视频节点防劫持 / 视频防劫持 / 视频防篡改
酷播云HTML5视频加密网页播放器_效果图

D1. 加密视频HTML5播放器调用范例

名称 类型 说明
playsafe String/Function PC端播放加密视频所需的授权凭证,业务方服务端通过创建 Playsafe Token接口获取并返回给播放器。
playsafeUrl String 获取PC端播放加密视频凭证的接口URL(与playsafe参数二选一
ts Number 移动端H5播放加密视频需传入的13位毫秒级时间戳
sign String 移动端H5播放加密视频所需的签名,生成规则为点播账号的secretkey、vid、ts的值按顺序拼接后进行md5计算后的值,由业务方服务端生成并返回给播放器。
注:sign签名不需要转大写。
签名示例:
若secretkey为abc,vid为123,ts为1672829071000,此时签名sign为md5("abc1231672829071000")

 

加密视频,需使用播放凭证方式进行播放,播放器需要传递的参数如下:

<div id="player"></div>
<script src='//player.polyv.net/resp/vod-player-drm/canary/player.js'></script>
<script>
var player = polyvPlayer({
wrap: '#player',
width: 800,
height: 533,
vid: '88083abbf5bcf1356e05d39666be527a_8',
playsafe:'81814fed-bdd0-4506-bec1-ebc8093148c5-hfevwsfxcsbcocx',
//playsafeUrl:'https://myDomain.com/token', // 业务方自定义的获取播放凭证接口URL,与playsafe参数二选一
ts:'1568131545000',
sign:'88313661ba7ded642c7b557b0a364b4b'
});
</script>

TIPS:
wrap: '#player' //warp为引用的容器
width: 800 //播放器的宽度
height: 533 //播放器的高度
vid: 'e785b2c81c9e018296671a1287e99615_e' //酷播云视频vid

查看演示

 

 

播放器参数说明:

 

参数 类型 默认值 说明 应用
wrap string / HTMLElement - 页面上存在需要载入播放器的DOM元素或css选择器  
width number / string 100% 播放器的宽度 示例>>
height number / string auto 播放器的高度 示例>>
vid string - 上传的视频会生成一个视频唯一vid  
loop boolean false 视频播放结束后是否循环播放 示例>>
autoplay boolean undefined 播放器加载后视频是否自动播放,也可从后台设置 示例>>
volume number 0.75 视频默认音量大小,范围 (0, 1),播放器会记录上一次播放的音量 示例>> 
df number - 视频默认清晰度,可设置为0、1、2、3,分别对应自动、流畅、高清、超清,设置该参数会覆盖后台的设置 示例>>
hideRepeat boolean false 播放结束后是否显示重播面板,可通过play.HTML5.changeRepeat改变  
code string - 跑马灯设置中自定义的code值  
speed boolean/array [2, 1.5, 1.2, 0.5] 设置为false则关闭倍速,可传入数组自定义显示哪几种倍速,速率1不需要填入,会自动添加,所设置速率值必须大于0,少于或等于3,最多设置6种速率(不包含1),所设置值会按由大到小自动排序  
showHd boolean true 是否显示清晰度选择  
ignoreIE boolean false 设置该选项将会在ie浏览器中禁用HTML5播放器(edge浏览器除外,国内360,QQ等浏览器的兼容模式表现为ie浏览器,所以也会被禁用)  
watchStartTime number undefined 从第几秒开始播放,需少于视频时长  
watchEndTime number undefined 播放到第几秒结束播放,需少于视频时长,在该值到结束的进度条禁止点击,如果设置值少入watchStartTime,则watchStartTime失效  
skinLocation number 1 控制栏显示在视频区域内外或不显示,可选0(不显示)、1(视频内)、2(视频外)  
ban_history_time string off 是否禁止记住播放进度,下次打开会从上次进度打开(设置watchStartTime后还是会从watchStartTime处开始播放),默认为off(不禁止),on为禁止  
hideSwitchPlayer boolean false 是否禁止显示HTML5与flash播放器切换按钮  
priorityMode string video 默认打开视频模式还是音频模式,需要该视频有对应的音频转码可选video/audio  
audioMode boolean true 是否开启音频模式  
videoMode boolean true 是否开启视频模式,设置为false后将会以音频模式播放,无论是否有音频转码  
screenshot boolean false 是否开启视频截图功能  
ban_seek_by_limit_time string off 是否禁止视频拖拽未播放区域  
ban_seek string off 设置为 on 播放器将会彻底禁止拖拽  
loading_bg_img string - 视频默认封面图  
ban_record_
interaction_right_answer
string off 设置为 on 问答回答正确不会记录,每次刷新播放都需重新回答  
start number undefined 子视频开始时间  
end number undefined 子视频结束时间  
lang string undefined 播放器显示语言,若未设置则读取后台设置,自动选择暂未支持,默认中文,可设置zh_CN/en  
mainScreen string "ppt" 默认三分屏主屏(video/ppt)  
subWidth/subHeight number 355/200 默认三分屏副屏宽/高  
pptVisible boolean true 三分屏初始化时是否需要默认显示  
pptEnable boolean false 是否显示三分屏  
show_rate number undefined 允许播放的最高清晰度 1(流畅)、2(高清) 示例>> 
preloadDataSize number(kb) 15000 视频最大缓冲量,设置后会根据实际播放时长和清晰度加载切片数量(500 - 60000)  
is_interaction string on 是否显示后台设置的问答  
keyboardSeekTime number 15000 键盘控制前进/后退毫秒数  
allowFullscreen boolean true 是否允许全屏,界面上操作禁止全屏,接口全屏依然允许  
viewerInfo object 15000 键盘控制前进/后退毫秒数  
history_video_duration number 5 视频总时长超过多少分钟时记录播放进度  
showAuto boolean true 是否显示自动清晰度按钮  
flashConfig object {} 切换flash播放器,或者在移动端下额外传入参数对象  
video_align string "center" 视频内容对齐方式 top / bottom / left / right    
srt_caption_txt_size number 20 字幕字体大小, 20~40 px  
srt_caption_txt_height number 20 底部字幕离底部高度,单位px  
srt_caption_base_height number 720 字幕字体底部基准高度,视频尺寸变化,srt_caption_txt_height 值会根据该高度调整高度  
srt_caption_base_width number 1280 字幕字体大小基准宽度,字幕大小会随视频尺寸变化  
fullscreenProxy boolean false 全屏代理,设置后点击全屏按钮或者双击播放器不会调用全屏api,会触发 window.onFullscreenProxy(vid, toFullscreen) 事件,调用者自行做全屏处理,适合在全屏状态下叠加用户自定义的元素  

 

播放器接口:

 

名称 参数及类型 返回值及类型 说明  
j2s_pauseVideo / / 暂停播放。 示例>>
j2s_resumeVideo / / 恢复播放当前视频。 示例>>
j2s_stopVideo / / 停止播放当前视频,并显示结束画面。 示例>>
j2s_seekVideo (Number) / 跳转到某个时刻播放,参数单位为:秒。 示例>>
j2s_getDuration / Number 获取视频总时长,返回值单位为:秒。 示例>>
j2s_getCurrentTime / Number 获取视频当前的播放时刻,返回值单位为:秒。 示例>>
j2s_realPlayVideoTime / Number 获取当前视频已播放的时长,不包含广告、片头、暂停、片尾等时间。 示例>>
j2s_getFlowCount / Number 获取当前视频播放消耗的流量,单位:字节。仅Flash播放器支持。  
j2s_setVolume (Number) / 设置视频播放音量,取值范围(0,1)。  
j2s_realPlayStatus / Object 获取实时播放状态,返回的json格式字符串包含以下字段:
pid 每次播放行为生成的唯一ID,后台的观看日志也包含该字段
vid 视频ID
playduration 当前播放时长
timestamp 当前时间戳
sign 签名,计算方式请咨询技术支持。
 
changeVid (Object) / 切换到下一个视频  
switchBitrate (Number) / 切换清晰度,参数取值{0,1,2,3},分别对应自动、流畅、高清、超清。  
toggleFullscreen / / 全屏/退出全屏 切换 示例>>
toggleFullPageScreen / / 切换网页全屏按钮状态  
changeRepeat (Boolean) / 当参数值为true时,视频结束播放后隐藏重播按钮。  
switchMain (String) / 课件三分屏播放时,切换PPT或视频至主屏。取值:{ppt,player}。  
setMode (String) / 切换音视频模式,取值:{video,audio}。
注:只有额外转音频的视频才可以切换音视频模式。
 
getCurrentMode / String 返回当前播放模式,video 视频模式,audio 音频模式。  
toFlash / / 切换至Flash播放器,只有PC端H5播放器才可调用该方法。  
toHTML5 / / 切换至H5播放器,只有Flash播放器才可调用该方法。  
on (String,Funciton) / 绑定监听事件  
destroy / / 销毁播放器实例 示例>>
getScreenshotData(); / Base64的图片数据 获取当前视频画面的截图数据,仅支持PC H5播放器调用,需设置播放器参数allowGetScreenshotData为true  

 

播放器事件:

 

名称 说明 应用
s2j_onPlayerInitOver 播放器初始化完毕时触发。播放器提供的方法需要在此事件发生后才可以调用。 示例>>
s2j_onReadyPlay 在已加载足够的数据能够开始播放视频时触发, 注:移动端不触发此事件。  
s2j_onPlayStart 视频初次播放时触发,。 示例>>
s2j_onVideoPlay 视频初次播放或由暂停恢复播放时触发。 示例>>
s2j_onVideoPause 视频暂停时触发。 示例>>
s2j_onVideoSeek 视频拖拽进度时触发,参数返回开始、结束seek的时间点以及vid。  
s2j_onPlayOver 当前视频播放完毕时触发。  
s2j_volumeChange 播放音频发生变化时触发,变化后的音量。  
s2j_onFullScreen 播放器进入全屏时触发。  
s2j_onNormalScreen 播放器退出全屏时触发。  
s2j_onPlayerError 播放出现错误时触发。  
HTML5Load Flash切换至H5播放器时触发。  
flashLoad PC端H5播放器切换至Flash播放器时触发。  
serverError 发生业务逻辑错误时触发,比如授权验证失败、域名黑白名单验证不通过等错误。参数返回事件名称和错误代码。  
onChangeMode 音视频模式切换时触发,,切换后模式以及切换前模式。  
onFullscreenProxy 当设置fullscreenProxy参数为true时,点击全屏按钮不会调用全屏api,会触发 window.onFullscreenProxy(vid, toFullscreen) 事件,调用者自行做全屏处理,适合在全屏状态下叠加用户自定义的元素。  
onFullPageScreen 当设置full_page_screen为true时,点击网页全屏按钮会触发window.onFullPageScreen(vid, currentStatus) 事件,调用者自行做网页全屏处理。  

 

播放器错误代码:

 

错误代码 说明
#001 套餐过期,请联系客服续期。
#002 套餐内流量已用完,请联系客服购买流量。
#003 视频配置文件加载失败。一般是由于网络问题导致无法加载视频配置文件,建议检查/切换网络并重试。
#004 视频不存在。请检查vid是否正确,视频是否已经被删除。
#005 视频审核不通过。只有“已发布”状态的视频才可以播放。
#006 域名黑白名单验证不通过。请检查管理后台的播放域名设置。
#007 视频文件加载失败。一般是由于网络问题导致无法加载视频文件,建议检查/切换网络并重试。
#008 视频文件加载超时。一般是由于网络问题导致加载视频文件超时,建议检查/切换网络并重试。
#009 视频正在审核中。只有“已发布”状态的视频才可以播放。
#010 视频正在编码中。只有“已发布”状态的视频才可以播放。
#011 播放器皮肤加载失败。建议检查/切换网络并重试。
#012 跑马灯加载错误。请检查跑马灯接口返回的参数是否正确
#013 视频授权播放认证失败。请检查授权认证接口
#014 Flash播放器没有JavaScript运行权限。请尝试升级浏览器至最新版本或更换浏览器。
#015 JavaScript运行错误。请尝试升级浏览器至最新版本或更换浏览器。
#016 跑马灯被篡改。
#020 playsafeUrl接口请求失败。请检查playsafeUrl参数的接口服务是否正常
#024 基于视频版权保护考虑,播放器会禁止加密视频在某些自带录屏功能的浏览器上播放。请更换其它浏览器。
#10000 视频被禁止播放,请联系管理员

 

 

开始免费使用酷播云