Конфигурация VideoJS для Playready Widevine и Fairplay - PullRequest
0 голосов
/ 12 декабря 2018

У меня есть videoJS, работающий с Widevine и playready, и у меня также есть videojs, работающие с fairplay.Это две отдельные рабочие страницы, но я хочу их объединить.Есть пример Bitmovin и как объединить все источники, чтобы он работал во всех браузерах.Я пробовал подобное в videoJS, но не смог заставить его работать.Можете ли вы дать мне похожий макет, чтобы было проще?

var conf = {
  key: "YOUR-PLAYER-KEY-HERE",
  source: {
    dash: "DASH_MANIFEST_URL",
    hls: "HLS_MANIFEST_URL",
    drm: {
      playready: {
        LA_URL: "http://sldrm.licensekeyserver.com/core/rightsmanager.asmx",
        headers : [{
          name: "customdata",
          value: "BASE64_ENCODED_CUSTOM_DATA";
        }]
      },
      widevine: {
        LA_URL: "http://widevine.licensekeyserver.com",
        headers : [{
          name: "customdata",
          value: "BASE64_ENCODED_CUSTOM_DATA";
        }]
      },
      fairplay: {
        LA_URL: "https://fp-keyos.licensekeyserver.com/getkey",
        certificateURL: "CERTIFICATE_URL",
        headers: [{
          name: "customdata",
          value: "BASE64_ENCODED_CUSTOM_DATA"
        }],
        prepareMessage : function(event, session) {
          return "spc=" + encodeURIComponent(event.messageBase64Encoded) + "&assetId=" + session.contentId;
        },
        prepareContentId : function(contentId) {
          var idx = contentId.indexOf("skd://");
          if (idx > -1) {
            return contentId.substring(8, 40);
          }

          throw "Invalid Content ID format. The format of the Content ID must be the following: skd://xxx where xxx is the Key ID in hex format.";
        }
      }
    }
  }
};
...