如何嵌入带有DRM保护的HTML5视频播放器?

Haihaisoft 的 DRM-X 5.0 是专为 HTML5 视频设计的,它使用 HTML5 视频标签。内容提供商可以轻松地使用标准的 HTML5 视频标签嵌入视频,并使用诸如 VideoJS 等知名的 HTML5 播放器,还可以使用 JavaScript 与 HTML5 播放器进行交互。

更多教程
如何嵌入带有DRM保护的HTML5视频播放器?

如何嵌入带有DRM保护的HTML5视频播放器?

如果不需要对播放器进行深度修改,请使用以下代码嵌入视频。

<div id="ZJGet_Video_URL" style="display: none;">https://www.drm-x.com/download/drmx5/HolyForever-ChrisTomlin_P.mp4</div>
<script type="text/javascript" src="https://www.zjget.com/assets/embed_js/embed_zjget.js"></script>
<script type="text/javascript" src="https://www.zjget.com/assets/videojs-8.23.3/video.min.js"></script>
<script type="text/javascript" src="https://www.zjget.com/assets/embed_js/zjget.js"></script>

如果您需要修改播放器,请参考以下说明。

在头部引入 VideoJS:

<!--引用VideoJS脚本-->
<link rel="stylesheet" type="text/css" href="css/video-js.css" />
<script src="js/video.js" type="text/javascript" charset="utf-8"></script>

<!--使用自定义皮肤-->
<link rel="stylesheet" type="text/css" href="css/skin/TechSkin-skin.css" />

您也可以根据网站的风格使用其他皮肤。

这里我们推荐一款 VideoJS 皮肤生成工具,您可以自定义播放器皮肤。 https://codepen.io/heff/pen/EarCt

嵌入 VideoJS:

笔记:对于 iOS 系统,请添加一个 id 值为 zjget_ios_media_url 的 div 元素,隐藏该 div 元素,并在 div 元素中输入视频 URL。ZJGet 会自动识别该标签,并提示用户是否播放此视频。例如:

<div id="zjget_ios_media_url" style="display: none;">https://www.drm-x.com/download/drmx5/HolyForever-ChrisTomlin_P.mp4</div>

最新版本的 ZJGet for iOS 媒体 URL 注释:

如果您希望客户在 iOS 设备上播放您的视频,则链接中必须包含以下特征,并以 _P 结尾。例如,链接包含 _P.mp4、_P.webm 或 _P.mp3(不区分大小写)。或者,链接中必须包含 zjget。您可以在下载链接的任何位置添加这些特征之一,这样 iOS 版 ZJGet 就能识别并支持下载。

<div id="LoadingText" style="display: none;" align="center">
  正在跳转到获取权限页面...
</div>
<div id="cellular_button" align="center"></div>
<div align="center">
  <script type="text/javascript">
    // 检测当前的浏览器是否为ZJGet,若非ZJGet浏览器,,
    // 将会提示用户在ZJGet浏览器中打开受保护的文件,并提示用户下载ZJGet浏览器。
    if(navigator.userAgent.indexOf("ZJGet") == -1){
      document.write('提示:请在ZJGet浏览器中打开受保护文件。下载ZJGet');
    }else{
      // 加入HTML5的vide标签;
      // VideoJS会自动改变video标签的ID,这里的zjget_player将会自动变成变成zjget_player_html5_api;
      // 使用src属性指定视频URL;
      // class="video-js" 调用VideoJS的样式
      // data-setup 中 "autoplay":true 自动播放,false不自动播放;
      // 在data-setup中,可以通过 "playbackRates": [0.5, 0.7, 1, 1.5, 2, 3, 4]添加播放速度的功能;
      document.write('<'video id="zjget_player" controls="controls" class="video-js" data-setup=\' {"playbackRates": [0.5, 0.7, 1, 1.2, 1.5, 2], "autoplay":false, "width": 856, "height": 480 }\'><'source src="https://www.drm-x.com/download/drmx5/HolyForever-ChrisTomlin_P.mp4" type="video/mp4"></video>);
    }
  </script>
</div>

Javascript 代码:

