是否可以为ClearKey在没有许可证服务器的情况下配置Shaka Player DRM?

时间:2020-03-03 13:39:45

标签: html5-video drm shaka

我正在尝试使用ClearKeys配置Shaka Player 喜欢

player.configure({
  drm: {
    clearKeys: {
      'deadbeefdeadbeefdeadbeefdeadbeef': '18675309186753091867530918675309'
    }
  }
});

按照文档中的说明。 但是,我没有有效的许可证服务器。

如果我在DRM中没有配置“服务器”对象,那么

drm: {
    servers: {
      'org.w3.clearkey': 'http://foo.bar/drm/clearkey'
    }
  }

shaka播放器给出错误代码6012

Error code 6012 object I {severity: 2, category: 6, code: 6012, data: Array(1), handled: false}

那么是否可以将shaka播放器配置为在没有licesne服务器的情况下使用clearkey播放DASH?

链接的Github问题-https://github.com/google/shaka-player/issues/2434

1 个答案:

答案 0 :(得分:2)

清除键可以通过两种方式使用:

  • 您可以在播放器配置中明确指定键
  • 您可以为服务器提供服务器URL,该服务器URL可以识别并根据许可请求将服务器clearkefs

第一种情况不需要许可证服务器。

在上面从Shaka文档中显示的示例中,第一个条目是key_id,第二个条目是密钥本身,以防不清楚:

player.configure({
  drm: {
    // First value is the key-id, second value is the encryption key
    clearKeys: {
      'deadbeefdeadbeefdeadbeefdeadbeef': '18675309186753091867530918675309'
    }
  }
});

实际上需要使用此加密密钥本身对内容进行加密,才能进行解密和播放。

顺便说一句,虽然创建了Clearkeys来帮助测试和调试DRM,但由于它不是在“真实”场景中使用的,因此它可能不会像其他DRM一样受到关注。显然,它也没有使用与设备中实际DRM相同的代码路径。如果您的主要目的是测试最终将使用“真实” DRM的系统,那么您可能会发现,通过包含URL和清单信息的测试Widevine,Playready等流,可以更轻松地进行测试和调试。