0

我为 chromecast 编写了一个自定义接收器来处理受 DRM 保护的内容,但对许可证服务器的调用似乎存在问题。许可证由 WideVine 管理。

演员表是从一个 Android 发件人应用程序启动的,其许可证 URL 以CustomData. 在接收器上启动播放器后,调试器会抛出错误:[cast.framework.media.ShakaPlayer] category: 6 code: 6008即 LICENSE_RESPONSE_REJECTED ( https://shaka-player-demo.appspot.com/docs/api/shaka.util.Error.html ) 并MEDIA_FINISHED触发核心事件与endedReason: "ERROR". 受 DRM 保护的视频无法播放。

查看 devtools 中的网络选项卡,我发现Content-Length来自许可证服务器的响应标头的值为零。即响应正文为空。

我用谷歌搜索了许多网址,只是为了登陆相同的“包装和解包许可证有效负载”网址:https ://shaka-player-demo.appspot.com/docs/api/tutorial-license-wrapping.html

这是唯一传递许可证 URL 的行:

const playbackConfig = new cast.framework.PlaybackConfig();

// Update playback config licenseUrl according to provided value in load request.
context
  .getPlayerManager()
  .setMediaPlaybackInfoHandler((loadRequest, playbackConfig) => {
    if (
      loadRequest.media.customData &&
      loadRequest.media.customData.licenseUrl
    ) {
      playbackConfig.licenseUrl = loadRequest.media.customData.licenseUrl;
    }
    return playbackConfig;
  });

我无法弄清楚这是什么原因,以及为什么受 DRM 保护的视频无法在我们的接收器上播放。任何帮助将不胜感激。

4

1 回答 1

0

请使用 CAST ISSUE TRACKER 提交问题。 https://issuetracker.google.com/issues/new?component=190205&template=814901

Cast 开发者支持:https ://developers.google.com/cast/support

于 2019-04-08T18:51:58.860 回答