Home | History | Annotate | Download | only in eme_player_js
      1 // Copyright 2014 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 // Widevine player responsible for playing media using Widevine key system
      6 // and prefixed EME API.
      7 function PrefixedWidevinePlayer(video, testConfig) {
      8   this.video = video;
      9   this.testConfig = testConfig;
     10 }
     11 
     12 PrefixedWidevinePlayer.prototype.init = function() {
     13   PlayerUtils.initPrefixedEMEPlayer(this);
     14 };
     15 
     16 PrefixedWidevinePlayer.prototype.registerEventListeners = function() {
     17   PlayerUtils.registerPrefixedEMEEventListeners(this);
     18 };
     19 
     20 PrefixedWidevinePlayer.prototype.onWebkitKeyMessage = function(message) {
     21   function onSuccess(response) {
     22     var key = new Uint8Array(response);
     23     Utils.timeLog('Adding key to sessionID: ' + message.sessionId, key);
     24     message.target.webkitAddKey(this.testConfig.keySystem,
     25                                 key,
     26                                 new Uint8Array(1),
     27                                 message.sessionId);
     28   }
     29   Utils.sendRequest('POST', 'arraybuffer', message.message,
     30                     this.testConfig.licenseServerURL, onSuccess,
     31                     this.testConfig.forceInvalidResponse);
     32 };
     33