blob: adfd570091da60aea78ce898ab0b8c6aeb336bbe [file] [log] [blame]
// Copyright 2014 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Widevine player responsible for playing media using Widevine key system
// and prefixed EME API.
function PrefixedWidevinePlayer(video, testConfig) {
this.video = video;
this.testConfig = testConfig;
}
PrefixedWidevinePlayer.prototype.init = function() {
PlayerUtils.initPrefixedEMEPlayer(this);
};
PrefixedWidevinePlayer.prototype.registerEventListeners = function() {
PlayerUtils.registerPrefixedEMEEventListeners(this);
};
PrefixedWidevinePlayer.prototype.onWebkitKeyMessage = function(message) {
function onSuccess(response) {
var key = new Uint8Array(response);
Utils.timeLog('Adding key to sessionID: ' + message.sessionId, key);
message.target.webkitAddKey(this.testConfig.keySystem,
key,
new Uint8Array(1),
message.sessionId);
}
Utils.sendRequest('POST', 'arraybuffer', message.message,
this.testConfig.licenseServerURL, onSuccess,
this.testConfig.forceInvalidResponse);
};