From 144e2209deaa711520e661c61ca513532cbbebee Mon Sep 17 00:00:00 2001 From: Telepathic Walrus Date: Sun, 29 Jan 2023 20:19:20 +0000 Subject: [PATCH 01/56] Added basic code for audio gian --- src/plugins/htmlAudioPlayer/plugin.js | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/plugins/htmlAudioPlayer/plugin.js b/src/plugins/htmlAudioPlayer/plugin.js index b5d3c8bd02..627ab5d6ec 100644 --- a/src/plugins/htmlAudioPlayer/plugin.js +++ b/src/plugins/htmlAudioPlayer/plugin.js @@ -113,6 +113,20 @@ class HtmlAudioPlayer { val += '#t=' + seconds; } + const audioCtx = new AudioContext(); + const myAudio = document.querySelector('.mediaPlayerAudio'); + + const source = audioCtx.createMediaElementSource(myAudio); + + const gainNode = audioCtx.createGain(); + const dbGain = -1; + console.debug(options.item); + console.debug("before" + dbGain); + gainNode.gain.value = Math.pow(10, (dbGain/20)); + source.connect(gainNode); + gainNode.connect(audioCtx.destination); + console.debug('gain:' + gainNode.gain.value); + htmlMediaHelper.destroyHlsPlayer(self); self._currentPlayOptions = options; From 5edebd9070b0a8b8b2392513f560eca0dc1d9dfc Mon Sep 17 00:00:00 2001 From: Telepathic Walrus Date: Mon, 30 Jan 2023 18:47:38 +0000 Subject: [PATCH 02/56] Use normalization value from server --- src/plugins/htmlAudioPlayer/plugin.js | 36 ++++++++++++++++++--------- 1 file changed, 24 insertions(+), 12 deletions(-) diff --git a/src/plugins/htmlAudioPlayer/plugin.js b/src/plugins/htmlAudioPlayer/plugin.js index 627ab5d6ec..45142b8735 100644 --- a/src/plugins/htmlAudioPlayer/plugin.js +++ b/src/plugins/htmlAudioPlayer/plugin.js @@ -97,6 +97,7 @@ class HtmlAudioPlayer { self._currentTime = null; const elem = createMediaElement(); + return setCurrentSrc(elem, options); }; @@ -107,25 +108,21 @@ class HtmlAudioPlayer { let val = options.url; console.debug('playing url: ' + val); + const dbGain = -18 - options.item.Normalization; + console.debug(options.item); + self.gainNode.gain.value = Math.pow(10, (dbGain/20)); + + + console.debug('gain:' + self.gainNode.gain.value); + + // Convert to seconds const seconds = (options.playerStartPositionTicks || 0) / 10000000; if (seconds) { val += '#t=' + seconds; } - const audioCtx = new AudioContext(); - const myAudio = document.querySelector('.mediaPlayerAudio'); - const source = audioCtx.createMediaElementSource(myAudio); - - const gainNode = audioCtx.createGain(); - const dbGain = -1; - console.debug(options.item); - console.debug("before" + dbGain); - gainNode.gain.value = Math.pow(10, (dbGain/20)); - source.connect(gainNode); - gainNode.connect(audioCtx.destination); - console.debug('gain:' + gainNode.gain.value); htmlMediaHelper.destroyHlsPlayer(self); @@ -255,9 +252,24 @@ class HtmlAudioPlayer { self._mediaElement = elem; + addGainElement(elem); + return elem; } + function addGainElement(elem) { + const audioCtx = new AudioContext(); + + const source = audioCtx.createMediaElementSource(elem); + + const gainNode = audioCtx.createGain(); + + source.connect(gainNode); + gainNode.connect(audioCtx.destination); + + self.gainNode = gainNode + } + function onEnded() { htmlMediaHelper.onEndedInternal(self, this, onError); } From de09fd4d363f0aee447ac1815a801b65adf9e8c5 Mon Sep 17 00:00:00 2001 From: Telepathic Walrus Date: Mon, 30 Jan 2023 20:36:11 +0000 Subject: [PATCH 03/56] Add option to enable/disable normalization --- .../playbackSettings/playbackSettings.js | 3 +++ .../playbackSettings.template.html | 10 +++++++++- src/plugins/htmlAudioPlayer/plugin.js | 15 ++++++++++----- src/scripts/settings/userSettings.js | 14 ++++++++++++++ src/strings/en-us.json | 2 ++ 5 files changed, 38 insertions(+), 6 deletions(-) diff --git a/src/components/playbackSettings/playbackSettings.js b/src/components/playbackSettings/playbackSettings.js index 1969d478c1..9f69acb797 100644 --- a/src/components/playbackSettings/playbackSettings.js +++ b/src/components/playbackSettings/playbackSettings.js @@ -185,6 +185,7 @@ import template from './playbackSettings.template.html'; context.querySelector('.chkPlayDefaultAudioTrack').checked = user.Configuration.PlayDefaultAudioTrack || false; context.querySelector('.chkPreferFmp4HlsContainer').checked = userSettings.preferFmp4HlsContainer(); context.querySelector('.chkEnableCinemaMode').checked = userSettings.enableCinemaMode(); + context.querySelector('.chkEnableAudioNormalization').checked = userSettings.enableAudioNormalization(); context.querySelector('.chkEnableNextVideoOverlay').checked = userSettings.enableNextVideoInfoOverlay(); context.querySelector('.chkRememberAudioSelections').checked = user.Configuration.RememberAudioSelections || false; context.querySelector('.chkRememberSubtitleSelections').checked = user.Configuration.RememberSubtitleSelections || false; @@ -231,6 +232,8 @@ import template from './playbackSettings.template.html'; user.Configuration.EnableNextEpisodeAutoPlay = context.querySelector('.chkEpisodeAutoPlay').checked; userSettingsInstance.preferFmp4HlsContainer(context.querySelector('.chkPreferFmp4HlsContainer').checked); userSettingsInstance.enableCinemaMode(context.querySelector('.chkEnableCinemaMode').checked); + userSettingsInstance.enableAudioNormalization(context.querySelector('.chkEnableAudioNormalization').checked); + userSettingsInstance.enableNextVideoInfoOverlay(context.querySelector('.chkEnableNextVideoOverlay').checked); user.Configuration.RememberAudioSelections = context.querySelector('.chkRememberAudioSelections').checked; diff --git a/src/components/playbackSettings/playbackSettings.template.html b/src/components/playbackSettings/playbackSettings.template.html index 82c7483b9b..ba1c999b38 100644 --- a/src/components/playbackSettings/playbackSettings.template.html +++ b/src/components/playbackSettings/playbackSettings.template.html @@ -64,6 +64,14 @@
+ +
+ +
${EnableAudioNormalizationHelp}
+
@@ -102,7 +110,7 @@
${RememberAudioSelectionsHelp}
- +
@@ -80,6 +72,14 @@ ${TabAdvanced} +
+ +
${EnableAudioNormalizationHelp}
+
+
+
+ +
${LabelEnableLUFSScanHelp}
+
+
'; - } - itemHtml += '
'; - itemHtml += '
'; - itemHtml += '

'; - itemHtml += notification.Category; - itemHtml += '

'; - if (showHelp) { - showHelp = false; - itemHtml += ''; - itemHtml += globalize.translate('Help'); - itemHtml += ''; - } - itemHtml += '
'; - itemHtml += ''; - html += '
'; - } - page.querySelector('.notificationList').innerHTML = html; - loading.hide(); - }); -} - -export default function (view) { - view.addEventListener('viewshow', function () { - reload(view); - }); -} diff --git a/src/controllers/dashboard/plugins/add/index.html b/src/controllers/dashboard/plugins/add/index.html index 7d3abd55fa..7f83304609 100644 --- a/src/controllers/dashboard/plugins/add/index.html +++ b/src/controllers/dashboard/plugins/add/index.html @@ -23,7 +23,7 @@
${ServerRestartNeededAfterPluginInstall}
diff --git a/src/scripts/libraryMenu.js b/src/scripts/libraryMenu.js index ec7f26a0b2..ae59829aa5 100644 --- a/src/scripts/libraryMenu.js +++ b/src/scripts/libraryMenu.js @@ -516,10 +516,9 @@ function createToolsMenuList(pluginItems) { icon: 'bug_report' }); links.push({ - name: globalize.translate('TabNotifications'), + name: globalize.translate('Notifications'), icon: 'notifications', - href: '#/notificationsettings.html', - pageIds: ['notificationSettingsPage', 'notificationSettingPage'] + href: '#/notificationsettings.html' }); links.push({ name: globalize.translate('TabPlugins'), diff --git a/src/strings/en-us.json b/src/strings/en-us.json index 785d17182c..a9e77b1dde 100644 --- a/src/strings/en-us.json +++ b/src/strings/en-us.json @@ -4,7 +4,6 @@ "Actor": "Actor", "Add": "Add", "AddedOnValue": "Added {0}", - "AdditionalNotificationServices": "Browse the plugin catalog to install additional notification services.", "AddToCollection": "Add to collection", "AddToFavorites": "Add to favorites", "AddToPlaylist": "Add to playlist", @@ -290,6 +289,7 @@ "General": "General", "Genre": "Genre", "Genres": "Genres", + "GetThePlugin": "Get the Plugin", "GoogleCastUnsupported": "Google Cast Unsupported", "GroupBySeries": "Group by series", "GroupVersions": "Group versions", @@ -770,7 +770,6 @@ "LabelModelName": "Model name", "LabelModelNumber": "Model number", "LabelModelUrl": "Model URL", - "LabelMonitorUsers": "Monitor activity from", "LabelMovieCategories": "Movie categories", "LabelMoviePrefix": "Movie prefix", "LabelMoviePrefixHelp": "If a prefix is applied to movie titles, enter it here so the server can handle it properly.", @@ -782,7 +781,6 @@ "LabelNewPassword": "New password", "LabelNewPasswordConfirm": "New password confirm", "LabelNewsCategories": "News categories", - "LabelNotificationEnabled": "Enable this notification", "LabelNumber": "Number", "LabelNumberOfGuideDays": "Number of days of guide data to download", "LabelNumberOfGuideDaysHelp": "Downloading more days worth of guide data provides the ability to schedule out further in advance and view more listings, but it will also take longer to download. Auto will pick based on the number of channels.", @@ -855,9 +853,7 @@ "LabelSeasonNumber": "Season number", "LabelSelectFolderGroups": "Automatically group content from the following folders into views such as 'Movies', 'Music' and 'TV'", "LabelSelectFolderGroupsHelp": "Folders that are unchecked will be displayed by themselves in their own view.", - "LabelSelectUsers": "Select users", "LabelSelectVersionToInstall": "Select version to install", - "LabelSendNotificationToUsers": "Send the notification to", "LabelSerialNumber": "Serial number", "LabelSeriesRecordingPath": "Series recording path", "LabelServerHost": "Host", @@ -968,7 +964,6 @@ "LabelUDPPortRange": "UDP Communication Range", "LabelUDPPortRangeHelp": "Restrict Jellyfin to use this port range when making UDP connections. (Default is 1024 - 645535).
Note: Certain function require fixed ports that may be outside of this range.", "LabelUnstable": "Unstable", - "LabelUseNotificationServices": "Use the following services", "LabelUser": "User", "LabelUserAgent": "User agent", "LabelUserLibrary": "User library", @@ -1172,6 +1167,8 @@ "Normal": "Normal", "NoSubtitleSearchResultsFound": "No results found.", "NoSubtitlesHelp": "Subtitles will not be loaded by default. They can still be turned on manually during playback.", + "Notifications": "Notifications", + "NotificationsMovedMessage": "The notifications functionality has moved to the Webhook plugin.", "NumLocationsValue": "{0} folders", "Off": "Off", "OnApplicationStartup": "On application startup", @@ -1181,7 +1178,6 @@ "OnlyImageFormats": "Only Image Formats (VobSub, PGS, SUB)", "OnWakeFromSleep": "On wake from sleep", "Option3D": "3D", - "OptionAdminUsers": "Administrators", "OptionAllowAudioPlaybackTranscoding": "Allow audio playback that requires transcoding", "OptionAllowBrowsingLiveTv": "Allow Live TV access", "OptionAllowContentDownload": "Allow media downloads", @@ -1198,14 +1194,12 @@ "OptionAllowUserToManageServer": "Allow this user to manage the server", "OptionAllowVideoPlaybackRemuxing": "Allow video playback that requires conversion without re-encoding", "OptionAllowVideoPlaybackTranscoding": "Allow video playback that requires transcoding", - "OptionAllUsers": "All users", "OptionAutomaticallyGroupSeries": "Automatically merge series that are spread across multiple folders", "OptionAutomaticallyGroupSeriesHelp": "Series that are spread across multiple folders within this library will be automatically merged into a single series.", "OptionBluray": "BD", "OptionCaptionInfoExSamsung": "CaptionInfoEx (Samsung)", "OptionCommunityRating": "Community Rating", "OptionCriticRating": "Critics Rating", - "OptionCustomUsers": "Custom", "OptionDaily": "Daily", "OptionDateAdded": "Date Added", "OptionDateEpisodeAdded": "Date Episode Added", @@ -1504,7 +1498,6 @@ "TabNetworking": "Networking", "TabNetworks": "TV Networks", "TabNfoSettings": "NFO Settings", - "TabNotifications": "Notifications", "TabOther": "Other", "TabParentalControl": "Parental Control", "TabPlugins": "Plugins", From 815b7f9f1ea3bde19260deca6c79450d4953d9e3 Mon Sep 17 00:00:00 2001 From: TelepathicWalrus <48514138+TelepathicWalrus@users.noreply.github.com> Date: Tue, 23 May 2023 06:57:04 +0100 Subject: [PATCH 18/56] Update src/components/libraryoptionseditor/libraryoptionseditor.js Co-authored-by: Bill Thornton --- src/components/libraryoptionseditor/libraryoptionseditor.js | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/src/components/libraryoptionseditor/libraryoptionseditor.js b/src/components/libraryoptionseditor/libraryoptionseditor.js index 55d899921a..9f25b6c3e6 100644 --- a/src/components/libraryoptionseditor/libraryoptionseditor.js +++ b/src/components/libraryoptionseditor/libraryoptionseditor.js @@ -416,11 +416,7 @@ export function setContentType(parent, contentType) { } } - if (contentType === 'music') { - parent.querySelector('.chkEnableLUFSScan').classList.remove('hide'); - } else { - parent.querySelector('.chkEnableLUFSScan').classList.add('hide'); - } + parent.querySelector('.chkEnableLUFSScan').classList.toggle('hide', contentType !== 'music'); if (contentType === 'tvshows') { parent.querySelector('.chkEnableEmbeddedEpisodeInfosContainer').classList.remove('hide'); From c9b7f834caf4b0aeed5c9568fab29c0c58cc7ec1 Mon Sep 17 00:00:00 2001 From: TelepathicWalrus <48514138+TelepathicWalrus@users.noreply.github.com> Date: Tue, 23 May 2023 20:17:33 +0100 Subject: [PATCH 19/56] Update src/plugins/htmlAudioPlayer/plugin.js Co-authored-by: Dmitry Lyzo <56478732+dmitrylyzo@users.noreply.github.com> --- src/plugins/htmlAudioPlayer/plugin.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/plugins/htmlAudioPlayer/plugin.js b/src/plugins/htmlAudioPlayer/plugin.js index 2f3a7ecb5f..daf9911e73 100644 --- a/src/plugins/htmlAudioPlayer/plugin.js +++ b/src/plugins/htmlAudioPlayer/plugin.js @@ -264,7 +264,9 @@ class HtmlAudioPlayer { function addGainElement(elem) { try { - const audioCtx = new AudioContext(); /* eslint-disable-line compat/compat */ + const AudioContext = window.AudioContext || window.webkitAudioContext; /* eslint-disable-line compat/compat */ + + const audioCtx = new AudioContext(); const source = audioCtx.createMediaElementSource(elem); const gainNode = audioCtx.createGain(); From 88d16520e483c50d9293f67c5efa06ac2d622ba8 Mon Sep 17 00:00:00 2001 From: TelepathicWalrus <48514138+TelepathicWalrus@users.noreply.github.com> Date: Wed, 24 May 2023 06:58:28 +0100 Subject: [PATCH 20/56] Update src/plugins/htmlAudioPlayer/plugin.js Co-authored-by: Dmitry Lyzo <56478732+dmitrylyzo@users.noreply.github.com> --- src/plugins/htmlAudioPlayer/plugin.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/plugins/htmlAudioPlayer/plugin.js b/src/plugins/htmlAudioPlayer/plugin.js index daf9911e73..19c628b175 100644 --- a/src/plugins/htmlAudioPlayer/plugin.js +++ b/src/plugins/htmlAudioPlayer/plugin.js @@ -111,7 +111,7 @@ class HtmlAudioPlayer { let val = options.url; console.debug('playing url: ' + val); - import('../../scripts/settings/userSettings').then((userSettings)=> { + import('../../scripts/settings/userSettings').then((userSettings) => { if (userSettings.enableAudioNormalization() && options.item.LUFS != null) { const dbGain = -18 - options.item.LUFS; self.gainNode.gain.value = Math.pow(10, (dbGain / 20)); From af555a3a43673f75cf6ce306d38ded850410c29d Mon Sep 17 00:00:00 2001 From: TelepathicWalrus <48514138+TelepathicWalrus@users.noreply.github.com> Date: Wed, 24 May 2023 06:58:36 +0100 Subject: [PATCH 21/56] Update src/plugins/htmlAudioPlayer/plugin.js Co-authored-by: Dmitry Lyzo <56478732+dmitrylyzo@users.noreply.github.com> --- src/plugins/htmlAudioPlayer/plugin.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/plugins/htmlAudioPlayer/plugin.js b/src/plugins/htmlAudioPlayer/plugin.js index 19c628b175..a7c7be0c15 100644 --- a/src/plugins/htmlAudioPlayer/plugin.js +++ b/src/plugins/htmlAudioPlayer/plugin.js @@ -119,7 +119,7 @@ class HtmlAudioPlayer { self.gainNode.gain.value = 1; } console.debug('gain:' + self.gainNode.gain.value); - }).catch((err)=> { + }).catch((err) => { console.error('Failed to add/change gainNode', err); }); From 78b32b13b5474ac2459520c1c5f27a081fa83773 Mon Sep 17 00:00:00 2001 From: TelepathicWalrus <48514138+TelepathicWalrus@users.noreply.github.com> Date: Wed, 24 May 2023 06:58:44 +0100 Subject: [PATCH 22/56] Update src/strings/en-us.json Co-authored-by: Dmitry Lyzo <56478732+dmitrylyzo@users.noreply.github.com> --- src/strings/en-us.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/strings/en-us.json b/src/strings/en-us.json index e7b0012cbd..623eb27a6e 100644 --- a/src/strings/en-us.json +++ b/src/strings/en-us.json @@ -661,7 +661,7 @@ "LabelEnableIP6": "Enable IPv6", "LabelEnableIP6Help": "Enable IPv6 functionality.", "LabelEnableLUFSScan": "Enable LUFS scan", - "LabelEnableLUFSScanHelp": "Enable LUFS scan for music (This will take longer and more resources)", + "LabelEnableLUFSScanHelp": "Enable LUFS scan for music (This will take longer and more resources).", "LabelEnableRealtimeMonitor": "Enable real time monitoring", "LabelEnableRealtimeMonitorHelp": "Changes to files will be processed immediately on supported file systems.", "LabelEnableSingleImageInDidlLimit": "Limit to single embedded image", From 0220595494ae2a90a93c195ea4d7ea3e41e4b140 Mon Sep 17 00:00:00 2001 From: TelepathicWalrus <48514138+TelepathicWalrus@users.noreply.github.com> Date: Wed, 24 May 2023 06:58:51 +0100 Subject: [PATCH 23/56] Update src/strings/en-us.json Co-authored-by: Dmitry Lyzo <56478732+dmitrylyzo@users.noreply.github.com> --- src/strings/en-us.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/strings/en-us.json b/src/strings/en-us.json index 623eb27a6e..a4f5582bbe 100644 --- a/src/strings/en-us.json +++ b/src/strings/en-us.json @@ -132,7 +132,7 @@ "ChannelNumber": "Channel number", "Channels": "Channels", "CinemaModeConfigurationHelp": "Cinema mode brings the theater experience straight to your living room with the ability to play trailers and custom intros before the main feature.", - "EnableAudioNormalizationHelp": "Audio normalization will add a constant gain to keep the average at a desired level(-18db). ", + "EnableAudioNormalizationHelp": "Audio normalization will add a constant gain to keep the average at a desired level (-18dB).", "ClearQueue": "Clear queue", "ClientSettings": "Client Settings", "Collections": "Collections", From 85e2fb637413d96eea88538e629d230dc0a96ce5 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 24 May 2023 23:28:47 +0000 Subject: [PATCH 24/56] Update github/codeql-action action to v2.3.4 --- .github/workflows/codeql-analysis.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index 696c591aa5..8d5bff612a 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml @@ -21,11 +21,11 @@ jobs: - name: Checkout repository uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Initialize CodeQL - uses: github/codeql-action/init@29b1f65c5e92e24fe6b6647da1eaabe529cec70f # v2.3.3 + uses: github/codeql-action/init@f0e3dfb30302f8a0881bb509b044e0de4f6ef589 # v2.3.4 with: languages: ${{ matrix.language }} queries: +security-extended - name: Autobuild - uses: github/codeql-action/autobuild@29b1f65c5e92e24fe6b6647da1eaabe529cec70f # v2.3.3 + uses: github/codeql-action/autobuild@f0e3dfb30302f8a0881bb509b044e0de4f6ef589 # v2.3.4 - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@29b1f65c5e92e24fe6b6647da1eaabe529cec70f # v2.3.3 + uses: github/codeql-action/analyze@f0e3dfb30302f8a0881bb509b044e0de4f6ef589 # v2.3.4 From 5c44b03b5ff8aac356fad68ca7eade8944d4482e Mon Sep 17 00:00:00 2001 From: Dmitry Lyzo Date: Wed, 24 May 2023 19:34:46 +0300 Subject: [PATCH 25/56] Fix access to missing Shuffle button --- src/controllers/movies/movies.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/controllers/movies/movies.js b/src/controllers/movies/movies.js index a8e2aca1fa..6ec5243715 100644 --- a/src/controllers/movies/movies.js +++ b/src/controllers/movies/movies.js @@ -86,7 +86,7 @@ export default function (view, params, tabContent, options) { elem.addEventListener('click', onPreviousPageClick); } - tabContent.querySelector('.btnShuffle').classList.toggle('hide', result.TotalRecordCount < 1); + tabContent.querySelector('.btnShuffle')?.classList.toggle('hide', result.TotalRecordCount < 1); isLoading = false; loading.hide(); @@ -258,7 +258,7 @@ export default function (view, params, tabContent, options) { itemsContainer.refreshItems(); }); - tabElement.querySelector('.btnShuffle').addEventListener('click', shuffle); + tabElement.querySelector('.btnShuffle')?.addEventListener('click', shuffle); }; let itemsContainer = tabContent.querySelector('.itemsContainer'); From df46418cb227a76899bc310a0efb88ff8cf7a22b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luk=C3=A1=C5=A1=20Kucharczyk?= Date: Thu, 25 May 2023 13:03:56 +0000 Subject: [PATCH 26/56] Translated using Weblate (Czech) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/cs/ --- src/strings/cs.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/strings/cs.json b/src/strings/cs.json index 2a8b3adcfb..ecc035eeb8 100644 --- a/src/strings/cs.json +++ b/src/strings/cs.json @@ -1729,5 +1729,8 @@ "MenuClose": "Zavřít nabídku", "UserMenu": "Uživatelská nabídka", "Studio": "Studio", - "AllowCollectionManagement": "Povolit tomuto uživateli spravovat kolekce" + "AllowCollectionManagement": "Povolit tomuto uživateli spravovat kolekce", + "EnableAudioNormalizationHelp": "Normalizace hlasitosti udržuje průměrnou hlasitost na požadované úrovni (-18 dB) přidáním konstantního zisku.", + "EnableAudioNormalization": "Normalizace hlasitosti", + "LabelEnableLUFSScan": "Povolit skenování LUFS" } From 91255d8e424bd7d6ae23c6cc06c5cecc98b4c9cf Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 25 May 2023 19:44:43 +0000 Subject: [PATCH 27/56] Update github/codeql-action action to v2.3.5 --- .github/workflows/codeql-analysis.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index 8d5bff612a..1415f6f867 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml @@ -21,11 +21,11 @@ jobs: - name: Checkout repository uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Initialize CodeQL - uses: github/codeql-action/init@f0e3dfb30302f8a0881bb509b044e0de4f6ef589 # v2.3.4 + uses: github/codeql-action/init@0225834cc549ee0ca93cb085b92954821a145866 # v2.3.5 with: languages: ${{ matrix.language }} queries: +security-extended - name: Autobuild - uses: github/codeql-action/autobuild@f0e3dfb30302f8a0881bb509b044e0de4f6ef589 # v2.3.4 + uses: github/codeql-action/autobuild@0225834cc549ee0ca93cb085b92954821a145866 # v2.3.5 - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@f0e3dfb30302f8a0881bb509b044e0de4f6ef589 # v2.3.4 + uses: github/codeql-action/analyze@0225834cc549ee0ca93cb085b92954821a145866 # v2.3.5 From 672151ed234e42b712d9dc5e5b5ca3ed5813eac4 Mon Sep 17 00:00:00 2001 From: blob03 Date: Thu, 25 May 2023 18:23:56 +0000 Subject: [PATCH 28/56] Translated using Weblate (French) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/fr/ --- src/strings/fr.json | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/strings/fr.json b/src/strings/fr.json index a69102ebea..1c643a321d 100644 --- a/src/strings/fr.json +++ b/src/strings/fr.json @@ -1729,5 +1729,9 @@ "MenuClose": "Fermer le menu", "UserMenu": "Menu utilisateur", "Studio": "Studio", - "AllowCollectionManagement": "Autoriser cet utilisateur à gérer les collections" + "AllowCollectionManagement": "Autoriser cet utilisateur à gérer les collections", + "EnableAudioNormalizationHelp": "La normalisation audio ajoutera un gain constant pour maintenir la moyenne au niveau souhaité (-18dB).", + "EnableAudioNormalization": "Normalisation audio", + "LabelEnableLUFSScan": "Activer l’analyse LUFS", + "LabelEnableLUFSScanHelp": "Activer l’analyse LUFS pour la musique (cela prendra plus de temps et de ressources)." } From 84ec052625844387539b1f2802b4fdae2869c68c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=9A=87=E7=94=AB=E6=9C=9D=E4=BA=91?= Date: Fri, 26 May 2023 05:56:41 +0000 Subject: [PATCH 29/56] Translated using Weblate (Chinese (Simplified)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/zh_Hans/ --- src/strings/zh-cn.json | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/strings/zh-cn.json b/src/strings/zh-cn.json index 7feaa7e1a5..2bc2f192a5 100644 --- a/src/strings/zh-cn.json +++ b/src/strings/zh-cn.json @@ -1729,5 +1729,9 @@ "MenuClose": "关闭菜单", "UserMenu": "用户菜单", "Studio": "广播", - "AllowCollectionManagement": "允许该用户管理收藏夹" + "AllowCollectionManagement": "允许该用户管理收藏夹", + "EnableAudioNormalizationHelp": "音频标准化将添加一个恒定的增益,以保持平均音量在所需的级别(-18dB)。", + "EnableAudioNormalization": "音频标准化", + "LabelEnableLUFSScan": "启用 LUFS 扫描", + "LabelEnableLUFSScanHelp": "启用音乐的LUFS扫描(这将需要更长时间和更多资源)。" } From 9c281a066a30029ae8107677b66a3e3074d3dd86 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luk=C3=A1=C5=A1=20Kucharczyk?= Date: Fri, 26 May 2023 11:35:05 +0000 Subject: [PATCH 30/56] Translated using Weblate (Czech) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/cs/ --- src/strings/cs.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/cs.json b/src/strings/cs.json index ecc035eeb8..c6682c07a3 100644 --- a/src/strings/cs.json +++ b/src/strings/cs.json @@ -1732,5 +1732,6 @@ "AllowCollectionManagement": "Povolit tomuto uživateli spravovat kolekce", "EnableAudioNormalizationHelp": "Normalizace hlasitosti udržuje průměrnou hlasitost na požadované úrovni (-18 dB) přidáním konstantního zisku.", "EnableAudioNormalization": "Normalizace hlasitosti", - "LabelEnableLUFSScan": "Povolit skenování LUFS" + "LabelEnableLUFSScan": "Povolit skenování LUFS", + "LabelEnableLUFSScanHelp": "Povolit tvorbu informací LUFS při skenování hudby. Prodlužuje skenování a je náročnější na výkon." } From c5f115c5c25e1fb986ec014c78c4c7172a2a555c Mon Sep 17 00:00:00 2001 From: Oskari Lavinto Date: Fri, 26 May 2023 12:25:45 +0000 Subject: [PATCH 31/56] Translated using Weblate (Finnish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/fi/ --- src/strings/fi.json | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/strings/fi.json b/src/strings/fi.json index 125a4a8265..0c8a4ee6c6 100644 --- a/src/strings/fi.json +++ b/src/strings/fi.json @@ -1727,5 +1727,9 @@ "MenuClose": "Sulje valikko", "UserMenu": "Käyttäjä-valikko", "Studio": "Studio", - "AllowCollectionManagement": "Salli tämän käyttäjän hallita kokoelmia" + "AllowCollectionManagement": "Salli tämän käyttäjän hallita kokoelmia", + "EnableAudioNormalizationHelp": "Äänen normalisointi asettaa äänelle kiinteän vahvistuksen keskivoimakkuuden vakiotasolla (-18 dB).", + "EnableAudioNormalization": "Äänen normalisointi", + "LabelEnableLUFSScan": "Suorita LUFS-tarkistus", + "LabelEnableLUFSScanHelp": "Käytä musiikin LUFS-tarkistusta (tämä vaatii enemmän aikaa ja resurseja)." } From dd7bd98b4c6fabd8dadb470a7ce64746f33b5611 Mon Sep 17 00:00:00 2001 From: erikasne6152 Date: Fri, 26 May 2023 11:35:11 +0000 Subject: [PATCH 32/56] Translated using Weblate (Lithuanian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/lt/ --- src/strings/lt-lt.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/strings/lt-lt.json b/src/strings/lt-lt.json index 965bf34ee9..d5a08fa374 100644 --- a/src/strings/lt-lt.json +++ b/src/strings/lt-lt.json @@ -34,7 +34,7 @@ "CancelRecording": "Atšaukti įrašymą", "CancelSeries": "Atšaukti laidą", "Categories": "Kategorijos", - "ChannelAccessHelp": "Pasirinkite kanalus, kuriuos norite dalintis su šiuo vartotoju. Administratoriai galės redaguoti visus kanalus per metaduomenų valdymą.", + "ChannelAccessHelp": "Pasirinkite kanalus, kuriuos norite dalintis su šiuo vartotoju. Administratoriai galės redaguoti visus kanalus naudojantis metaduomenų valdymą.", "ChannelNameOnly": "Kanalas tik {0}", "ChannelNumber": "Kanalo numeris", "Composer": "Kompozitorius", From dc44ed6b2c8cf85e692c8b70e4598b2d3c869bc5 Mon Sep 17 00:00:00 2001 From: pranelio Date: Fri, 26 May 2023 11:27:32 +0000 Subject: [PATCH 33/56] Translated using Weblate (Lithuanian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/lt/ --- src/strings/lt-lt.json | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/src/strings/lt-lt.json b/src/strings/lt-lt.json index d5a08fa374..d1f9e11bd6 100644 --- a/src/strings/lt-lt.json +++ b/src/strings/lt-lt.json @@ -5,7 +5,7 @@ "AddToPlaylist": "Pridėti į grojaraštį", "AdditionalNotificationServices": "Naršykite įskiepių katalogą ir įsidiekite papildomų pranešimų paslaugų.", "AllChannels": "Visi kanalai", - "AllEpisodes": "Visas serijas", + "AllEpisodes": "Visos serijos", "Anytime": "Bet kada", "AroundTime": "Maždaug {0}", "AsManyAsPossible": "Kiek įmanoma", @@ -329,9 +329,9 @@ "OptionWeekly": "Savaitinis", "OriginalAirDateValue": "Pirmo eterio data: {0}", "Overview": "Apžvalga", - "PackageInstallCancelled": "{0} įdiegimas atšauktas.", - "PackageInstallCompleted": "{0} įdiegimas baigtas.", - "PackageInstallFailed": "{0} įdiegimas nepavyko.", + "PackageInstallCancelled": "{0} (versija {1}) įdiegimas atšauktas.", + "PackageInstallCompleted": "{0} (versija {1}) įdiegimas baigtas.", + "PackageInstallFailed": "{0} (versija {1}) įdiegimas nepavyko.", "ParentalRating": "Tėvų reitingas", "People": "Žmonės", "PlaceFavoriteChannelsAtBeginning": "Mėgstamiausius kanalus į pradžią", @@ -840,7 +840,7 @@ "ButtonSplit": "Skirstyti", "AskAdminToCreateLibrary": "Paprašykite administratoriaus sukurti biblioteką.", "Album": "Albumas", - "ButtonSyncPlay": "SyncPlay", + "ButtonSyncPlay": "\"SyncPlay\"", "MusicVideos": "Muzikiniai vaizdo įrašai", "TagsValue": "Žymės: {0}", "AddToFavorites": "Pridėti į mėgstamiausius", @@ -978,7 +978,7 @@ "ButtonSpace": "Tarpas", "ButtonActivate": "Aktyvuoti", "AllowFfmpegThrottlingHelp": "Kai perkodavimas arba pakartotinis atkodavimas (Remux) yra pakankamai toli nuo dabartinės atkūrimo pozicijos, pristabdykite procesą, kad jis sunaudotų mažiau išteklių. Tai naudingiausia žiūrint be dažno persukimo. Išjunkite šią funkciją, jei kyla atkūrimo problemų.", - "AllowTonemappingHelp": "Tonų atvaizdavimas gali pakeisti vaizdo įrašo dinaminį diapazoną iš HDR į SDR, išlaikant vaizdo detales ir spalvas, kurios yra labai svarbi informacija, kad būtų galima atvaizduoti pradinę sceną. Šiuo metu veikia tik su HDR10 arba HLG vaizdo įrašais. Tam reikia atitinkamos \"OpenCL\" arba CUDA paleidimo programos.", + "AllowTonemappingHelp": "Tonų atvaizdavimas gali pakeisti vaizdo įrašo dinaminį diapazoną iš HDR į SDR, išlaikant vaizdo detales ir spalvas, kurios yra labai svarbi informacija, kad būtų galima atvaizduoti pradinę sceną. Šiuo metu veikia tik su 10 bitų HDR10, HLG ir DoVi vaizdo įrašais. Tam reikia atitinkamos \"OpenCL\" arba CUDA paleidimo programos.", "Arranger": "Organizatorius", "EnableBlurHashHelp": "Vaizdai, kurie vis dar įkeliami, bus rodomi su unikalia rezervuota vieta.", "EnableDetailsBannerHelp": "Rodyti reklamjuostės vaizdą elemento išsamios informacijos puslapio viršuje.", @@ -1131,5 +1131,11 @@ "LabelDateAddedBehaviorHelp": "Jei yra metaduomenų reikšmė, ji visada bus naudojama prieš bet kurią iš šių parinkčių.", "LabelDefaultUserHelp": "Nustatykite, kuri naudotojo biblioteka turėtų būti rodoma prijungtuose įrenginiuose. Tai galima pakeisti kiekvienam įrenginiui naudojant profilius.", "LabelDeinterlaceMethod": "Pertempimo panaikinimo metodas", - "LabelDownMixAudioScaleHelp": "Jei reikšmė lygi vienetui, bus išsaugotas originalus garsumas." + "LabelDownMixAudioScaleHelp": "Jei reikšmė lygi vienetui, bus išsaugotas originalus garsumas.", + "LabelLibraryPageSize": "Mediatekos puslapio dydis", + "LabelKodiMetadataSaveImagePaths": "Išsaugoti atvaizdų nuorodas NFO failuose", + "EnableAudioNormalization": "Garso normalizacija", + "LabelEnableAudioVbr": "Įjungti VBR garso kodavimą", + "HeaderPerformance": "Našumas", + "AllowCollectionManagement": "Leisti šiam vartotojui redaguoti kolekcijas" } From 0f9c91cc9a622d86213b765bdf3291421fe056bd Mon Sep 17 00:00:00 2001 From: marty Date: Fri, 26 May 2023 11:35:31 +0000 Subject: [PATCH 34/56] Translated using Weblate (Lithuanian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/lt/ --- src/strings/lt-lt.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/strings/lt-lt.json b/src/strings/lt-lt.json index d1f9e11bd6..8024cfadb6 100644 --- a/src/strings/lt-lt.json +++ b/src/strings/lt-lt.json @@ -72,14 +72,14 @@ "HeaderAddToPlaylist": "Pridėti į grojaraštį", "HeaderAdditionalParts": "Papildomos dalys", "HeaderCancelRecording": "Atšaukti įrašymą", - "HeaderCancelSeries": "Atšaukti laidą", + "HeaderCancelSeries": "Atšaukti serialą", "HeaderContinueWatching": "Žiūrėti toliau", "HeaderCustomDlnaProfiles": "Kiti profiliai", "HeaderDeleteItem": "Ištrinti elementą", "HeaderDeleteItems": "Ištrinti elementus", "HeaderDeviceAccess": "Įrenginio prieiga", "HeaderEasyPinCode": "Lengvas Pin kodas", - "HeaderEditImages": "Redaguoti paveikslus", + "HeaderEditImages": "Redaguoti atvaizdus", "HeaderEnabledFields": "Įjungti laukeliai", "HeaderEnabledFieldsHelp": "Nuimkite varnelę nuo lauko kad jį užrakinti ir neleisti keisti jo duomenų.", "HeaderFeatureAccess": "Prieiga prie funkcijų", From bf24bcd4ba75747f71b527aff8de5bf4e4363c37 Mon Sep 17 00:00:00 2001 From: stanol Date: Fri, 26 May 2023 12:31:59 +0000 Subject: [PATCH 35/56] Translated using Weblate (Ukrainian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/uk/ --- src/strings/uk.json | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/strings/uk.json b/src/strings/uk.json index a67607dc62..94a549eb3f 100644 --- a/src/strings/uk.json +++ b/src/strings/uk.json @@ -1726,5 +1726,9 @@ "MenuClose": "Закрити меню", "UserMenu": "Меню користувача", "Studio": "Студія", - "AllowCollectionManagement": "Дозволити цьому користувачеві керувати колекціями" + "AllowCollectionManagement": "Дозволити цьому користувачеві керувати колекціями", + "EnableAudioNormalizationHelp": "Нормалізація звуку додасть постійний коефіцієнт підсилення, щоб утримати середній рівень на потрібному рівні (-18 дБ).", + "LabelEnableLUFSScanHelp": "Увімкніть сканування LUFS для пошуку музики (це займе більше часу і ресурсів).", + "EnableAudioNormalization": "Нормалізація звуку", + "LabelEnableLUFSScan": "Увімкнути сканування LUFS" } From e4ca73afd7ea70032d17eb51073b27596b1f968f Mon Sep 17 00:00:00 2001 From: pranelio Date: Fri, 26 May 2023 14:54:01 +0000 Subject: [PATCH 36/56] Translated using Weblate (Lithuanian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/lt/ --- src/strings/lt-lt.json | 29 +++++++++++++++++++++++++++-- 1 file changed, 27 insertions(+), 2 deletions(-) diff --git a/src/strings/lt-lt.json b/src/strings/lt-lt.json index 8024cfadb6..16694a71ed 100644 --- a/src/strings/lt-lt.json +++ b/src/strings/lt-lt.json @@ -1049,7 +1049,7 @@ "PinCodeResetConfirmation": "Ar tikrai norite iš naujo nustatyti \"Easy PIN\" kodą?", "LabelScreensaver": "Ekrano užsklanda", "LabelAutoDiscoveryTracingHelp": "Kai ši funkcija įjungta, automatinio aptikimo prievadu gauti paketai bus registruojami.", - "LabelBaseUrlHelp": "", + "LabelBaseUrlHelp": "Pridėti subdirektorija prie serverio adreso. Pavyzdžiui: http://example.com/<baseurl>", "LabelBindToLocalNetworkAddressHelp": "Pakeiskite vietinį HTTP serverio IP adresą. Jei paliekama tuščia, serveris bus susietas su visais prieinamais adresais. Keičiant šią reikšmę reikia iš naujo paleisti serverį.", "LabelEnableHttpsHelp": "Klausykitės sukonfigūruotame HTTPS prievade. Taip pat turi būti pateiktas galiojantis sertifikatas, kad tai įsigaliotų.", "LabelExtractChaptersDuringLibraryScanHelp": "Generuoti skyrių vaizdus, kai bibliotekos skenavimo metu importuojami vaizdo įrašai. Priešingu atveju jie bus išskirti atliekant suplanuotą skyrių vaizdų užduotį, todėl įprastas bibliotekos skenavimas bus baigtas greičiau.", @@ -1137,5 +1137,30 @@ "EnableAudioNormalization": "Garso normalizacija", "LabelEnableAudioVbr": "Įjungti VBR garso kodavimą", "HeaderPerformance": "Našumas", - "AllowCollectionManagement": "Leisti šiam vartotojui redaguoti kolekcijas" + "AllowCollectionManagement": "Leisti šiam vartotojui redaguoti kolekcijas", + "EnableAudioNormalizationHelp": "Garso normalizavimas pridės stabilų daugiklį kad palaikyti vidurkį ties norimu lygiu (-18dB).", + "LabelKnownProxies": "Žinomi \"proxy\" serveriai", + "LabelKidsCategories": "Kategorijos vaikams", + "LabelKodiMetadataUser": "Išsaugoti vartotojo peržiūrų informaciją NFO failuose", + "LabelLanNetworks": "LAN tinklai", + "LabelMaxDaysForNextUp": "Max dienų sekančių eilėje", + "LabelLineup": "Rikiuotė", + "LabelLoginDisclaimer": "Prisijungimo išsižadėjimas", + "LabelMaxAudiobookResume": "Audioknygos likęs pratęsimo laikas", + "LabelMaxMuxingQueueSize": "Maksimalus multipleksavimo eilės dydis", + "LabelLibraryPageSizeHelp": "Nustatyti rodomų elementų kiekį bibliotekos puslapyje. Įrašius 0 bus išjungti puslapiai.", + "LabelLoginDisclaimerHelp": "Žinutė kuri bus rodoma prisijungimo puslapio apačioje.", + "LabelKodiMetadataEnablePathSubstitution": "Įjungti kelio pakeitimą", + "LabelKodiMetadataUserHelp": "Išsaugoti peržiūrų informaciją NFO failuose, kad kitos aplikacijos galėtų naudotis.", + "LabelKodiMetadataSaveImagePathsHelp": "Tai rekomenduojama jei nuotraukų failų pavadinimai neatitinka Kodi rekomenduojamų nuostatų.", + "LabelMaxAudiobookResumeHelp": "Turinys skaitysis pilnai peržiūrėtas, jei bus sustabdytas kai likęs laikas bus mažesnis už šią vertę.", + "LabelMaxDaysForNextUpHelp": "Nustatyti maksimalų dienų kiekį kiek TV Laida liks sekančių eilėje jos neperžiūrėjus.", + "LabelIsForced": "Priverstas", + "LabelEnableLUFSScan": "Įjungti LUFS skanavimą", + "LabelEnableLUFSScanHelp": "Įjungti LUFS skanavimą muzikai (Užtruks ilgiau ir naudos daugiau resursų).", + "LabelImportOnlyFavoriteChannels": "Apriboti kanalus pažymėtus kaip mėgstamiausi", + "LabelMaxVideoResolution": "Maksimali leistina video transkodavimo resoliucija", + "LabelEnableAudioVbrHelp": "Kintama bitų sparta siūlo geresnę kokybę lyginant su vidutine bitų sparta, bet retais atvejais gali sukelti krovimo ir palaikymo problemas.", + "LabelKodiMetadataEnablePathSubstitutionHelp": "Įjungti kelio pakeitimą nuotraukoms naudojant serverio kelio pakeitimo nustatymus.", + "LabelKodiMetadataDateFormatHelp": "Visos datos iš NFO failų bus ištraukiamos šiuo formatu." } From 6cd37a1e5fe15e6f5c3107e53a2c74b77091149c Mon Sep 17 00:00:00 2001 From: brazerUK Date: Sat, 27 May 2023 09:20:58 +0000 Subject: [PATCH 37/56] Translated using Weblate (Afrikaans) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/af/ --- src/strings/af.json | 72 ++++++++++++++++++++++++++++++++++++++------- 1 file changed, 61 insertions(+), 11 deletions(-) diff --git a/src/strings/af.json b/src/strings/af.json index c7d2e702ec..0bf7a2c5fc 100644 --- a/src/strings/af.json +++ b/src/strings/af.json @@ -7,7 +7,7 @@ "AsManyAsPossible": "So veel moontlik", "Artists": "Kunstenare", "Art": "Kuns", - "AroundTime": "Ongeveer", + "AroundTime": "Ongeveer {0}", "Anytime": "Enige tyd", "AnyLanguage": "Enige Taal", "AlwaysPlaySubtitlesHelp": "Subtitels wat ooreenstem met taal voorkeur sal gelaai work ongeag oudio taal.", @@ -144,7 +144,7 @@ "ButtonWebsite": "Webtuiste", "ButtonUseQuickConnect": "Gebruik Vinnige Konneksie", "ButtonUninstall": "Verwyder", - "ButtonTrailer": "Voorskou", + "ButtonTrailer": "Lokprent", "ButtonTogglePlaylist": "Snitlys", "ButtonSubmit": "Dien In", "ButtonSplit": "Verdeel", @@ -229,10 +229,10 @@ "Ended": "Geëindig", "EnableDetailsBannerHelp": "Wys 'n banier-beeld bo aan die item besonderhede blad.", "EnableDetailsBanner": "Besonderhede Banier", - "EnableThemeVideosHelp": "Speel tema-videos in die agtergrond terwyl deur die versameling geblaai word.", - "EnableThemeSongsHelp": "Speel tema-liedjies in die agtergrond terwyl daur die versameling geblaai word.", - "EnableStreamLoopingHelp": "Aktiveer hierdie as die lewendige stroom net 'n paar sekondes data bevat en gereeld versoek moet word. Om hierdie te aktiveer wanneer dit nie nodig is nie kan probleme veroorsaak.", - "EnableStreamLooping": "Auto-lus lewendige strome", + "EnableThemeVideosHelp": "Speel temavideo's in die agtergrond terwyl jy deur die biblioteek blaai.", + "EnableThemeSongsHelp": "Speel die temaliedjies in die agtergrond terwyl jy deur die biblioteek blaai.", + "EnableStreamLoopingHelp": "Aktiveer die opsie as die regstreekse strome slegs 'n paar sekondes se data bevat en voortdurend aangevra moet word. Om dit te aktiveer wanneer dit nie nodig is nie, kan probleme veroorsaak.", + "EnableStreamLooping": "Outo-lus regstreekse strome", "EnableQuickConnect": "Aktiveer vinnige-inskakel op hierdie bediener", "EnablePhotosHelp": "Beelde sal opgetel en gewys word saam met ander media leêrs.", "EnablePhotos": "Wys fotos", @@ -508,7 +508,7 @@ "DashboardServerName": "Bediener: {0}", "DashboardOperatingSystem": "Bedryfstelsel: {0}", "DashboardArchitecture": "Argitektuur: {0}", - "ColorPrimaries": "Kleur primêre", + "ColorPrimaries": "Primêre kleure", "ClearQueue": "Maak waglys skoon", "ButtonPlayer": "Speler", "ButtonCast": "Plaas media", @@ -540,14 +540,14 @@ "HeaderAddUpdateSubtitle": "Voeg ondertitel by / werk dit op", "Framerate": "Raamkoers", "Filter": "Filtreerder", - "EnableTonemapping": "Aktiveer toonkaarting", + "EnableTonemapping": "Aktiveer kleur skakering kartering", "EnableFasterAnimationsHelp": "Gebruik vinniger animasies en oorgange.", "EnableFasterAnimations": "Vinniger animasies", "EnableBlurHashHelp": "Beelde wat nog gelaai word, sal met 'n unieke plekhouer vertoon word.", - "Depressed": "Depressief", + "Depressed": "Ingedrukte", "Bwdif": "BWDIF", "ButtonSyncPlay": "Sinkroniseer Speler", - "AllowTonemappingHelp": "Toonkartering kan die dinamiese omvang van 'n video van HDR na SDR verander, terwyl beelddetails en kleure behoue bly, wat baie belangrike inligting is om die oorspronklike toneel voor te stel. Werk tans slegs wanneer video's gekodeer word met ingeboude HDR10- of HLG-metadata. As die afspeel nie glad is nie of misluk, oorweeg dit om die ooreenstemmende hardeware-dekodeerder uit te skakel.", + "AllowTonemappingHelp": "Die kartering van kleurskakering kan die dinamiese omvang van 'n video van HDR na SDR verander, terwyl die detail van die beeld en kleur behoue bly, wat baie belangrike inligting is om die oorspronklike toneel voor te stel. Werk tans slegs wanneer video's gekodeer word met ingeboude 10bit HDR10, HLG en DoVi-metadata. Die terugspeel benodig die ooreenkomstige OpenCL of CUDA looptyd.", "LabelFolder": "Vouer", "LabelFinish": "Voltooi", "LabelFileOrUrl": "Lêer of URL", @@ -812,5 +812,55 @@ "ButtonExitApp": "Verlaat Program", "ButtonClose": "Maak toe", "ButtonBackspace": "Terug", - "AddToFavorites": "Voeg by gunstelinge" + "AddToFavorites": "Voeg by gunstelinge", + "EnableAudioNormalizationHelp": "Oudionormalisering sal 'n konstante versterking byvoeg om die gemiddeld op die verlangde vlak te hou (-18dB).", + "EnableAudioNormalization": "Oudionormalisering", + "RefreshQueued": "Herlaai in waglys geplaas.", + "LabelTimeLimitHours": "Tydsbeperking (ure)", + "LabelMaxMuxingQueueSize": "Maksimum muxing waglys-grootte", + "LabelModelName": "Model naam", + "LabelPasswordRecoveryPinCode": "PIN kode", + "LabelSelectFolderGroups": "Groepeer die inhoud outomaties uit die volgende lêers na 'Flieks', 'Musiek' en 'TV'", + "LabelSyncPlaySettingsExtraTimeOffsetHelp": "Pas tydsverstelling verplasing aan (in ms) met geselekteerde toestel vir tydsinkronisering. Pas versigtig aan.", + "EnableCardLayout": "Wys kaartuitleg", + "LabelLoginDisclaimer": "Teken in vrywaring", + "LabelManufacturer": "Vervaardiger", + "LabelModelUrl": "Model-URL", + "None": "Geen", + "LabelMinAudiobookResumeHelp": "Titels word as ongespeel beskou as dit voor hierdie tyd gestop is.", + "DownloadAll": "Laai alles af", + "AllowCollectionManagement": "Laat hierdie gebruiker toe om versamelings te bestuur", + "EnableRewatchingNextUp": "Aktiveer kyk weer in Volgende", + "EnableRewatchingNextUpHelp": "Aktiveer die wys van reeds gekykte episodes in 'Volgende'-afdelings.", + "LabelMaxAudiobookResume": "Oudioboek oorblywende minute om te hervat", + "LabelModelNumber": "Model nommer", + "LabelAutomaticallyAddToCollectionHelp": "Wanneer ten minste 2 flieks dieselfde versamelingsnaam het, sal hulle outomaties by die versameling gevoeg word.", + "LabelSyncPlaySettingsMaxDelaySpeedToSyncHelp": "Maksimum terugspeelvertraging (in ms) waarna SkipToSync in plaas van SpeedToSync gebruik word.", + "LabelMaxDaysForNextUpHelp": "Stel die maksimum aantal dae wat 'n program in die 'Volgende'-lys moet bly sonder om dit te kyk.", + "LabelMaxDaysForNextUp": "Maksimum dae in 'Volgende'", + "LabelLogs": "Logs", + "LabelMaxChromecastBitrate": "Google Cast-stroomkwaliteit", + "LabelOpenclDeviceHelp": "Dit is die OpenCL-toestel wat vir skakeringkartering gebruik word. Die linkerkant van die kolletjie is die platformnommer, en die regterkant is die toestelnommer op die platform. Die verstekwaarde is 0.0. Die FFmpeg-toepassingslêer wat die OpenCL-hardewareversnellingsmetode bevat, word vereis.", + "LabelSlowResponseEnabled": "Teken 'n waarskuwingsboodskap aan as die bediener te traag was om te reageer", + "LabelSyncPlaySettingsSpeedToSyncDurationHelp": "Aantal millisekondes wat deur SpeedToSync gebruik word om afspeelposisie reg te stel.", + "MessageDownloadQueued": "Aflaai in waglys geplaas.", + "LabelLoginDisclaimerHelp": "'n Boodskap wat onderaan die aanmeldbladsy vertoon sal word.", + "LabelMatchType": "Pas tipe", + "LabelManufacturerUrl": "Vervaardiger-URL", + "LabelMaxAudiobookResumeHelp": "Titels word aanvaar as klaar gespeel as dit gestop word en die oorblywende tyd is minder as hierdie waarde.", + "LabelMaxBackdropsPerItem": "Maksimum aantal agtergronde per item", + "LabelMaxMuxingQueueSizeHelp": "Maksimum aantal pakkies wat opgehoop kan word terwyl daar gewag word vir alle strome om te inisialiseer. Probeer om dit te verhoog as jy steeds 'Too many packets buffered for output stream'-fout in FFmpeg-logboek sien. Die aanbevole waarde is 2048.", + "LabelMetadataSaversHelp": "Kies die lêerformate om te gebruik wanneer metadata gestoor word.", + "LabelModelDescription": "Model beskrywing", + "LabelMusicStreamingTranscodingBitrateHelp": "Spesifiseer die maksimum bissnelheid as musiek gestroom word.", + "LabelNumberOfGuideDaysHelp": "Die aflaai van meer dae se gidsdata bied die vermoë om verder vooruit te skeduleer en meer items te sien, maar dit sal ook langer neem om af te laai. Die outomatiese keuse kies op grond van die aantal kanale wat daar is.", + "LabelQuickConnectCode": "Vinnige verbinding kode", + "LabelRemoteClientBitrateLimit": "Internetstroom-bissnelheidlimiet (Mbps)", + "LabelSerialNumber": "Reeks nommer", + "LabelSlowResponseTime": "Tyd in ms waarna 'n reaksie as stadig beskou word", + "LabelSonyAggregationFlagsHelp": "Bepaal die inhoud van die 'aggregationFlags'-element in die 'urn:schemas-sonycom:av'-naamruimte.", + "LabelSyncPlayAccess": "SyncPlay toegang", + "LabelSyncPlaySettingsMinDelaySpeedToSyncHelp": "Minimum terugspeelvertraging (in ms) waarna SpeedToSync probeer om terugspeelposisie reg te stel.", + "LabelSyncPlaySettingsMinDelaySkipToSyncHelp": "Minimum terugspeelvertraging (in ms) waarna SkipToSync probeer om terugspeelposisie reg te stel.", + "LabelLockItemToPreventChanges": "Sluit hierdie item om toekomstige veranderinge te voorkom" } From e0b51c4874c8f3d081d0095a3b4ca03e88272ecb Mon Sep 17 00:00:00 2001 From: RJS Date: Sat, 27 May 2023 14:32:38 +0000 Subject: [PATCH 38/56] Translated using Weblate (Latvian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/lv/ --- src/strings/lv.json | 34 +++++++++++++++++++++++++++++++++- 1 file changed, 33 insertions(+), 1 deletion(-) diff --git a/src/strings/lv.json b/src/strings/lv.json index 8c567c71a9..b52cf4056d 100644 --- a/src/strings/lv.json +++ b/src/strings/lv.json @@ -1351,5 +1351,37 @@ "LabelParallelImageEncodingLimit": "Paralēlas attēlu kodēšanas limits", "LabelParallelImageEncodingLimitHelp": "Maksimālais daudzums ar attēlu kodēšanas procesiem, kas drīkst darboties vienlaicīgi. Iestatot šo uz 0, limits automātiski tiks izvēlēts balstoties uz jūsu sistēmas specifikācijām.", "HeaderDummyChapter": "Nodaļu Attēli", - "EnableCardLayout": "Padarīt redzamu CardBox" + "EnableCardLayout": "Padarīt redzamu CardBox", + "MessageConfirmDeleteGuideProvider": "Vai esat pārliecināti, ka vēlaties izdzēst šo ceļveža pakalpojumu sniedzēju?", + "MessageForgotPasswordInNetworkRequired": "Lūdzu, mēģiniet vēlreiz savā mājas tīklā, lai uzsāktu paroles atiestatīšanas procesu.", + "MessageNoGenresAvailable": "Ļaujiet dažiem metadatu sniedzējiem iegūt žanrus no interneta.", + "MessagePluginInstallError": "Instalējot spraudni, notika kļūda.", + "MessageGetInstalledPluginsError": "Instalēto spraudņu saraksta iegūšanas laikā notika kļūda.", + "MessageNoNextUpItems": "Neviens netika atrasts. Sāciet skatīties savus raidījumus!", + "MessageNoTrailersFound": "Instalējiet treileru kanālu, lai uzlabotu savu filmu pieredzi, pievienojot interneta treileru bibliotēku.", + "EnableRewatchingNextUp": "Atkārtotas skatīšanas iespējošana sadaļā Nākamais", + "EnableAudioNormalizationHelp": "Audio normalizācija pievienos konstantu skaļuma pastiprinājumu, lai saglabātu vidējo skaļumu vēlamajā līmenī (-18dB).", + "EnableAudioNormalization": "Audio Normalizācija", + "LabelEnableLUFSScan": "Iespējot LUFS skenēšanu", + "LabelEnableLUFSScanHelp": "Iespējot LUFS skenēšanu mūzikai (Tas aizņems vairāk laika un resursu).", + "MessageNoItemsAvailable": "Pašlaik nav pieejams neviens vienums.", + "MessageNoCollectionsAvailable": "Kolekcijas ļauj izmantot personalizētas filmu, seriālu un albumu grupas. Noklikšķiniet uz pogas \"+\", lai sāktu veidot kolekcijas.", + "MessageNoRepositories": "Nav repozitoriju.", + "MessageReenableUser": "Skatiet zemāk, lai atkārtoti aktivizētu", + "MessageSyncPlayCreateGroupDenied": "Nepieciešama atļauja, lai izveidotu grupu.", + "MessageSyncPlayErrorAccessingGroups": "Piekļūstot grupu sarakstam, notika kļūda.", + "MessageSyncPlayErrorMissingSession": "Neizdevās iespējot SyncPlay! Trūkst sesija.", + "MessageRenameMediaFolder": "Pārdēvējot multivides bibliotēku, visi metadati tiks zaudēti, tāpēc rīkojieties piesardzīgi.", + "MenuOpen": "Atvērt Izvēlni", + "MenuClose": "Aizvērt Izvēlni", + "MessageNoFavoritesAvailable": "Pašlaik nav pieejami nekādi favorīti.", + "MessageImageTypeNotSelected": "Lūdzu, izvēlaties attēla veidu no nolaižamās izvēlnes.", + "MessageLeaveEmptyToInherit": "Atstājiet tukšu, lai mantotu iestatījumus no vecākā elementa vai globālās noklusējuma vērtības.", + "MessagePluginInstallDisclaimer": "Kopienas dalībnieku izveidoti spraudņi ir lielisks veids, kā uzlabot savu pieredzi, izmantojot papildu funkcijas un priekšrocības. Pirms instalēšanas ņemiet vērā to iespējamo ietekmi uz jūsu serveri, piemēram, ilgāku bibliotēkas skenēšanu, papildu fona apstrādi un sistēmas stabilitātes samazināšanos.", + "MessagePasswordResetForUsers": "Šādu lietotāju paroles ir atiestatītas. Tagad viņi var pierakstīties, izmantojot Easy PIN kodus, kas tika izmantoti atiestatīšanai.", + "MessagePluginInstalled": "Spraudnis tika veiksmīgi instalēts. Lai izmaiņas stātos spēkā, serveris ir jārestartē.", + "HeaderRecordingMetadataSaving": "Metadatu Ierakstīšana", + "AllowCollectionManagement": "Ļaut konkrētajam lietotājam pārvaldīt kolekciju", + "MediaInfoRefFrames": "Atskaites kadri", + "MessageDeleteTaskTrigger": "Vai esat pārliecināti, ka vēlaties izdzēst šo uzdevuma trigeri?" } From 187adf33ede4b06006616d884ec6103d93927c38 Mon Sep 17 00:00:00 2001 From: Nikita Panuhin Date: Sun, 28 May 2023 08:18:15 +0000 Subject: [PATCH 39/56] Translated using Weblate (Russian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ru/ --- src/strings/ru.json | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/src/strings/ru.json b/src/strings/ru.json index 9ee06d5e88..8e1e7efcea 100644 --- a/src/strings/ru.json +++ b/src/strings/ru.json @@ -1706,5 +1706,22 @@ "ResolutionMatchSource": "Соответствовать источнику", "MenuOpen": "Открыть Меню", "MenuClose": "Закрыть Меню", - "AllowCollectionManagement": "Разрешить этому пользователю управлять настройками коллекций" + "AllowCollectionManagement": "Разрешить этому пользователю управлять настройками коллекций", + "EnableAudioNormalization": "Нормализация звука", + "SubtitleGreen": "Зелёный", + "Featurette": "Короткометражка", + "Short": "Короткометражка", + "Studio": "Студия", + "SubtitleGray": "Серый", + "SubtitleBlack": "Чёрный", + "SubtitleCyan": "Циан", + "SubtitleWhite": "Белый", + "SubtitleRed": "Красный", + "SubtitleYellow": "Жёлтый", + "Select": "Выбрать", + "SubtitleBlue": "Синий", + "SecondarySubtitles": "Дополнительные субтитры", + "SubtitleLightGray": "Светло-серый", + "UserMenu": "Меню пользователя", + "SubtitleMagenta": "Пурпурный" } From 640adade6349c5708a16733d19eefd9db9753c51 Mon Sep 17 00:00:00 2001 From: brazerUK Date: Sun, 28 May 2023 13:43:22 +0000 Subject: [PATCH 40/56] Translated using Weblate (Afrikaans) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/af/ --- src/strings/af.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/strings/af.json b/src/strings/af.json index 0bf7a2c5fc..462b045265 100644 --- a/src/strings/af.json +++ b/src/strings/af.json @@ -540,14 +540,14 @@ "HeaderAddUpdateSubtitle": "Voeg ondertitel by / werk dit op", "Framerate": "Raamkoers", "Filter": "Filtreerder", - "EnableTonemapping": "Aktiveer kleur skakering kartering", + "EnableTonemapping": "Aktiveer kleurtoon kartering", "EnableFasterAnimationsHelp": "Gebruik vinniger animasies en oorgange.", "EnableFasterAnimations": "Vinniger animasies", "EnableBlurHashHelp": "Beelde wat nog gelaai word, sal met 'n unieke plekhouer vertoon word.", "Depressed": "Ingedrukte", "Bwdif": "BWDIF", "ButtonSyncPlay": "Sinkroniseer Speler", - "AllowTonemappingHelp": "Die kartering van kleurskakering kan die dinamiese omvang van 'n video van HDR na SDR verander, terwyl die detail van die beeld en kleur behoue bly, wat baie belangrike inligting is om die oorspronklike toneel voor te stel. Werk tans slegs wanneer video's gekodeer word met ingeboude 10bit HDR10, HLG en DoVi-metadata. Die terugspeel benodig die ooreenkomstige OpenCL of CUDA looptyd.", + "AllowTonemappingHelp": "Die kartering van kleurtoon kan die dinamiese omvang van 'n video van HDR na SDR verander, terwyl die detail van die beeld en kleur behoue bly, wat baie belangrike inligting is om die oorspronklike toneel voor te stel. Werk tans slegs wanneer video's gekodeer word met ingeboude 10bit HDR10, HLG en DoVi-metadata. Die terugspeel benodig die ooreenkomstige OpenCL of CUDA looptyd.", "LabelFolder": "Vouer", "LabelFinish": "Voltooi", "LabelFileOrUrl": "Lêer of URL", @@ -840,7 +840,7 @@ "LabelMaxDaysForNextUp": "Maksimum dae in 'Volgende'", "LabelLogs": "Logs", "LabelMaxChromecastBitrate": "Google Cast-stroomkwaliteit", - "LabelOpenclDeviceHelp": "Dit is die OpenCL-toestel wat vir skakeringkartering gebruik word. Die linkerkant van die kolletjie is die platformnommer, en die regterkant is die toestelnommer op die platform. Die verstekwaarde is 0.0. Die FFmpeg-toepassingslêer wat die OpenCL-hardewareversnellingsmetode bevat, word vereis.", + "LabelOpenclDeviceHelp": "Dit is die OpenCL-toestel wat vir kleurtoon kartering gebruik word. Die linkerkant van die kolletjie is die platformnommer, en die regterkant is die toestelnommer op die platform. Die verstekwaarde is 0.0. Die FFmpeg-toepassingslêer wat die OpenCL-hardewareversnellingsmetode bevat, word vereis.", "LabelSlowResponseEnabled": "Teken 'n waarskuwingsboodskap aan as die bediener te traag was om te reageer", "LabelSyncPlaySettingsSpeedToSyncDurationHelp": "Aantal millisekondes wat deur SpeedToSync gebruik word om afspeelposisie reg te stel.", "MessageDownloadQueued": "Aflaai in waglys geplaas.", From c89fcc6bf0969b24a7d91d106dc86ab4362c7310 Mon Sep 17 00:00:00 2001 From: Troja Date: Mon, 29 May 2023 05:46:39 +0000 Subject: [PATCH 41/56] Translated using Weblate (Belarusian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/be/ --- src/strings/be-by.json | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/strings/be-by.json b/src/strings/be-by.json index d00ed700a3..5e8b80f924 100644 --- a/src/strings/be-by.json +++ b/src/strings/be-by.json @@ -1710,5 +1710,14 @@ "LabelEnableAudioVbrHelp": "Пераменны бітрэйт забяспечвае лепшае суадносіны якасці да сярэдняга, але ў некаторых рэдкіх выпадках можа выклікаць праблемы з буферызацыяй і сумяшчальнасцю.", "TonemappingModeHelp": "Выберыце рэжым танальнага адлюстравання. Калі вы бачыце, што блікі блякнуць, паспрабуйце пераключыцца ў рэжым RGB.", "LabelTonemappingMode": "Рэжым танальнага адлюстравання", - "Select": "Выбраць" + "Select": "Выбраць", + "EnableAudioNormalizationHelp": "Нармалізацыя гуку дадасць пастаяннае ўзмацненне, каб падтрымліваць сярэдняе значэнне на жаданым узроўні (-18 дБ).", + "EnableAudioNormalization": "Нармалізацыя гуку", + "LabelEnableLUFSScan": "Уключыць сканаванне LUFS", + "LabelEnableLUFSScanHelp": "Уключыце сканаванне LUFS на наяўнасць музыкі (гэта зойме больш часу і рэсурсаў).", + "Studio": "Студыя", + "MenuOpen": "Адкрыць меню", + "MenuClose": "Зачыніць меню", + "AllowCollectionManagement": "Дазволіць гэтаму карыстальніку кіраваць калекцыямі", + "UserMenu": "Меню карыстальніка" } From f5896ad97952cb96400ed7b9bb066bce2517f1d2 Mon Sep 17 00:00:00 2001 From: Andi Chandler Date: Tue, 30 May 2023 09:47:49 +0000 Subject: [PATCH 42/56] Translated using Weblate (English (United Kingdom)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/en_GB/ --- src/strings/en-gb.json | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/strings/en-gb.json b/src/strings/en-gb.json index 97c17e791c..3c68fe5b54 100644 --- a/src/strings/en-gb.json +++ b/src/strings/en-gb.json @@ -1727,5 +1727,11 @@ "TonemappingModeHelp": "Select the tone mapping mode. If you experience blown out highlights try switching to the RGB mode.", "UserMenu": "User Menu", "MenuOpen": "Open Menu", - "MenuClose": "Close Menu" + "MenuClose": "Close Menu", + "Studio": "Studio", + "EnableAudioNormalizationHelp": "Audio normalisation will add a constant gain to keep the average at a desired level (-18dB).", + "EnableAudioNormalization": "Audio Normalisation", + "LabelEnableLUFSScan": "Enable LUFS scan", + "LabelEnableLUFSScanHelp": "Enable LUFS scan for music (This will take longer and more resources).", + "AllowCollectionManagement": "Allow this user to manage collections" } From daf6b448795e56bd7eb6604e8ffa2c28e08ae5af Mon Sep 17 00:00:00 2001 From: Marcinbar Date: Tue, 30 May 2023 09:04:17 +0000 Subject: [PATCH 43/56] Translated using Weblate (Polish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/pl/ --- src/strings/pl.json | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/strings/pl.json b/src/strings/pl.json index 4112d6e8af..8e60c72d6c 100644 --- a/src/strings/pl.json +++ b/src/strings/pl.json @@ -1729,5 +1729,9 @@ "MenuClose": "Zamknij Menu", "UserMenu": "Menu Użytkownika", "AllowCollectionManagement": "Zezwól temu użytkownikowi na zarządzanie kolekcjami", - "Studio": "Wytwórnia" + "Studio": "Wytwórnia", + "EnableAudioNormalizationHelp": "Normalizacja dźwięku doda stałe wzmocnienie, aby utrzymać średnią na pożądanym poziomie (-18dB).", + "EnableAudioNormalization": "Normalizacja dźwięku", + "LabelEnableLUFSScan": "Włącz skanowanie głośności dźwięku", + "LabelEnableLUFSScanHelp": "Włącz skanowanie głośności dźwięku dla muzyki (To zajmie więcej czasu i więcej zasobów)." } From b3c023f4fa59682134855dbd154bfe98103890a8 Mon Sep 17 00:00:00 2001 From: Shadowghost Date: Tue, 30 May 2023 16:20:03 +0200 Subject: [PATCH 44/56] Fix collection permission check in context menu --- src/components/itemContextMenu.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/itemContextMenu.js b/src/components/itemContextMenu.js index 539d2fc965..b96ac14780 100644 --- a/src/components/itemContextMenu.js +++ b/src/components/itemContextMenu.js @@ -109,7 +109,7 @@ export function getCommands(options) { }); } - if (itemHelper.supportsAddingToCollection(item) && options.EnableCollectionManagement) { + if (itemHelper.supportsAddingToCollection(item) && (user.Policy.IsAdministrator || user.Policy.EnableCollectionManagement)) { commands.push({ name: globalize.translate('AddToCollection'), id: 'addtocollection', From 25438f8cdad30e220f7fd7b5dafada6f425895fa Mon Sep 17 00:00:00 2001 From: Shadowghost Date: Tue, 30 May 2023 16:21:35 +0200 Subject: [PATCH 45/56] Update @jellyfin/sdk to unstable.202305300501 --- package-lock.json | 29 +++++++---------------------- 1 file changed, 7 insertions(+), 22 deletions(-) diff --git a/package-lock.json b/package-lock.json index 547803c8a7..a6664910a0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2825,12 +2825,9 @@ "dev": true }, "node_modules/@jellyfin/sdk": { - "version": "0.0.0-unstable.202304122102", - "resolved": "https://registry.npmjs.org/@jellyfin/sdk/-/sdk-0.0.0-unstable.202304122102.tgz", - "integrity": "sha512-KToOmK3GmbjovtFPgb3dYx8cV6bopo46fhTkHDnKLqsmwqBz5/QKk7Z8NbR+5YaojNAP4LUYnenZmMK9HQ2YeA==", - "dependencies": { - "compare-versions": "5.0.3" - }, + "version": "0.0.0-unstable.202305300501", + "resolved": "https://registry.npmjs.org/@jellyfin/sdk/-/sdk-0.0.0-unstable.202305300501.tgz", + "integrity": "sha512-xAiVZQFtnRkikiYcYSue75+socgwVY+NwY3PaRDTbjH90Guo4ptcLXmlgAFcUad+J3jpwpdAR9+fKmSomUFKRA==", "peerDependencies": { "axios": "^1.3.4" } @@ -5653,11 +5650,6 @@ "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", "dev": true }, - "node_modules/compare-versions": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-5.0.3.tgz", - "integrity": "sha512-4UZlZP8Z99MGEY+Ovg/uJxJuvoXuN4M6B3hKaiackiHrgzQFEe3diJi1mf1PNHbFujM7FvLrK2bpgIaImbtZ1A==" - }, "node_modules/component-emitter": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", @@ -22165,12 +22157,10 @@ "dev": true }, "@jellyfin/sdk": { - "version": "0.0.0-unstable.202304122102", - "resolved": "https://registry.npmjs.org/@jellyfin/sdk/-/sdk-0.0.0-unstable.202304122102.tgz", - "integrity": "sha512-KToOmK3GmbjovtFPgb3dYx8cV6bopo46fhTkHDnKLqsmwqBz5/QKk7Z8NbR+5YaojNAP4LUYnenZmMK9HQ2YeA==", - "requires": { - "compare-versions": "5.0.3" - } + "version": "0.0.0-unstable.202305300501", + "resolved": "https://registry.npmjs.org/@jellyfin/sdk/-/sdk-0.0.0-unstable.202305300501.tgz", + "integrity": "sha512-xAiVZQFtnRkikiYcYSue75+socgwVY+NwY3PaRDTbjH90Guo4ptcLXmlgAFcUad+J3jpwpdAR9+fKmSomUFKRA==", + "requires": {} }, "@jridgewell/gen-mapping": { "version": "0.3.2", @@ -24280,11 +24270,6 @@ "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", "dev": true }, - "compare-versions": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-5.0.3.tgz", - "integrity": "sha512-4UZlZP8Z99MGEY+Ovg/uJxJuvoXuN4M6B3hKaiackiHrgzQFEe3diJi1mf1PNHbFujM7FvLrK2bpgIaImbtZ1A==" - }, "component-emitter": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", From d867bf4b454f295e47defdd2f7846d5b3c5bd5d1 Mon Sep 17 00:00:00 2001 From: Shadowghost Date: Thu, 2 Mar 2023 15:43:21 +0100 Subject: [PATCH 46/56] Adapt dummy chapter settings and labels --- src/controllers/dashboard/metadataImages.js | 2 -- src/controllers/dashboard/metadataimages.html | 6 +----- src/strings/en-us.json | 14 ++++++-------- 3 files changed, 7 insertions(+), 15 deletions(-) diff --git a/src/controllers/dashboard/metadataImages.js b/src/controllers/dashboard/metadataImages.js index 15dcbd8812..53633d6915 100644 --- a/src/controllers/dashboard/metadataImages.js +++ b/src/controllers/dashboard/metadataImages.js @@ -68,7 +68,6 @@ function loadPage(page) { page.querySelector('#selectLanguage').value = config.PreferredMetadataLanguage || ''; page.querySelector('#selectCountry').value = config.MetadataCountryCode || ''; page.querySelector('#valDummyChapterDuration').value = config.DummyChapterDuration || ''; - page.querySelector('#valDummyChapterCount').value = config.DummyChapterCount || ''; page.querySelector('#txtChapterImageResolution').value = config.ChapterImageResolution || ''; loading.hide(); }); @@ -81,7 +80,6 @@ function onSubmit() { config.PreferredMetadataLanguage = form.querySelector('#selectLanguage').value; config.MetadataCountryCode = form.querySelector('#selectCountry').value; config.DummyChapterDuration = form.querySelector('#valDummyChapterDuration').value; - config.DummyChapterCount = form.querySelector('#valDummyChapterCount').value; config.ChapterImageResolution = form.querySelector('#txtChapterImageResolution').value; ApiClient.updateServerConfiguration(config).then(Dashboard.processServerConfigurationUpdateResult); }); diff --git a/src/controllers/dashboard/metadataimages.html b/src/controllers/dashboard/metadataimages.html index a407ae387b..251f5b8235 100644 --- a/src/controllers/dashboard/metadataimages.html +++ b/src/controllers/dashboard/metadataimages.html @@ -22,13 +22,9 @@

