mirror of
https://github.com/jellyfin/jellyfin-web
synced 2025-03-30 19:56:21 +00:00
commit
ab015330a9
6 changed files with 56 additions and 16 deletions
|
@ -15,12 +15,12 @@
|
||||||
},
|
},
|
||||||
"devDependencies": {},
|
"devDependencies": {},
|
||||||
"ignore": [],
|
"ignore": [],
|
||||||
"version": "1.0.74",
|
"version": "1.0.76",
|
||||||
"_release": "1.0.74",
|
"_release": "1.0.76",
|
||||||
"_resolution": {
|
"_resolution": {
|
||||||
"type": "version",
|
"type": "version",
|
||||||
"tag": "1.0.74",
|
"tag": "1.0.76",
|
||||||
"commit": "74afb337ff5f0ee41b75ba5ddb5dea5ec9c20a66"
|
"commit": "8b29590144a9a67065820c7c1a6a4f433f52d9bf"
|
||||||
},
|
},
|
||||||
"_source": "git://github.com/MediaBrowser/emby-webcomponents.git",
|
"_source": "git://github.com/MediaBrowser/emby-webcomponents.git",
|
||||||
"_target": "~1.0.0",
|
"_target": "~1.0.0",
|
||||||
|
|
|
@ -20,13 +20,17 @@
|
||||||
|
|
||||||
var browser = match[1] || "";
|
var browser = match[1] || "";
|
||||||
|
|
||||||
if (ua.indexOf("windows phone") != -1 || ua.indexOf("iemobile") != -1) {
|
if (browser == "edge") {
|
||||||
|
platform_match = [""];
|
||||||
|
} else {
|
||||||
|
if (ua.indexOf("windows phone") != -1 || ua.indexOf("iemobile") != -1) {
|
||||||
|
|
||||||
// http://www.neowin.net/news/ie11-fakes-user-agent-to-fool-gmail-in-windows-phone-81-gdr1-update
|
// http://www.neowin.net/news/ie11-fakes-user-agent-to-fool-gmail-in-windows-phone-81-gdr1-update
|
||||||
browser = "msie";
|
browser = "msie";
|
||||||
}
|
}
|
||||||
else if (ua.indexOf("like gecko") != -1 && ua.indexOf('webkit') == -1 && ua.indexOf('opera') == -1 && ua.indexOf('chrome') == -1 && ua.indexOf('safari') == -1) {
|
else if (ua.indexOf("like gecko") != -1 && ua.indexOf('webkit') == -1 && ua.indexOf('opera') == -1 && ua.indexOf('chrome') == -1 && ua.indexOf('safari') == -1) {
|
||||||
browser = "msie";
|
browser = "msie";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (browser == 'opr') {
|
if (browser == 'opr') {
|
||||||
|
|
|
@ -103,6 +103,7 @@ define(['browser'], function (browser) {
|
||||||
profile.DirectPlayProfiles = [];
|
profile.DirectPlayProfiles = [];
|
||||||
|
|
||||||
var videoAudioCodecs = [];
|
var videoAudioCodecs = [];
|
||||||
|
var hlsVideoAudioCodecs = [];
|
||||||
|
|
||||||
var supportsMp3VideoAudio = videoTestElement.canPlayType('video/mp4; codecs="avc1.640029, mp4a.69"').replace(/no/, '') ||
|
var supportsMp3VideoAudio = videoTestElement.canPlayType('video/mp4; codecs="avc1.640029, mp4a.69"').replace(/no/, '') ||
|
||||||
videoTestElement.canPlayType('video/mp4; codecs="avc1.640029, mp4a.6B"').replace(/no/, '');
|
videoTestElement.canPlayType('video/mp4; codecs="avc1.640029, mp4a.6B"').replace(/no/, '');
|
||||||
|
@ -113,19 +114,27 @@ define(['browser'], function (browser) {
|
||||||
// safari is lying
|
// safari is lying
|
||||||
if (!browser.safari) {
|
if (!browser.safari) {
|
||||||
videoAudioCodecs.push('ac3');
|
videoAudioCodecs.push('ac3');
|
||||||
|
|
||||||
|
// This works in edge desktop, but not mobile
|
||||||
|
if (!browser.edge || !browser.mobile) {
|
||||||
|
hlsVideoAudioCodecs.push('ac3');
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (canPlayMkv) {
|
if (canPlayMkv) {
|
||||||
if (supportsMp3VideoAudio) {
|
if (supportsMp3VideoAudio) {
|
||||||
videoAudioCodecs.push('mp3');
|
videoAudioCodecs.push('mp3');
|
||||||
|
hlsVideoAudioCodecs.push('mp3');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (videoTestElement.canPlayType('video/mp4; codecs="avc1.640029, mp4a.40.2"').replace(/no/, '')) {
|
if (videoTestElement.canPlayType('video/mp4; codecs="avc1.640029, mp4a.40.2"').replace(/no/, '')) {
|
||||||
videoAudioCodecs.push('aac');
|
videoAudioCodecs.push('aac');
|
||||||
|
hlsVideoAudioCodecs.push('aac');
|
||||||
}
|
}
|
||||||
if (!canPlayMkv) {
|
if (!canPlayMkv) {
|
||||||
if (supportsMp3VideoAudio) {
|
if (supportsMp3VideoAudio) {
|
||||||
videoAudioCodecs.push('mp3');
|
videoAudioCodecs.push('mp3');
|
||||||
|
hlsVideoAudioCodecs.push('mp3');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -197,7 +206,7 @@ define(['browser'], function (browser) {
|
||||||
profile.TranscodingProfiles.push({
|
profile.TranscodingProfiles.push({
|
||||||
Container: 'ts',
|
Container: 'ts',
|
||||||
Type: 'Video',
|
Type: 'Video',
|
||||||
AudioCodec: videoAudioCodecs.join(','),
|
AudioCodec: hlsVideoAudioCodecs.join(','),
|
||||||
VideoCodec: 'h264',
|
VideoCodec: 'h264',
|
||||||
Context: 'Streaming',
|
Context: 'Streaming',
|
||||||
Protocol: 'hls'
|
Protocol: 'hls'
|
||||||
|
|
|
@ -2215,7 +2215,7 @@
|
||||||
// cardContent
|
// cardContent
|
||||||
html += '</a>';
|
html += '</a>';
|
||||||
|
|
||||||
if (options.overlayPlayButton && !item.IsPlaceHolder && (item.LocationType != 'Virtual' || !item.MediaType || item.Type == 'Program')) {
|
if (options.overlayPlayButton && !item.IsPlaceHolder && (item.LocationType != 'Virtual' || !item.MediaType || item.Type == 'Program') && item.Type != 'Person') {
|
||||||
html += '<div class="cardOverlayButtonContainer"><paper-icon-button icon="play-arrow" class="cardOverlayPlayButton" onclick="return false;"></paper-icon-button></div>';
|
html += '<div class="cardOverlayButtonContainer"><paper-icon-button icon="play-arrow" class="cardOverlayPlayButton" onclick="return false;"></paper-icon-button></div>';
|
||||||
}
|
}
|
||||||
if (options.overlayMoreButton) {
|
if (options.overlayMoreButton) {
|
||||||
|
|
|
@ -469,7 +469,7 @@
|
||||||
return self.currentItem && self.currentItem.MediaType == mediaType;
|
return self.currentItem && self.currentItem.MediaType == mediaType;
|
||||||
};
|
};
|
||||||
|
|
||||||
function translateItemsForPlayback(items) {
|
function translateItemsForPlayback(items, smart) {
|
||||||
|
|
||||||
var firstItem = items[0];
|
var firstItem = items[0];
|
||||||
var promise;
|
var promise;
|
||||||
|
@ -511,6 +511,33 @@
|
||||||
MediaTypes: "Audio,Video"
|
MediaTypes: "Audio,Video"
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
else if (smart && firstItem.Type == "Episode" && items.length == 1) {
|
||||||
|
|
||||||
|
promise = ApiClient.getEpisodes(firstItem.SeriesId, {
|
||||||
|
IsVirtualUnaired: false,
|
||||||
|
IsMissing: false,
|
||||||
|
UserId: ApiClient.getCurrentUserId(),
|
||||||
|
Fields: getItemFields
|
||||||
|
|
||||||
|
}).then(function (episodesResult) {
|
||||||
|
|
||||||
|
var foundItem = false;
|
||||||
|
episodesResult.Items = episodesResult.Items.filter(function (e) {
|
||||||
|
|
||||||
|
if (foundItem) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
if (e.Id == firstItem.Id) {
|
||||||
|
foundItem = true;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
episodesResult.TotalRecordCount = episodesResult.Items.length;
|
||||||
|
return episodesResult;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
if (promise) {
|
if (promise) {
|
||||||
return new Promise(function (resolve, reject) {
|
return new Promise(function (resolve, reject) {
|
||||||
|
@ -537,7 +564,7 @@
|
||||||
|
|
||||||
if (options.items) {
|
if (options.items) {
|
||||||
|
|
||||||
translateItemsForPlayback(options.items).then(function (items) {
|
translateItemsForPlayback(options.items, true).then(function (items) {
|
||||||
|
|
||||||
self.playWithIntros(items, options, user);
|
self.playWithIntros(items, options, user);
|
||||||
});
|
});
|
||||||
|
@ -550,7 +577,7 @@
|
||||||
|
|
||||||
}).then(function (result) {
|
}).then(function (result) {
|
||||||
|
|
||||||
translateItemsForPlayback(result.Items).then(function (items) {
|
translateItemsForPlayback(result.Items, true).then(function (items) {
|
||||||
|
|
||||||
self.playWithIntros(items, options, user);
|
self.playWithIntros(items, options, user);
|
||||||
});
|
});
|
||||||
|
|
|
@ -1826,7 +1826,7 @@ var AppInfo = {};
|
||||||
// Put the version into the bower path since we can't easily put a query string param on html imports
|
// Put the version into the bower path since we can't easily put a query string param on html imports
|
||||||
// Emby server will handle this
|
// Emby server will handle this
|
||||||
if (!Dashboard.isRunningInCordova()) {
|
if (!Dashboard.isRunningInCordova()) {
|
||||||
bowerPath += window.dashboardVersion;
|
//bowerPath += window.dashboardVersion;
|
||||||
}
|
}
|
||||||
|
|
||||||
return bowerPath;
|
return bowerPath;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue