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

update recording dialogs

This commit is contained in:
Luke Pulverenti 2016-09-22 02:57:31 -04:00
parent 9146727fda
commit 0c7088e379
19 changed files with 143 additions and 70 deletions

View file

@ -138,13 +138,14 @@ define(['browser'], function (browser) {
function testCanPlayTs() {
return browser.tizen || browser.web0s;
return browser.tizen || browser.web0s || browser.edgeUwp;
}
function getDirectPlayProfileForVideoContainer(container, videoAudioCodecs) {
var supported = false;
var profileContainer = container;
var videoCodecs = [];
switch (container) {
@ -169,16 +170,19 @@ define(['browser'], function (browser) {
break;
case 'mov':
supported = browser.chrome || browser.edgeUwp;
videoCodecs.push('h264');
break;
case 'm2ts':
supported = browser.tizen || browser.web0s || browser.edgeUwp;
videoCodecs.push('h264');
break;
case 'wmv':
supported = browser.tizen || browser.web0s || browser.edgeUwp;
videoAudioCodecs = [];
break;
case 'ts':
supported = browser.tizen || browser.web0s || browser.edgeUwp;
supported = testCanPlayTs();
videoCodecs.push('h264');
profileContainer = 'ts,mpegts';
break;
default:
@ -192,6 +196,7 @@ define(['browser'], function (browser) {
return {
Container: profileContainer,
Type: 'Video',
VideoCodec: videoCodecs.join(','),
AudioCodec: videoAudioCodecs.join(',')
};
}
@ -239,7 +244,6 @@ define(['browser'], function (browser) {
var canPlayWebm = videoTestElement.canPlayType('video/webm').replace(/no/, '');
var canPlayMkv = testCanPlayMkv(videoTestElement);
var canPlayTs = testCanPlayTs();
var profile = {};
@ -269,7 +273,7 @@ define(['browser'], function (browser) {
}
var mp3Added = false;
if (canPlayMkv || canPlayTs) {
if (canPlayMkv) {
if (supportsMp3VideoAudio) {
mp3Added = true;
videoAudioCodecs.push('mp3');
@ -401,20 +405,6 @@ define(['browser'], function (browser) {
});
}
if (canPlayTs && options.supportsCustomSeeking && !browser.tizen && !browser.web0s && options.enableTsProgressive !== false) {
profile.TranscodingProfiles.push({
Container: 'ts',
Type: 'Video',
AudioCodec: videoAudioCodecs.join(','),
VideoCodec: 'h264',
Context: 'Streaming',
CopyTimestamps: copyTimestamps,
// If audio transcoding is needed, limit channels to number of physical audio channels
// Trying to transcode to 5 channels when there are only 2 speakers generally does not sound good
MaxAudioChannels: physicalAudioChannels.toString()
});
}
if (canPlayHls() && options.enableHls !== false) {
profile.TranscodingProfiles.push({
Container: 'ts',