当前位置: 首页 > 知识库问答 >
问题:

使用许可证字符串在ExoPlayer上播放受Widevine DRM保护的内容

陆涵畅
2023-03-14

我正在尝试播放一个在ExoPlayer(v2.5.4)上受Widevine DRM保护的dash文件。我没有访问许可证服务器的权限,但有一个代理服务器,我可以通过调用API来检索许可证响应。许可证服务器包含以下响应:

  1. Base64编码的许可证字符串

有没有办法直接在ExoPlayer中传递这些值?本质上,我正在尝试在没有URL的情况下播放受DRM保护的内容。类似的问题:https://github.com/google/ExoPlayer/issues/3107

共有1个答案

广乐邦
2023-03-14

Widevine和其他DRM系统实际上会加密许可证请求和响应,因此简单地获取许可证响应的副本不会以您可以访问的方式为您提供内容的媒体解密密钥,如果您是这个意思的话。换句话说,它构建的许可证响应使得只有设备上的DRM客户端才能正确读取它并提取密钥。

如果您的意思是在发出Widevine请求的玩家和许可证服务器之间存在某种代理,那么只要代理不更改或更新请求和响应,这就不重要了。

您可能意味着您实际上可以访问媒体加密密钥本身-如果是这样,您可以在应用程序或设备中单独解密内容并将其提供给播放器,或者您可以更新清单并通过另一种方法提供密钥,例如DASH中的Clearkey机制。

 类似资料:
  • 我已使用Azure媒体服务存储加密视频 有人能帮我解决以下问题吗: 我从哪里获得Widevine许可证URL,以便在Exo Player中播放视频 提前感谢。

  • 我无法通过ExoPlayer框架运行DRM PlayReady内容。我想这与我的drmSessionManager有关 清单Url和LicenseUrl都已经过测试,但很难实现我的更改,因为没有真正的具体示例实现任何DRM内容(WideVine或PlayReady) 正常的Dash内容与ExoPlayer配合使用,但当我尝试播放任何受DRM保护的内容时,它失败了。 构建实际drmSessionMa

  • 我正在尝试在android中实现BrightCove Exoplayer。我能够成功地实现播放单个视频。现在我正在尝试使用Exoplayer播放播放列表。播放列表中的第一个视频,在第一个视频结束时,播放器不会播放播放列表中的下一个视频。它再次显示第一个视频的开头;如果我按下播放按钮,第一个视频将再次播放。我想实现连续播放播放列表中的所有视频。我错过什么了吗?我将我的代码张贴在下面: 主要活动:

  • 我为iOS开发了一个移动应用程序 /Android我想启用离线播放,以便用户可以下载内容并在飞机上观看等...下载后长达1个月。此内容需要受到保护,以免用户下载以进一步分发。在查看Azure媒体服务的留档(此处:https://docs.microsoft.com/en-us/azure/media-services/previous/offline-widevine-for-android)时,

  • 我试图在Android上使用ExoPlayer创建一个流媒体应用程序。大多数的流工作良好,只有一些他们不播放声音,在某些设备上只。 这是问题吗?如果我必须从头开始构建扩展,是否可以在Windows中完成?在我的PC上安装Linux有点问题。并且有没有任何教程来做它正确,根据我的流信息? ExoPlayer是一个很棒的媒体播放器,但是它确实缺乏文档(或者很难找到)。

  • 问题内容: 有人可以给我解释一下/ 内部 类有什么区别吗? 我知道内部类应尽可能避免(如本文所述)。 但是据我所知,使用或修饰符之间没有区别。 看一下这个例子: … … 所有这些都可以编译,并且无论我声明 还是都有效。 我想念什么?请指出一个使用或有所不同的情况。 谢谢。 问题答案: 该访问修饰符将限制从比在同一个包及其子类之外的其他类的访问。 在所示的示例中,和和将具有相同的效果,因为它们位于同