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

update sync objects

This commit is contained in:
Luke Pulverenti 2016-12-10 13:40:39 -05:00
parent fc210d8ad2
commit 6cede56f93
47 changed files with 148 additions and 62 deletions

View file

@ -16,12 +16,12 @@
},
"devDependencies": {},
"ignore": [],
"version": "1.1.101",
"_release": "1.1.101",
"version": "1.1.104",
"_release": "1.1.104",
"_resolution": {
"type": "version",
"tag": "1.1.101",
"commit": "ee067b87820c7fc8b43499f48b3035fd0e594032"
"tag": "1.1.104",
"commit": "61e924b71080aa117e48dc26323489895ffd62d1"
},
"_source": "https://github.com/MediaBrowser/Emby.ApiClient.Javascript.git",
"_target": "^1.1.51",

View file

@ -22,6 +22,27 @@
var self = this;
var webSocket;
var serverInfo = {};
var lastDetectedBitrate;
var lastDetectedBitrateTime;
var detectTimeout;
function redetectBitrate() {
stopBitrateDetection();
if (self.accessToken() && self.enableAutomaticBitrateDetection !== false) {
setTimeout(redetectBitrateInternal, 6000);
}
}
function redetectBitrateInternal() {
self.detectBitrate();
}
function stopBitrateDetection() {
if (detectTimeout) {
clearTimeout(detectTimeout);
}
}
/**
* Gets the server address.
@ -38,9 +59,14 @@
serverAddress = val;
lastDetectedBitrate = 0;
lastDetectedBitrateTime = 0;
if (changed) {
events.trigger(this, 'serveraddresschanged');
}
redetectBitrate();
}
return serverAddress;
@ -128,6 +154,7 @@
serverInfo.AccessToken = accessKey;
serverInfo.UserId = userId;
redetectBitrate();
};
self.encodeName = function (name) {
@ -672,10 +699,20 @@
function normalizeReturnBitrate(bitrate) {
if (!bitrate) {
if (lastDetectedBitrate) {
return lastDetectedBitrate;
}
return Promise.reject();
}
return Math.round(bitrate * 0.8);
var result = Math.round(bitrate * 0.8);
lastDetectedBitrate = result;
lastDetectedBitrateTime = new Date().getTime();
return result;
}
function detectBitrateInternal(tests, index, currentBitrate) {
@ -685,7 +722,7 @@
return normalizeReturnBitrate(currentBitrate);
}
var test = tests[0];
var test = tests[index];
return self.getDownloadSpeed(test.bytes).then(function (bitrate) {
@ -703,6 +740,10 @@
self.detectBitrate = function () {
if (lastDetectedBitrate && (new Date().getTime() - (lastDetectedBitrateTime || 0)) <= 3600000) {
return Promise.resolve(lastDetectedBitrate);
}
return detectBitrateInternal([
{
bytes: 100000,
@ -798,6 +839,7 @@
self.logout = function () {
stopBitrateDetection();
self.closeWebSocket();
var done = function () {
@ -2591,6 +2633,8 @@
self.onAuthenticated(self, result);
}
redetectBitrate();
resolve(result);
}, reject);
@ -3341,6 +3385,8 @@
throw new Error("null options");
}
stopBitrateDetection();
var url = self.getUrl("Sessions/Playing");
return self.ajax({
@ -3469,6 +3515,8 @@
throw new Error("null options");
}
redetectBitrate();
var url = self.getUrl("Sessions/Playing/Stopped");
return self.ajax({

View file

@ -447,6 +447,7 @@
if (options.reportCapabilities !== false) {
apiClient.reportCapabilities(capabilities);
}
apiClient.enableAutomaticBitrateDetection = options.enableAutomaticBitrateDetection;
if (options.enableWebSocket !== false) {
console.log('calling apiClient.ensureWebSocket');

View file

@ -16,7 +16,8 @@
var connectionOptions = {
updateDateLastAccessed: false,
enableWebSocket: false,
reportCapabilities: false
reportCapabilities: false,
enableAutomaticBitrateDetection: false
};
return connectionManager.connectToServer(server, connectionOptions).then(function (result) {

View file

@ -14,12 +14,12 @@
},
"devDependencies": {},
"ignore": [],
"version": "1.4.380",
"_release": "1.4.380",
"version": "1.4.381",
"_release": "1.4.381",
"_resolution": {
"type": "version",
"tag": "1.4.380",
"commit": "ef70fed326cf70ed366390f05df489943b155c13"
"tag": "1.4.381",
"commit": "2a3f7a75f989eb2c1086deac144f40f15baffefc"
},
"_source": "https://github.com/MediaBrowser/emby-webcomponents.git",
"_target": "^1.2.1",

View file

@ -272,7 +272,7 @@ define(['browser'], function (browser) {
// This works in edge desktop, but not mobile
// TODO: Retest this on mobile
if (!browser.edge || !browser.touch) {
if (!browser.edge || !browser.touch || browser.edgeUwp) {
hlsVideoAudioCodecs.push('ac3');
}
}

View file

@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "Play my Media",
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere",
"OneChannel": "One channel",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "Added {0}"
}

View file

@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "Play my Media",
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere",
"OneChannel": "One channel",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "Added {0}"
}

View file

@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "Play my Media",
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere",
"OneChannel": "One channel",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "Added {0}"
}

View file

@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "P\u0159ehr\u00e1t moje M\u00e9dia",
"HeaderDiscoverEmbyPremiere": "Objevte v\u00fdhody Emby Premiere",
"OneChannel": "Jeden kan\u00e1l",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "Added {0}"
}

View file

@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "Play my Media",
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere",
"OneChannel": "One channel",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "Added {0}"
}

View file

@ -182,7 +182,7 @@
"LabelAirsBeforeSeason": "Ausstrahlungen vor Staffel:",
"LabelAirsAfterSeason": "Ausstrahlungen nach Staffel:",
"LabelAirsBeforeEpisode": "Ausstrahlungen vor Episode:",
"HeaderExternalIds": "Externe Id's:",
"HeaderExternalIds": "Externe IDs:",
"HeaderDisplaySettings": "Anzeige Einstellungen",
"LabelTreatImageAs": "Bild behandeln, wie:",
"LabelDisplayOrder": "Anzeigereihenfolge:",
@ -343,8 +343,8 @@
"ButtonRestorePreviousPurchase": "Kauf wiederherstellen",
"ButtonUnlockWithPurchase": "Freischalten durch Kauf",
"ButtonUnlockPrice": "{0} freischalten",
"EmbyPremiereMonthlyWithPrice": "Emby Premiere Monthly {0}",
"HeaderAlreadyPaid": "Already Paid?",
"EmbyPremiereMonthlyWithPrice": "Emby Premiere Monatlich {0}",
"HeaderAlreadyPaid": "Schon bezahlt?",
"ButtonPlayOneMinute": "Eine Minute wiedergeben",
"PlaceFavoriteChannelsAtBeginning": "Platziere favorisierte Kan\u00e4le am Anfang",
"HeaderUnlockFeature": "Feature freischalten",
@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "Spiele meine Medien ab",
"HeaderDiscoverEmbyPremiere": "Entdecke Emby Premiere",
"OneChannel": "Ein Kanal",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Download entfernen?",
"AddedOnValue": "Hinzugef\u00fcgt {0}"
}

View file

@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "Play my Media",
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere",
"OneChannel": "One channel",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "Added {0}"
}

View file

@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "Play my Media",
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere",
"OneChannel": "One channel",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "Added {0}"
}

View file

@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "Play my Media",
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere",
"OneChannel": "One channel",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "Added {0}"
}

View file

@ -182,7 +182,7 @@
"LabelAirsBeforeSeason": "Transmisi\u00f3n antes de la temporada:",
"LabelAirsAfterSeason": "Transmisi\u00f3n despu\u00e9s de la temporada:",
"LabelAirsBeforeEpisode": "Transmisi\u00f3n antes del episodio:",
"HeaderExternalIds": "Id\u00b4s Externos:",
"HeaderExternalIds": "IDs Externos:",
"HeaderDisplaySettings": "Configuraci\u00f3n de Pantalla",
"LabelTreatImageAs": "Tratar imagen como:",
"LabelDisplayOrder": "Orden para mostrar:",
@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "Reproducir mis Medios",
"HeaderDiscoverEmbyPremiere": "Descubra Emby Premier",
"OneChannel": "Un canal",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "Agregado el {0}"
}

View file

@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "Play my Media",
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere",
"OneChannel": "One channel",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "Added {0}"
}

View file

@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "Play my Media",
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere",
"OneChannel": "One channel",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "Added {0}"
}

View file

@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "Play my Media",
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere",
"OneChannel": "One channel",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "Added {0}"
}

View file

@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "Lire mon contenu",
"HeaderDiscoverEmbyPremiere": "D\u00e9couvrez Emby Premiere",
"OneChannel": "Une cha\u00eene",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "Added {0}"
}

View file

@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "Play my Media",
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere",
"OneChannel": "One channel",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "Added {0}"
}

View file

@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "Play my Media",
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere",
"OneChannel": "One channel",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "Added {0}"
}

View file

@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "Reproduciraj moje medije",
"HeaderDiscoverEmbyPremiere": "Otkrijte Emby Premijeru",
"OneChannel": "One channel",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "Added {0}"
}

View file

@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "Play my Media",
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere",
"OneChannel": "One channel",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "Added {0}"
}

View file

@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "Play my Media",
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere",
"OneChannel": "One channel",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "Added {0}"
}

View file

@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "Riproduci i miei Media",
"HeaderDiscoverEmbyPremiere": "Scopri Emby Premiere",
"OneChannel": "Un canale",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "Added {0}"
}

View file

@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "\u041c\u0435\u043d\u0456\u04a3 \u0442\u0430\u0441\u044b\u0493\u044b\u0448\u0434\u0435\u0440\u0435\u043a\u0442\u0435\u0440\u0456\u043c\u0434\u0456 \u043e\u0439\u043d\u0430\u0442\u0443",
"HeaderDiscoverEmbyPremiere": "Emby Premiere \u0430\u0448\u044b\u04a3\u044b\u0437",
"OneChannel": "\u0411\u0456\u0440 \u0430\u0440\u043d\u0430\u0434\u0430\u043d",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "\u04ae\u0441\u0442\u0435\u043b\u0433\u0435\u043d\u0456 {0}"
}

View file

@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "Play my Media",
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere",
"OneChannel": "One channel",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "Added {0}"
}

View file

@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "Play my Media",
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere",
"OneChannel": "One channel",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "Added {0}"
}

View file

@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "Play my Media",
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere",
"OneChannel": "One channel",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "Added {0}"
}

View file

@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "Play my Media",
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere",
"OneChannel": "One channel",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "Added {0}"
}

View file

@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "Play my Media",
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere",
"OneChannel": "One channel",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "Added {0}"
}

View file

@ -182,7 +182,7 @@
"LabelAirsBeforeSeason": "Exibido antes da temporada:",
"LabelAirsAfterSeason": "Exibido depois da temporada:",
"LabelAirsBeforeEpisode": "Exibido antes do epis\u00f3dio:",
"HeaderExternalIds": "Id`s Externos:",
"HeaderExternalIds": "Ids Externos:",
"HeaderDisplaySettings": "Ajustes de Exibi\u00e7\u00e3o",
"LabelTreatImageAs": "Tratar imagem como:",
"LabelDisplayOrder": "Ordem de exibi\u00e7\u00e3o:",
@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "Reproduzir minha M\u00eddia",
"HeaderDiscoverEmbyPremiere": "Descobrir o Emby Premiere",
"OneChannel": "Um canal",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "Adicionado em {0}"
}

View file

@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "Play my Media",
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere",
"OneChannel": "One channel",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "Added {0}"
}

View file

@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "Play my Media",
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere",
"OneChannel": "One channel",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "Added {0}"
}

View file

@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "\u0412\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0441\u0442\u0438 \u043c\u043e\u0438 \u043c\u0435\u0434\u0438\u0430\u0434\u0430\u043d\u043d\u044b\u0435",
"HeaderDiscoverEmbyPremiere": "\u041e\u0442\u043a\u0440\u043e\u0439\u0442\u0435 Emby Premiere",
"OneChannel": "\u041e\u0434\u0438\u043d \u043a\u0430\u043d\u0430\u043b",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e {0}"
}

View file

@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "Play my Media",
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere",
"OneChannel": "One channel",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "Added {0}"
}

View file

@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "Play my Media",
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere",
"OneChannel": "One channel",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "Added {0}"
}

View file

@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "Play my Media",
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere",
"OneChannel": "One channel",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "Added {0}"
}

View file

@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "Play my Media",
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere",
"OneChannel": "One channel",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "Added {0}"
}

View file

@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "Play my Media",
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere",
"OneChannel": "One channel",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "Added {0}"
}

View file

@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "Play my Media",
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere",
"OneChannel": "One channel",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "Added {0}"
}

View file

@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "Play my Media",
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere",
"OneChannel": "One channel",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "Added {0}"
}

View file

@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "Play my Media",
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere",
"OneChannel": "One channel",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "Added {0}"
}

View file

@ -353,5 +353,6 @@
"HeaderPlayMyMedia": "Play my Media",
"HeaderDiscoverEmbyPremiere": "Discover Emby Premiere",
"OneChannel": "One channel",
"AddedOnValue": "Added on {0}"
"ConfirmRemoveDownload": "Remove download?",
"AddedOnValue": "Added {0}"
}

View file

@ -10,6 +10,8 @@
var self = this;
self.options = options;
function resetSyncStatus() {
updateSyncStatus(options.container, options.item);
}

View file

@ -670,8 +670,6 @@ define(['appSettings', 'userSettings', 'datetime', 'browser'], function (appSett
});
};
self.lastBitrateDetections = {};
self.playInternal = function (item, startPosition, callback) {
if (item == null) {
@ -699,15 +697,12 @@ define(['appSettings', 'userSettings', 'datetime', 'browser'], function (appSett
});
};
var bitrateDetectionKey = ApiClient.serverAddress();
if (item.MediaType == 'Video' && appSettings.enableAutomaticBitrateDetection() && (new Date().getTime() - (self.lastBitrateDetections[bitrateDetectionKey] || 0)) > 300000) {
if (item.MediaType == 'Video' && appSettings.enableAutomaticBitrateDetection()) {
Dashboard.showLoadingMsg();
ApiClient.detectBitrate().then(function (bitrate) {
console.log('Max bitrate auto detected to ' + bitrate);
self.lastBitrateDetections[bitrateDetectionKey] = new Date().getTime();
appSettings.maxStreamingBitrate(bitrate);
onBitrateDetected();