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.
5 // Widevine player responsible for playing media using Widevine key system
6 // and prefixed EME API.
7 function PrefixedWidevinePlayer(video, testConfig) {
9 this.testConfig = testConfig;
12 PrefixedWidevinePlayer.prototype.init = function() {
14 return PlayerUtils.initEMEPlayer(this);
17 PrefixedWidevinePlayer.prototype.registerEventListeners = function() {
19 return PlayerUtils.registerPrefixedEMEEventListeners(this);
22 PrefixedWidevinePlayer.prototype.onWebkitKeyMessage = function(message) {
23 function onSuccess(response) {
24 var key = new Uint8Array(response);
25 Utils.timeLog('Adding key to sessionID: ' + message.sessionId, key);
26 message.target.webkitAddKey(this.testConfig.keySystem,
31 Utils.sendRequest('POST', 'arraybuffer', message.message,
32 this.testConfig.licenseServerURL, onSuccess,
33 this.testConfig.forceInvalidResponse);