1
0
Fork 0
mirror of https://github.com/jellyfin/jellyfin-web synced 2025-03-30 19:56:21 +00:00

Remove mediaManager from htmlVideoPlayer

This commit is contained in:
MrTimscampi 2020-07-26 12:56:46 +02:00
parent 44174a593d
commit 5e58951605

View file

@ -3,8 +3,6 @@ define(['browser', 'require', 'events', 'apphost', 'loading', 'dom', 'playbackMa
'use strict'; 'use strict';
/* globals cast */ /* globals cast */
var mediaManager;
function tryRemoveElement(elem) { function tryRemoveElement(elem) {
var parentNode = elem.parentNode; var parentNode = elem.parentNode;
if (parentNode) { if (parentNode) {
@ -299,70 +297,6 @@ define(['browser', 'require', 'events', 'apphost', 'loading', 'dom', 'playbackMa
}); });
} }
// Adapted from : https://github.com/googlecast/CastReferencePlayer/blob/master/player.js
function onMediaManagerLoadMedia(event) {
if (self._castPlayer) {
self._castPlayer.unload(); // Must unload before starting again.
}
self._castPlayer = null;
var data = event.data;
var media = event.data.media || {};
var url = media.contentId;
var contentType = media.contentType.toLowerCase();
var protocol;
var ext = 'm3u8';
var mediaElement = self._mediaElement;
var host = new cast.player.api.Host({
'url': url,
'mediaElement': mediaElement
});
if (ext === 'm3u8' ||
contentType === 'application/x-mpegurl' ||
contentType === 'application/vnd.apple.mpegurl') {
protocol = cast.player.api.CreateHlsStreamingProtocol(host);
} else if (ext === 'mpd' ||
contentType === 'application/dash+xml') {
protocol = cast.player.api.CreateDashStreamingProtocol(host);
} else if (url.indexOf('.ism') > -1 ||
contentType === 'application/vnd.ms-sstr+xml') {
protocol = cast.player.api.CreateSmoothStreamingProtocol(host);
}
console.debug('loading playback url: ' + url);
console.debug('content type: ' + contentType);
host.onError = function (errorCode) {
console.error('fatal Error - ' + errorCode);
};
mediaElement.autoplay = false;
self._castPlayer = new cast.player.api.Player(host);
self._castPlayer.load(protocol, data.currentTime || 0);
self._castPlayer.playWhenHaveEnoughData();
}
function initMediaManager() {
mediaManager.defaultOnLoad = mediaManager.onLoad.bind(mediaManager);
mediaManager.onLoad = onMediaManagerLoadMedia.bind(self);
mediaManager.defaultOnStop = mediaManager.onStop.bind(mediaManager);
mediaManager.onStop = function (event) {
playbackManager.stop();
mediaManager.defaultOnStop(event);
};
}
function setCurrentSrc(elem, options) { function setCurrentSrc(elem, options) {
elem.removeEventListener('error', onError); elem.removeEventListener('error', onError);
@ -1203,14 +1137,6 @@ define(['browser', 'require', 'events', 'apphost', 'loading', 'dom', 'playbackMa
videoDialog = dlg; videoDialog = dlg;
self._mediaElement = videoElement; self._mediaElement = videoElement;
if (mediaManager) {
if (!mediaManager.embyInit) {
initMediaManager();
mediaManager.embyInit = true;
}
mediaManager.setMediaElement(videoElement);
}
// don't animate on smart tv's, too slow // don't animate on smart tv's, too slow
if (options.fullscreen && browser.supportsCssAnimation() && !browser.slow) { if (options.fullscreen && browser.supportsCssAnimation() && !browser.slow) {
zoomIn(dlg).then(function () { zoomIn(dlg).then(function () {