Index: chrome/test/data/media/eme_player_js/player_utils.js |
diff --git a/chrome/test/data/media/eme_player_js/player_utils.js b/chrome/test/data/media/eme_player_js/player_utils.js |
deleted file mode 100644 |
index ac7b6dd10e56a0bf23613fb42b68ed3557babdf6..0000000000000000000000000000000000000000 |
--- a/chrome/test/data/media/eme_player_js/player_utils.js |
+++ /dev/null |
@@ -1,186 +0,0 @@ |
-// 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. |
- |
-// The PlayerUtils provides utility functions to binding common media events |
-// to specific player functions. It also provides functions to load media source |
-// base on test configurations. |
-var PlayerUtils = new function() { |
-} |
- |
-// Prepares a video element for playback by setting default event handlers |
-// and source attribute. |
-PlayerUtils.registerDefaultEventListeners = function(player) { |
- Utils.timeLog('Registering video event handlers.'); |
- // Map from event name to event listener function name. It is common for |
- // event listeners to be named onEventName. |
- var eventListenerMap = { |
- 'needkey': 'onNeedKey', |
- 'webkitneedkey': 'onWebkitNeedKey', |
- 'webkitkeymessage': 'onWebkitKeyMessage', |
- 'webkitkeyadded': 'onWebkitKeyAdded', |
- 'webkitkeyerror': 'onWebkitKeyError' |
- }; |
- for (eventName in eventListenerMap) { |
- var eventListenerFunction = player[eventListenerMap[eventName]]; |
- if (eventListenerFunction) { |
- player.video.addEventListener(eventName, function(e) { |
- player[eventListenerMap[e.type]](e); |
- }); |
- } |
- } |
- // List of events that fail tests. |
- var failingEvents = ['error', 'abort']; |
- for (var i = 0; i < failingEvents.length; i++) { |
- player.video.addEventListener(failingEvents[i], Utils.failTest); |
- } |
-}; |
- |
-PlayerUtils.registerEMEEventListeners = function(player) { |
- player.video.addEventListener('needkey', function(message) { |
- |
- function addMediaKeySessionListeners(mediaKeySession) { |
- mediaKeySession.addEventListener('message', function(message) { |
- player.video.receivedKeyMessage = true; |
- if (Utils.isHeartBeatMessage(message.message)) { |
- Utils.timeLog('MediaKeySession onMessage - heart beat', message); |
- player.video.receivedHeartbeat = true; |
- } |
- player.onMessage(message); |
- }); |
- mediaKeySession.addEventListener('error', function(error) { |
- Utils.failTest(error, KEY_ERROR); |
- }); |
- } |
- |
- Utils.timeLog('Creating new media key session for contentType: ' + |
- message.contentType + ', initData: ' + |
- Utils.getHexString(message.initData)); |
- try { |
- var session = message.target.mediaKeys.createSession( |
- message.contentType, message.initData); |
- if (PROMISES_SUPPORTED) { |
- session.then(addMediaKeySessionListeners) |
- .catch (function(error) { |
- Utils.failTest(error, KEY_ERROR); |
- }); |
- } else { |
- addMediaKeySessionListeners(session); |
- } |
- } catch (e) { |
- Utils.failTest(e); |
- } |
- }); |
- this.registerDefaultEventListeners(player); |
- try { |
- Utils.timeLog('Setting video media keys: ' + player.testConfig.keySystem); |
- if (PROMISES_SUPPORTED) { |
- MediaKeys.create(player.testConfig.keySystem).then(function(mediaKeys) { |
- player.video.setMediaKeys(mediaKeys); |
- }).catch(function(error) { |
- Utils.failTest(error, NOTSUPPORTEDERROR); |
- }); |
- } else { |
- player.video.setMediaKeys(new MediaKeys(player.testConfig.keySystem)); |
- } |
- } catch (e) { |
- Utils.failTest(e); |
- } |
-}; |
- |
-PlayerUtils.registerPrefixedEMEEventListeners = function(player) { |
- player.video.addEventListener('webkitneedkey', function(message) { |
- var initData = message.initData; |
- if (player.testConfig.sessionToLoad) { |
- Utils.timeLog('Loading session: ' + player.testConfig.sessionToLoad); |
- initData = Utils.convertToUint8Array( |
- PREFIXED_API_LOAD_SESSION_HEADER + player.testConfig.sessionToLoad); |
- } |
- Utils.timeLog(player.testConfig.keySystem + |
- ' Generate key request, initData: ' + |
- Utils.getHexString(initData)); |
- try { |
- message.target.webkitGenerateKeyRequest(player.testConfig.keySystem, |
- initData); |
- } catch (e) { |
- Utils.failTest(e); |
- } |
- }); |
- |
- player.video.addEventListener('webkitkeyadded', function(message) { |
- Utils.timeLog('onWebkitKeyAdded', message); |
- message.target.receivedKeyAdded = true; |
- }); |
- |
- player.video.addEventListener('webkitkeyerror', function(error) { |
- Utils.timeLog('onWebkitKeyError', error); |
- Utils.failTest(error, KEY_ERROR); |
- }); |
- |
- player.video.addEventListener('webkitkeymessage', function(message) { |
- Utils.timeLog('onWebkitKeyMessage', message); |
- message.target.receivedKeyMessage = true; |
- if (Utils.isHeartBeatMessage(message.message)) { |
- Utils.timeLog('onWebkitKeyMessage - heart beat', message); |
- message.target.receivedHeartbeat = true; |
- } |
- }); |
- this.registerDefaultEventListeners(player); |
-}; |
- |
-PlayerUtils.setVideoSource = function(player) { |
- if (player.testConfig.useMSE) { |
- Utils.timeLog('Loading media using MSE.'); |
- var mediaSource = |
- MediaSourceUtils.loadMediaSourceFromTestConfig(player.testConfig); |
- player.video.src = window.URL.createObjectURL(mediaSource); |
- } else { |
- Utils.timeLog('Loading media using src.'); |
- player.video.src = player.testConfig.mediaFile; |
- } |
-}; |
- |
-PlayerUtils.initEMEPlayer = function(player) { |
- this.registerEMEEventListeners(player); |
- this.setVideoSource(player); |
-}; |
- |
-PlayerUtils.initPrefixedEMEPlayer = function(player) { |
- this.registerPrefixedEMEEventListeners(player); |
- this.setVideoSource(player); |
-}; |
- |
-// Return the appropriate player based on test configuration. |
-PlayerUtils.createPlayer = function(video, testConfig) { |
- // Update keySystem if using prefixed Clear Key since it is not available as a |
- // separate key system to choose from; however it can be set in URL query. |
- var usePrefixedEME = testConfig.usePrefixedEME; |
- if (testConfig.keySystem == CLEARKEY && usePrefixedEME) |
- testConfig.keySystem = PREFIXED_CLEARKEY; |
- |
- function getPlayerType(keySystem) { |
- switch (keySystem) { |
- case WIDEVINE_KEYSYSTEM: |
- if (usePrefixedEME) |
- return PrefixedWidevinePlayer; |
- return WidevinePlayer; |
- case PREFIXED_CLEARKEY: |
- return PrefixedClearKeyPlayer; |
- case EXTERNAL_CLEARKEY: |
- case CLEARKEY: |
- if (usePrefixedEME) |
- return PrefixedClearKeyPlayer; |
- return ClearKeyPlayer; |
- case FILE_IO_TEST_KEYSYSTEM: |
- if (usePrefixedEME) |
- return FileIOTestPlayer; |
- default: |
- Utils.timeLog(keySystem + ' is not a known key system'); |
- if (usePrefixedEME) |
- return PrefixedClearKeyPlayer; |
- return ClearKeyPlayer; |
- } |
- } |
- var Player = getPlayerType(testConfig.keySystem); |
- return new Player(video, testConfig); |
-}; |