<script type="text/javascript">
  document.onreadystatechange = function() {
    if (document.readyState == "complete") { // 页面加载完之后执行,必须;

      // 获取HTML5播放器

      // VideoJS会自动在Video标签的ID后自动加上_html5_api;
      myVid=document.getElementById("zjget_player_html5_api");

      // 获取播放器返回的详细信息,如果需要获取许可证,将会返回获取许可证的URL,

      // 不然将会返回受保护文件的详细信息和许可证信息。
      isSupp=myVid.canPlayType('zjget');
      // 检测是否为手机访问
      if(navigator.userAgent.indexOf("Mobile ZJGet") > 0){
		var con = window.navigator.connection;
		var network = con.type; // 移动网络:cellular; 无线网络:wifi
		// 检测手机是使用移动网络还是wifi
		if (network == "cellular"){ // 如果手机使用移动网络,需要为页面添加获取许可证的按钮
			document.getElementById("cellular_button").innerHTML = '<'button style="height: 50px" class="m_g_b" onClick="supportType(event,\'video/ogg\',\'theora, vorbis\')">Play Protected file (Click 2 times)'<'/button>;
		}
	  }
      // 如果返回信息包含URL,说明需要获取许可证。
      if(isSupp.indexOf("http")>0){
        // 显示提示,非必须;
        document.getElementById("LoadingText").style.display='block';
        // 通过substring截取获取许可证的URL;
        licURL = isSupp.substring(isSupp.indexOf("http"));
        // 跳转到获取许可证页面验证并获取许可证。
        window.location.href = licURL;
      }
    }
};
</script>

以下方法提供了获取更多信息的参考,包括许可证信息(打开次数和到期日期),您可以根据自己的需求获取这些信息。

function supportType(e,vidType,codType){
  myVid=document.getElementById("zjget_player_html5_api");
  isSupp=myVid.canPlayType("zjget");
  myVid.play();
  licURL = isSupp.substring(isSupp.indexOf("http"));

  if(isSupp.indexOf("http")>0){
    window.location.href = licURL;
  }else{
    if(isSupp.indexOf("License")>0){

      // 获取打开次数
      var openCount=isSupp.substring(isSupp.indexOf(":"),isSupp.indexOf(";"));

      // 获取许可证的过期时间
      var ft=isSupp.substring(isSupp.indexOf(";")+1);
      var ut = filetime_to_unixtime(ft);
      var d = new Date(ut * 1000);
      e.target.parentNode.innerHTML ="打开次数" + openCount + ", 过期日期:" + d.toLocaleString();
      return;
    }

    if(isSupp.indexOf("Error ID = 3")>0){
      e.target.parentNode.innerHTML ="许可证已经过期。请关闭ZJGet,重新打开受保护的文件,来获取新的许可证";
      return;
    }
  }
}

其他 DRM-X 5.0 教程

DRM-X 5.0 ZJGet Windows Video TutorialDRM-X 5.0 ZJGet Windows 加密文件教程

本视频将为您演示如何通过 ZJGet 浏览器在 Windows 系统下完成文件加密。

立即观看
DRM-X 5.0 ZJGet macOS Video TutorialDRM-X 5.0 ZJGet macOS 加密文件教程

本视频将为您演示如何通过 ZJGet 浏览器在 macOS 系统下完成文件加密。

立即观看
DRM-X 5.0 ZJGet Windows TutorialDRM-X 5.0 ZJGet Windows 视频教程

本视频将为您演示如何通过 ZJGet 浏览器在 Windows 下载安装和打开加密文件。

立即观看
DRM-X 5.0 ZJGet Text TutorialDRM-X 5.0 ZJGet 文本教程

ZJGet浏览器的功能操作指南。这份教程带你轻松掌握ZJGet浏览器的核心功能与实用技巧。

立即观看
DRM-X 5.0 ZJGet Graphic Tutorial AnswersDRM-X 5.0 ZJGet 常见问题解答

ZJGet浏览器使用中的常见问题及解答。这里汇集了最实用的问答,帮你扫清使用障碍。

立即观看
DRM-X 5.0 自动批量加密工具完整操作指南DRM-X 5.0 自动批量加密工具完整操作指南

DRM-X 5.0自动批量加密工具提供手动与自动扫描两种加密模式,支持多种文件格式及PDF转HTML加密,帮助企业高效、自动化地完成批量文件的数字版权保护。

立即观看

有问题?

我们的技术支持有答案!

询问DRM-X产品,定价,方案或其他相关咨询 - 我们专业的销售代表随时准备提供帮助。

电话:+64 27 507 9959(新西兰)

QQ:1279126286 / 994184623

您也可以请通过以下方式联系我们: 微软 Teams

service#haihaisoft.com(将#替换为@)

联系我们
contactUs