diff options
Diffstat (limited to 'media/test/data/eme_player_js/widevine_player.js')
-rw-r--r-- | media/test/data/eme_player_js/widevine_player.js | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/media/test/data/eme_player_js/widevine_player.js b/media/test/data/eme_player_js/widevine_player.js new file mode 100644 index 0000000..11e8ec86 --- /dev/null +++ b/media/test/data/eme_player_js/widevine_player.js @@ -0,0 +1,38 @@ +// 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 EME working draft API. +function WidevinePlayer(video, testConfig) { + this.video = video; + this.testConfig = testConfig; +} + +WidevinePlayer.prototype.init = function() { + PlayerUtils.initEMEPlayer(this); +}; + +WidevinePlayer.prototype.registerEventListeners = function() { + PlayerUtils.registerEMEEventListeners(this); +}; + +WidevinePlayer.prototype.onMessage = function(message) { + Utils.timeLog('MediaKeySession onMessage', message); + var mediaKeySession = message.target; + function onSuccess(response) { + var key = new Uint8Array(response); + Utils.timeLog('Update media key session with license response.', key); + if (PROMISES_SUPPORTED) { + mediaKeySession.update(key).catch(function(error) { + Utils.failTest(error, KEY_ERROR); + }); + } else { + mediaKeySession.update(key); + } + + } + Utils.sendRequest('POST', 'arraybuffer', message.message, + this.testConfig.licenseServerURL, onSuccess, + this.testConfig.forceInvalidResponse); +}; |