${HeaderDummyChapter}

- +
${LabelDummyChapterDurationHelp}
-
- -
${LabelDummyChapterCountHelp}
-
diff --git a/src/strings/en-us.json b/src/strings/en-us.json index 1ef3471bf7..95a3b12902 100644 --- a/src/strings/en-us.json +++ b/src/strings/en-us.json @@ -630,14 +630,12 @@ "LabelDroppedFrames": "Dropped frames", "LabelDropShadow": "Drop shadow", "LabelDropSubtitleHere": "Drop subtitle here, or click to browse.", - "LabelDummyChapterDuration": "Interval", - "LabelDummyChapterDurationHelp": "The chapter image extraction interval in seconds.", - "LabelDummyChapterCount": "Limit", - "LabelDummyChapterCountHelp": "The maximum number of chapter images that will be extracted for each media file.", - "LabelChapterImageResolution": "Resolution", - "LabelChapterImageResolutionHelp": "The resolution of the extracted chapter images.", - "LabelDynamicExternalId": "{0} Id", - "LabelEasyPinCode": "Easy PIN code", + "LabelDummyChapterDuration": "Interval:", + "LabelDummyChapterDurationHelp": "The interval between dummy chapters. Set to 0 to disable dummy chapter generation. Changing this will have no effect on existing dummy chapters.", + "LabelChapterImageResolution": "Resolution:", + "LabelChapterImageResolutionHelp": "The resolution of the extracted chapter images. Changing this will have no effect on existing dummy chapters.", + "LabelDynamicExternalId": "{0} Id:", + "LabelEasyPinCode": "Easy PIN code:", "LabelEmbedAlbumArtDidl": "Embed album art in DIDL", "LabelEmbedAlbumArtDidlHelp": "Some devices prefer this method for getting the album art. Others may fail to play with this option enabled.", "LabelEnableAudioVbr": "Enable VBR audio encoding", From 30a0e303ec18063ee23b73d9c6c29d2424f9fd65 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luk=C3=A1=C5=A1=20Kucharczyk?= Date: Tue, 30 May 2023 15:08:18 +0000 Subject: [PATCH 47/56] Translated using Weblate (Czech) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/cs/ --- src/strings/cs.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/strings/cs.json b/src/strings/cs.json index c6682c07a3..24e929b9a2 100644 --- a/src/strings/cs.json +++ b/src/strings/cs.json @@ -408,7 +408,7 @@ "LabelDownloadLanguages": "Stahované jazyky", "LabelDropImageHere": "Sem přetáhněte obrázek nebo klikněte pro procházení.", "LabelDropShadow": "Typ zvýraznění titulků", - "LabelEasyPinCode": "Jednoduchý kód PIN", + "LabelEasyPinCode": "Jednoduchý kód PIN:", "LabelEmbedAlbumArtDidl": "Vložit alba do DIDL", "LabelEmbedAlbumArtDidlHelp": "Některá zařízení preferují tento způsob pro získání alba. Jiné mohou selhat pokud máte tuto volbu povolenu.", "LabelEnableAutomaticPortMap": "Povolit automatické mapování portů", @@ -1092,7 +1092,7 @@ "LabelCustomCertificatePathHelp": "Umístění souboru PKCS #12, který obsahuje certifikát a soukromý klíč k povolení podpory TLS na vlastní doméně.", "LabelDateTimeLocale": "Místní nastavení data", "LabelDefaultScreen": "Výchozí obrazovka", - "LabelDynamicExternalId": "{0} ID", + "LabelDynamicExternalId": "{0} ID:", "LabelEnableHardwareDecodingFor": "Povolit hardwarové dekódování pro", "LabelHomeNetworkQuality": "Kvalita na domácí síti", "LabelInternetQuality": "Kvalita na internetu", @@ -1695,12 +1695,12 @@ "SaveRecordingImages": "Uložit obrázky elektronického programového průvodce nahrávky", "SaveRecordingImagesHelp": "Uložit obrázky elektronického programového průvodce nahrávky spolu s médii.", "HeaderDummyChapter": "Obrázky kapitol", - "LabelDummyChapterDuration": "Rozmezí", - "LabelDummyChapterDurationHelp": "Rozmezí v sekundách mezi extrakcí obrázků kapitol.", + "LabelDummyChapterDuration": "Rozmezí:", + "LabelDummyChapterDurationHelp": "Rozmezí v sekundách mezi kapitolami. Vytváření kapitol je možné vypnout nastavením na 0. Změna tohoto nastavení nemá vliv na existující kapitoly.", "LabelDummyChapterCount": "Limit", "LabelDummyChapterCountHelp": "Maximální počet obrázků kapitol, který má být vytvořen pro jeden soubor médií.", - "LabelChapterImageResolution": "Rozlišení", - "LabelChapterImageResolutionHelp": "Rozližení extrahovaných obrázků kapitol.", + "LabelChapterImageResolution": "Rozlišení:", + "LabelChapterImageResolutionHelp": "Rozlišení extrahovaných obrázků kapitol. Změna tohoto nastavení nemá vliv na existující kapitoly.", "ResolutionMatchSource": "Stejné jako zdroj", "PreferEmbeddedExtrasTitlesOverFileNames": "Preferovat vložené názvy před názvy souborů pro doplňky", "PreferEmbeddedExtrasTitlesOverFileNamesHelp": "Doplňky většinou mají stejný vložený název jako nadřazená položka. Zaškrtnutím je i přesto můžete upřednostnit.", From 6828ed6afcaad478deab5582db803d5459ddd636 Mon Sep 17 00:00:00 2001 From: blob03 Date: Tue, 30 May 2023 19:23:11 +0000 Subject: [PATCH 48/56] Translated using Weblate (French) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/fr/ --- src/strings/fr.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/strings/fr.json b/src/strings/fr.json index 1c643a321d..22f390cb5b 100644 --- a/src/strings/fr.json +++ b/src/strings/fr.json @@ -1694,10 +1694,10 @@ "HeaderRecordingMetadataSaving": "Enregistrement des métadonnées", "SaveRecordingNFO": "Enregistrer les métadonnées du fournisseur dans le fichier NFO", "SaveRecordingImages": "Enregistrer les images des métadonnées du fournisseur", - "LabelDummyChapterDurationHelp": "Intervalle d’extraction des images de chapitre en secondes.", + "LabelDummyChapterDurationHelp": "Intervalle de temps entre chapitres factices. La valeur 0 désactive la génération des chapitres. Tout changement n’aura pas d'effet sur les chapitres existants.", "LabelDummyChapterCount": "Limite", "LabelChapterImageResolution": "Résolution", - "LabelChapterImageResolutionHelp": "La résolution des images de chapitre.", + "LabelChapterImageResolutionHelp": "La résolution des images de chapitre. Changer cette valeur n’aura pas d'effet sur les chapitres factices existants.", "ResolutionMatchSource": "Résolution de la source", "HeaderDummyChapter": "Images des chapitres", "LabelDummyChapterDuration": "Intervalle", From 2805e3a7ac1121d91dcb7374aa4ee90ebcebbd6e Mon Sep 17 00:00:00 2001 From: nickywan Date: Tue, 30 May 2023 19:19:50 +0000 Subject: [PATCH 49/56] Translated using Weblate (French) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/fr/ --- src/strings/fr.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/strings/fr.json b/src/strings/fr.json index 22f390cb5b..aba432d5e9 100644 --- a/src/strings/fr.json +++ b/src/strings/fr.json @@ -29,7 +29,7 @@ "AlwaysPlaySubtitlesHelp": "Les sous-titres correspondant à la langue préférée seront chargés indépendamment de la langue de l'audio.", "AnyLanguage": "N'importe quel langage", "Anytime": "N'importe quand", - "AroundTime": "Aux environs de", + "AroundTime": "Aux environs de {0}", "Artists": "Artistes", "AsManyAsPossible": "Autant que possible", "Ascending": "Croissant", @@ -1696,11 +1696,11 @@ "SaveRecordingImages": "Enregistrer les images des métadonnées du fournisseur", "LabelDummyChapterDurationHelp": "Intervalle de temps entre chapitres factices. La valeur 0 désactive la génération des chapitres. Tout changement n’aura pas d'effet sur les chapitres existants.", "LabelDummyChapterCount": "Limite", - "LabelChapterImageResolution": "Résolution", + "LabelChapterImageResolution": "Résolution:", "LabelChapterImageResolutionHelp": "La résolution des images de chapitre. Changer cette valeur n’aura pas d'effet sur les chapitres factices existants.", "ResolutionMatchSource": "Résolution de la source", "HeaderDummyChapter": "Images des chapitres", - "LabelDummyChapterDuration": "Intervalle", + "LabelDummyChapterDuration": "Intervalle:", "LabelDummyChapterCountHelp": "Nombre maximal d’images de chapitre à extraire pour chaque fichier multimédia.", "PreferEmbeddedExtrasTitlesOverFileNames": "Préférer les titres intégrés aux médias pour les bonus", "PreferEmbeddedExtrasTitlesOverFileNamesHelp": "Les bonus possèdent souvent un titre intégré identique au média parent, cocher l'option pour utiliser ce titre quoi qu'il en soit.", From 83101d013e356088d897a180ffe9b2bc0376ff3b Mon Sep 17 00:00:00 2001 From: nickywan Date: Tue, 30 May 2023 19:25:41 +0000 Subject: [PATCH 50/56] Translated using Weblate (French) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/fr/ --- src/strings/fr.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/strings/fr.json b/src/strings/fr.json index aba432d5e9..4bd33363d5 100644 --- a/src/strings/fr.json +++ b/src/strings/fr.json @@ -484,7 +484,7 @@ "LabelDropShadow": "Ombre portée", "LabelDropSubtitleHere": "Faire glisser le fichier de sous-titres ici, ou cliquer pour parcourir les fichiers.", "LabelDynamicExternalId": "ID {0}", - "LabelEasyPinCode": "Code Easy PIN", + "LabelEasyPinCode": "Code Easy PIN :", "LabelEmbedAlbumArtDidl": "Intégrer les images d'album dans le DIDL", "LabelEmbedAlbumArtDidlHelp": "Certains appareils préfèrent cette méthode pour obtenir les images d'album. D'autres pourraient ne pas être lu avec l'option activée.", "LabelEnableAutomaticPortMap": "Autoriser le mapping automatique de port", @@ -1696,11 +1696,11 @@ "SaveRecordingImages": "Enregistrer les images des métadonnées du fournisseur", "LabelDummyChapterDurationHelp": "Intervalle de temps entre chapitres factices. La valeur 0 désactive la génération des chapitres. Tout changement n’aura pas d'effet sur les chapitres existants.", "LabelDummyChapterCount": "Limite", - "LabelChapterImageResolution": "Résolution:", + "LabelChapterImageResolution": "Résolution :", "LabelChapterImageResolutionHelp": "La résolution des images de chapitre. Changer cette valeur n’aura pas d'effet sur les chapitres factices existants.", "ResolutionMatchSource": "Résolution de la source", "HeaderDummyChapter": "Images des chapitres", - "LabelDummyChapterDuration": "Intervalle:", + "LabelDummyChapterDuration": "Intervalle :", "LabelDummyChapterCountHelp": "Nombre maximal d’images de chapitre à extraire pour chaque fichier multimédia.", "PreferEmbeddedExtrasTitlesOverFileNames": "Préférer les titres intégrés aux médias pour les bonus", "PreferEmbeddedExtrasTitlesOverFileNamesHelp": "Les bonus possèdent souvent un titre intégré identique au média parent, cocher l'option pour utiliser ce titre quoi qu'il en soit.", From 218373887fa520f728fbde8de72e6d32761a47ab Mon Sep 17 00:00:00 2001 From: blob03 Date: Tue, 30 May 2023 19:51:50 +0000 Subject: [PATCH 51/56] Translated using Weblate (French) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/fr/ --- src/strings/fr.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/strings/fr.json b/src/strings/fr.json index 4bd33363d5..1522026f0e 100644 --- a/src/strings/fr.json +++ b/src/strings/fr.json @@ -484,7 +484,7 @@ "LabelDropShadow": "Ombre portée", "LabelDropSubtitleHere": "Faire glisser le fichier de sous-titres ici, ou cliquer pour parcourir les fichiers.", "LabelDynamicExternalId": "ID {0}", - "LabelEasyPinCode": "Code Easy PIN :", + "LabelEasyPinCode": "Code Easy PIN", "LabelEmbedAlbumArtDidl": "Intégrer les images d'album dans le DIDL", "LabelEmbedAlbumArtDidlHelp": "Certains appareils préfèrent cette méthode pour obtenir les images d'album. D'autres pourraient ne pas être lu avec l'option activée.", "LabelEnableAutomaticPortMap": "Autoriser le mapping automatique de port", @@ -1694,13 +1694,13 @@ "HeaderRecordingMetadataSaving": "Enregistrement des métadonnées", "SaveRecordingNFO": "Enregistrer les métadonnées du fournisseur dans le fichier NFO", "SaveRecordingImages": "Enregistrer les images des métadonnées du fournisseur", - "LabelDummyChapterDurationHelp": "Intervalle de temps entre chapitres factices. La valeur 0 désactive la génération des chapitres. Tout changement n’aura pas d'effet sur les chapitres existants.", + "LabelDummyChapterDurationHelp": "Intervalle de temps entre chapitres factices. La valeur 0 désactive la génération des chapitres. Un changement de valeur n’affectera pas les chapitres existants.", "LabelDummyChapterCount": "Limite", - "LabelChapterImageResolution": "Résolution :", + "LabelChapterImageResolution": "Résolution", "LabelChapterImageResolutionHelp": "La résolution des images de chapitre. Changer cette valeur n’aura pas d'effet sur les chapitres factices existants.", "ResolutionMatchSource": "Résolution de la source", "HeaderDummyChapter": "Images des chapitres", - "LabelDummyChapterDuration": "Intervalle :", + "LabelDummyChapterDuration": "Intervalle", "LabelDummyChapterCountHelp": "Nombre maximal d’images de chapitre à extraire pour chaque fichier multimédia.", "PreferEmbeddedExtrasTitlesOverFileNames": "Préférer les titres intégrés aux médias pour les bonus", "PreferEmbeddedExtrasTitlesOverFileNamesHelp": "Les bonus possèdent souvent un titre intégré identique au média parent, cocher l'option pour utiliser ce titre quoi qu'il en soit.", From 694ee858cac13ad0c98dd15fd79b55bb67a1526d Mon Sep 17 00:00:00 2001 From: stanol Date: Tue, 30 May 2023 20:10:33 +0000 Subject: [PATCH 52/56] Translated using Weblate (Ukrainian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/uk/ --- src/strings/uk.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/strings/uk.json b/src/strings/uk.json index 94a549eb3f..b0ac0791d9 100644 --- a/src/strings/uk.json +++ b/src/strings/uk.json @@ -840,8 +840,8 @@ "LabelEmbedAlbumArtDidlHelp": "Деякі пристрої віддають перевагу цьому методу для отримання обкладинки альбому. Інші можуть не грати з увімкненою опцією.", "LabelEnableAutomaticPortMap": "Увімкніть автоматичне зіставлення портів", "LabelEmbedAlbumArtDidl": "Вставити обкладинку альбому в DIDL", - "LabelEasyPinCode": "Простий PIN код", - "LabelDynamicExternalId": "{0} Ідентифікатор", + "LabelEasyPinCode": "Простий PIN код:", + "LabelDynamicExternalId": "{0} Ідентифікатор:", "LabelDropSubtitleHere": "Перенесіть сюди субтитри або натисніть, щоб переглянути.", "LabelDropShadow": "Накладення тіні", "LabelDroppedFrames": "Втрачені кадри", @@ -1695,11 +1695,11 @@ "SaveRecordingImages": "Зберегти записані зображення EPG", "SaveRecordingImagesHelp": "Зберігайте зображення з постачальника списків EPG разом із носієм.", "HeaderDummyChapter": "Зображення розділів", - "LabelDummyChapterDuration": "Інтервал", + "LabelDummyChapterDuration": "Інтервал:", "LabelDummyChapterDurationHelp": "Інтервал вилучення зображення розділу в секундах.", "LabelDummyChapterCount": "Ліміт", "LabelDummyChapterCountHelp": "Максимальна кількість зображень розділів, які буде видобуто для кожного медіафайлу.", - "LabelChapterImageResolution": "Роздільна здатність", + "LabelChapterImageResolution": "Роздільна здатність:", "HeaderRecordingMetadataSaving": "Метадані запису", "SubtitleBlack": "Чорний", "SubtitleBlue": "Синій", From 1ed15b7691d79f7370ea15a6b7729366244218fc Mon Sep 17 00:00:00 2001 From: Oskari Lavinto Date: Wed, 31 May 2023 04:48:00 +0000 Subject: [PATCH 53/56] Translated using Weblate (Finnish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/fi/ --- src/strings/fi.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/strings/fi.json b/src/strings/fi.json index 0c8a4ee6c6..da4df2469b 100644 --- a/src/strings/fi.json +++ b/src/strings/fi.json @@ -816,8 +816,8 @@ "LabelEnableBlastAliveMessages": "Lähetä hereilläolo -viesti", "LabelEnableBlastAliveMessagesHelp": "Ota tämä käyttöön, jos muilla verkon UPnP-laitteilla on ongelmia palvelimen havaitsemisessa.", "LabelEnableDlnaClientDiscoveryInterval": "Päätelaitteen tunnistustiheys", - "LabelEasyPinCode": "Helppo PIN -koodi", - "LabelDynamicExternalId": "{0} Id", + "LabelEasyPinCode": "Helppo PIN -koodi:", + "LabelDynamicExternalId": "{0} Id:", "LabelDisplayLanguageHelp": "Jellyfin-käännös on jatkuva projekti.", "LabelDisplayLanguage": "Näytön kieli", "LabelDiscNumber": "Levynumero", @@ -1688,12 +1688,12 @@ "SaveRecordingImages": "Tallenna tallenteen ohjelmaoppaan kuvat", "SaveRecordingImagesHelp": "Tallenna ohjelmaoppaan tietolähteen kuvat mediatiedoston oheen.", "HeaderDummyChapter": "Kappalekuvat", - "LabelDummyChapterDuration": "Aikaväli", - "LabelDummyChapterDurationHelp": "Kappalekuvien purkuväli sekunteina.", + "LabelDummyChapterDuration": "Aikaväli:", + "LabelDummyChapterDurationHelp": "Kappalekuvien purkuväli sekunteina. Poista kappalekuvien luonti käytöstä asettamalla arvoksi 0. Tämän muutos ei vaikuta olemassa oleviin kappaleisiin.", "LabelDummyChapterCount": "Enimmäismäärä", "LabelDummyChapterCountHelp": "Yhdestä mediatiedostosta purettavien kappalekuvien enimmäismäärä.", - "LabelChapterImageResolution": "Resoluutio", - "LabelChapterImageResolutionHelp": "Purettujen kappalekuvien resoluutio.", + "LabelChapterImageResolution": "Resoluutio:", + "LabelChapterImageResolutionHelp": "Purettujen kappalekuvien resoluutio. Tämän muutos ei vaikuta olemassa oleviin kappaleisiin.", "ResolutionMatchSource": "Vastaa lähdettä", "PreferEmbeddedExtrasTitlesOverFileNames": "Suosi lisämateriaaleille upotettuja otsikoita tiedostonimien sijaan", "PreferEmbeddedExtrasTitlesOverFileNamesHelp": "Lisämateriaaleilla on usein sama otsikko kuin niiden isännällä. Valitse tämä käyttääksesi silti upotettuja otsikoita.", From 81ee7e412f18358032965a7cf7441a0e311f8368 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=9A=87=E7=94=AB=E6=9C=9D=E4=BA=91?= Date: Wed, 31 May 2023 04:56:22 +0000 Subject: [PATCH 54/56] Translated using Weblate (Chinese (Simplified)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/zh_Hans/ --- src/strings/zh-cn.json | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/strings/zh-cn.json b/src/strings/zh-cn.json index 2bc2f192a5..5d00676162 100644 --- a/src/strings/zh-cn.json +++ b/src/strings/zh-cn.json @@ -458,7 +458,7 @@ "LabelDropImageHere": "拖拽或点击选择图像于此处。", "LabelDroppedFrames": "丢弃的帧", "LabelDropShadow": "阴影", - "LabelDynamicExternalId": "{0} Id", + "LabelDynamicExternalId": "{0} Id:", "LabelEasyPinCode": "简单 PIN 码", "LabelEmbedAlbumArtDidl": "在DIDL中嵌入专辑封面", "LabelEmbedAlbumArtDidlHelp": "有些设备首选这种方式获取专辑封面。启用该选项可能导致其他设备播放失败。", @@ -1690,8 +1690,8 @@ "LabelStereoDownmixAlgorithm": "立体声降混算法", "StereoDownmixAlgorithmHelp": "用于将多声道下降混合为立体声的算法。", "HeaderRecordingMetadataSaving": "记录元数据", - "LabelDummyChapterDuration": "间隔", - "LabelDummyChapterDurationHelp": "章节图像提取间隔,以秒为单位。", + "LabelDummyChapterDuration": "间隔:", + "LabelDummyChapterDurationHelp": "虚拟章节之间的时间间隔。将其设置为0以禁用虚拟章节生成。更改此设置不会影响现有的虚拟章节。", "PreferEmbeddedExtrasTitlesOverFileNames": "对额外内容优先使用内置的标题而不是文件名", "PreferEmbeddedExtrasTitlesOverFileNamesHelp": "额外内容通常与父项有相同的内置标题,勾选此项来对它们使用内置标题。", "SaveRecordingNFO": "在 NFO 中保存录制的 EPG 元数据", @@ -1702,8 +1702,8 @@ "HeaderDummyChapter": "章节图片", "LabelDummyChapterCount": "限制", "LabelDummyChapterCountHelp": "每个媒体文件的最大章节图像提取数。", - "LabelChapterImageResolution": "分辨率", - "LabelChapterImageResolutionHelp": "提取的章节图像的分辨率。", + "LabelChapterImageResolution": "分辨率:", + "LabelChapterImageResolutionHelp": "提取的章节图像的分辨率。更改此设置不会影响现有的虚拟章节。", "SecondarySubtitles": "次字幕", "SubtitleBlack": "黑色", "SubtitleGray": "灰色", From 09ee9c5a4a4e1201369edfe9ca1e5e2a179090bb Mon Sep 17 00:00:00 2001 From: stanol Date: Wed, 31 May 2023 09:21:16 +0000 Subject: [PATCH 55/56] Translated using Weblate (Ukrainian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/uk/ --- src/strings/uk.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/strings/uk.json b/src/strings/uk.json index b0ac0791d9..3fb74964be 100644 --- a/src/strings/uk.json +++ b/src/strings/uk.json @@ -1686,7 +1686,7 @@ "Experimental": "Експериментальний", "LabelStereoDownmixAlgorithm": "Stereo Downmix алгоритм", "StereoDownmixAlgorithmHelp": "Алгоритм мікшування багатоканального аудіо у стерео.", - "LabelChapterImageResolutionHelp": "Роздільна здатність витягнутих зображень розділу.", + "LabelChapterImageResolutionHelp": "Роздільна здатність створених зображень розділів. Зміна цього параметра не вплине на існуючі зображення розділів.", "PreferEmbeddedExtrasTitlesOverFileNames": "Віддавайте перевагу вбудованим назвам, а не назвам файлів для додаткових функцій", "PreferEmbeddedExtrasTitlesOverFileNamesHelp": "Додатки часто мають таке ж вбудоване ім’я, що й батьківське, позначте це, щоб усе одно використовувати для них вбудовані заголовки.", "ResolutionMatchSource": "Джерело відповідності", @@ -1696,7 +1696,7 @@ "SaveRecordingImagesHelp": "Зберігайте зображення з постачальника списків EPG разом із носієм.", "HeaderDummyChapter": "Зображення розділів", "LabelDummyChapterDuration": "Інтервал:", - "LabelDummyChapterDurationHelp": "Інтервал вилучення зображення розділу в секундах.", + "LabelDummyChapterDurationHelp": "Інтервал між зображеннями розділів. Встановіть значення 0, щоб вимкнути генерацію зображень розділів. Зміна цього параметра не вплине на існуючі зображення розділів.", "LabelDummyChapterCount": "Ліміт", "LabelDummyChapterCountHelp": "Максимальна кількість зображень розділів, які буде видобуто для кожного медіафайлу.", "LabelChapterImageResolution": "Роздільна здатність:", From 8251311dcacce47bdb8e160fac103e24d8650bad Mon Sep 17 00:00:00 2001 From: Bill Thornton Date: Wed, 31 May 2023 11:26:16 -0400 Subject: [PATCH 56/56] Remove trailing colons from dummy chapter strings --- src/strings/en-us.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/strings/en-us.json b/src/strings/en-us.json index df3dd81a93..eb2fc06809 100644 --- a/src/strings/en-us.json +++ b/src/strings/en-us.json @@ -630,12 +630,12 @@ "LabelDroppedFrames": "Dropped frames", "LabelDropShadow": "Drop shadow", "LabelDropSubtitleHere": "Drop subtitle here, or click to browse.", - "LabelDummyChapterDuration": "Interval:", + "LabelDummyChapterDuration": "Interval", "LabelDummyChapterDurationHelp": "The interval between dummy chapters. Set to 0 to disable dummy chapter generation. Changing this will have no effect on existing dummy chapters.", - "LabelChapterImageResolution": "Resolution:", + "LabelChapterImageResolution": "Resolution", "LabelChapterImageResolutionHelp": "The resolution of the extracted chapter images. Changing this will have no effect on existing dummy chapters.", - "LabelDynamicExternalId": "{0} Id:", - "LabelEasyPinCode": "Easy PIN code:", + "LabelDynamicExternalId": "{0} Id", + "LabelEasyPinCode": "Easy PIN code", "LabelEmbedAlbumArtDidl": "Embed album art in DIDL", "LabelEmbedAlbumArtDidlHelp": "Some devices prefer this method for getting the album art. Others may fail to play with this option enabled.", "LabelEnableAudioVbr": "Enable VBR audio encoding",