From 0ed16a04b2cb50b01c6b146dc465ca9489f46492 Mon Sep 17 00:00:00 2001 From: gnattu Date: Sat, 10 Aug 2024 21:00:48 +0800 Subject: [PATCH] Add user-configurable switch for hi10p on safari --- src/components/playbackSettings/playbackSettings.js | 8 ++++++++ .../playbackSettings/playbackSettings.template.html | 8 ++++++++ src/scripts/browserDeviceProfile.js | 2 +- src/scripts/settings/appSettings.js | 13 +++++++++++++ src/strings/en-us.json | 2 ++ 5 files changed, 32 insertions(+), 1 deletion(-) diff --git a/src/components/playbackSettings/playbackSettings.js b/src/components/playbackSettings/playbackSettings.js index ba418b96c4..166941cdf7 100644 --- a/src/components/playbackSettings/playbackSettings.js +++ b/src/components/playbackSettings/playbackSettings.js @@ -1,5 +1,6 @@ import appSettings from '../../scripts/settings/appSettings'; import { appHost } from '../apphost'; +import browser from '../../scripts/browser'; import focusManager from '../focusManager'; import qualityoptions from '../qualityOptions'; import globalize from '../../scripts/globalize'; @@ -143,6 +144,10 @@ function loadForm(context, user, userSettings, systemInfo, apiClient) { showHideQualityFields(context, user, apiClient); + if (browser.safari) { + context.querySelector('.enableHi10pSection').classList.remove('hide'); + } + context.querySelector('#selectAllowedAudioChannels').value = userSettings.allowedAudioChannels(); apiClient.getCultures().then(allCultures => { @@ -175,6 +180,7 @@ function loadForm(context, user, userSettings, systemInfo, apiClient) { context.querySelector('.chkPreferFmp4HlsContainer').checked = userSettings.preferFmp4HlsContainer(); context.querySelector('.chkEnableDts').checked = appSettings.enableDts(); context.querySelector('.chkEnableTrueHd').checked = appSettings.enableTrueHd(); + context.querySelector('.chkEnableHi10p').checked = appSettings.enableHi10p(); context.querySelector('.chkEnableCinemaMode').checked = userSettings.enableCinemaMode(); context.querySelector('#selectAudioNormalization').value = userSettings.selectAudioNormalization(); context.querySelector('.chkEnableNextVideoOverlay').checked = userSettings.enableNextVideoInfoOverlay(); @@ -225,6 +231,8 @@ function saveUser(context, user, userSettingsInstance, apiClient) { appSettings.enableDts(context.querySelector('.chkEnableDts').checked); appSettings.enableTrueHd(context.querySelector('.chkEnableTrueHd').checked); + appSettings.enableHi10p(context.querySelector('.chkEnableHi10p').checked); + setMaxBitrateFromField(context.querySelector('.selectVideoInNetworkQuality'), true, 'Video'); setMaxBitrateFromField(context.querySelector('.selectVideoInternetQuality'), false, 'Video'); setMaxBitrateFromField(context.querySelector('.selectMusicInternetQuality'), false, 'Audio'); diff --git a/src/components/playbackSettings/playbackSettings.template.html b/src/components/playbackSettings/playbackSettings.template.html index 2de92d8fb6..22109c5f59 100644 --- a/src/components/playbackSettings/playbackSettings.template.html +++ b/src/components/playbackSettings/playbackSettings.template.html @@ -180,6 +180,14 @@
${EnableTrueHdHelp}
+
+ +
${EnableHi10pHelp}
+
+