Upstream version 9.38.198.0
[platform/framework/web/crosswalk.git] / src / media / test / data / eme_player_js / prefixed_widevine_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 };