我在哪里搜索任何解决方案以在 IOS 和 Android 上播放 DRM 内容。我想开发一个跨平台解决方案,可以播放受 DRM 保护的内容,无论是 Widevine 还是 playready。
对于 Flutter 没有任何解决方案,所以我切换到 RN
对于 React Native,我刚刚发现 Exoplayer 能够播放 Widevine 但没有 Playready DRM 内容。
也许你们中的某个人可以帮助我找出,我怎么能在两个平台上做到这一点?
此致
我在哪里搜索任何解决方案以在 IOS 和 Android 上播放 DRM 内容。我想开发一个跨平台解决方案,可以播放受 DRM 保护的内容,无论是 Widevine 还是 playready。
对于 Flutter 没有任何解决方案,所以我切换到 RN
对于 React Native,我刚刚发现 Exoplayer 能够播放 Widevine 但没有 Playready DRM 内容。
也许你们中的某个人可以帮助我找出,我怎么能在两个平台上做到这一点?
此致
要播放受特定 DRM 方案保护的加密内容,您需要设备或浏览器支持该 DRM 方案。
作为一般规则,设备和浏览器本机支持以下 DRM - 天真意味着 DRM 通常在您购买设备时内置于操作系统或浏览器中:
要允许在多个设备上播放加密内容,您需要使用每个设备的方案对其进行加密。在过去,这意味着必须有单独的流,但 DASH CENC 允许通过多个 DRM 方案加密单个流 - 规范位于此链接:
不幸的是,如果您无权访问该规范,则可能值得查看一些打包网站,其中将包含有关创建 CENC 流的信息 - 例如:
还有一件事需要注意,因为传统上 iOS/FairPlay 使用与 Widevine 和 PlayReady 不同的 AES 加密模式 - 它使用 AES CBC 模式而不是 CTR 模式。但是,Widevine 和 PlayReady 最近也宣布支持 AES CBC 模式,因此理论上可以在所有设备上播放的单一加密格式的必杀技 - 最有可能需要一些时间才能支持所有设备,然而。