使用Javascript

时间:2018-02-09 16:38:14

标签: javascript html5 google-chrome safari html5-video

我们正在编写一个网络播放器,我们需要确定浏览器支持的DRM系统。我们使用以下代码检查浏览器上的DRM类型。

keySystems: {
    clearkey: ['webkit-org.w3.clearkey', 'org.w3.clearkey'],
    widevine: ['com.widevine.alpha'],
    playready: ['com.microsoft.playready', 'com.youtube.playready'],
    fairplay: ['com.apple.fairplay']
},

铬:

navigator.requestMediaKeySystemAccess()

IE:

videoElement.isTypeSupported()

我们考虑在Safari中使用webkitGenerateKeyRequest()。但是在Safari上的Javascript控制台上,我试着看看API是否可用。

let vel = document.getElementById('videoID');

但是vel没有在Javascript控制台上列出webkitGenerateKeyRequest()。可以使用我可以根据答案Determine DRM system supported by browser使用canPlayType()。

问题是它会对所有内容说“可能”,而不是确切地确定浏览器是否支持特定的DRM。是否有任何API可以找到浏览器支持的DRM?

1 个答案:

答案 0 :(得分:0)

除非您使用的是非标准浏览器,否则映射通常在此时非常简单,除了浏览器类型外,您不需要检查其他任何东西:

  • Safari-FairPlay
  • Chrome-Widevine
  • Internet Explorer-Playready
  • Firefox-Widevine

移动设备曾经是一种特殊情况,因为iOS上的Safari不支持FairPlay,但现在支持。

除此之外,标准方法是按照您的建议使用requestMediaKeySystemAccess-最新支持图片通常是最新的: