diff --git a/src/apps/dashboard/routes/playback/trickplay.tsx b/src/apps/dashboard/routes/playback/trickplay.tsx
index 7f5336575f..26f0360b6c 100644
--- a/src/apps/dashboard/routes/playback/trickplay.tsx
+++ b/src/apps/dashboard/routes/playback/trickplay.tsx
@@ -8,7 +8,6 @@ import ButtonElement from '../../../../elements/ButtonElement';
import CheckBoxElement from '../../../../elements/CheckBoxElement';
import SelectElement from '../../../../elements/SelectElement';
import InputElement from '../../../../elements/InputElement';
-import LinkTrickplayAcceleration from '../../../../components/dashboard/playback/trickplay/LinkTrickplayAcceleration';
import loading from '../../../../components/loading/loading';
import toast from '../../../../components/toast/toast';
import ServerConnections from '../../../../components/ServerConnections';
@@ -31,6 +30,7 @@ const PlaybackTrickplay: FunctionComponent = () => {
}
(page.querySelector('.chkEnableHwAcceleration') as HTMLInputElement).checked = options.EnableHwAcceleration;
+ (page.querySelector('.chkEnableHwEncoding') as HTMLInputElement).checked = options.EnableHwEncoding;
(page.querySelector('#selectScanBehavior') as HTMLSelectElement).value = options.ScanBehavior;
(page.querySelector('#selectProcessPriority') as HTMLSelectElement).value = options.ProcessPriority;
(page.querySelector('#txtInterval') as HTMLInputElement).value = options.Interval;
@@ -76,6 +76,7 @@ const PlaybackTrickplay: FunctionComponent = () => {
const options = config.TrickplayOptions;
options.EnableHwAcceleration = (page.querySelector('.chkEnableHwAcceleration') as HTMLInputElement).checked;
+ options.EnableHwEncoding = (page.querySelector('.chkEnableHwEncoding') as HTMLInputElement).checked;
options.ScanBehavior = (page.querySelector('#selectScanBehavior') as HTMLSelectElement).value as TrickplayScanBehavior;
options.ProcessPriority = (page.querySelector('#selectProcessPriority') as HTMLSelectElement).value as ProcessPriorityClass;
options.Interval = Math.max(1, parseInt((page.querySelector('#txtInterval') as HTMLInputElement).value || '10000', 10));
@@ -154,12 +155,16 @@ const PlaybackTrickplay: FunctionComponent = () => {
className='chkEnableHwAcceleration'
title='LabelTrickplayAccel'
/>
+
+
+
-
+
+ {globalize.translate('LabelTrickplayAccelEncodingHelp')}
+
diff --git a/src/components/dashboard/playback/trickplay/LinkTrickplayAcceleration.tsx b/src/components/dashboard/playback/trickplay/LinkTrickplayAcceleration.tsx
deleted file mode 100644
index a00b839c87..0000000000
--- a/src/components/dashboard/playback/trickplay/LinkTrickplayAcceleration.tsx
+++ /dev/null
@@ -1,33 +0,0 @@
-import React, { type FunctionComponent } from 'react';
-import globalize from '../../../../scripts/globalize';
-
-type IProps = {
- title?: string;
- className?: string;
- href?: string;
-};
-
-const createLinkElement = ({ className, title, href }: IProps) => ({
- __html: `
- ${title}
- `
-});
-
-const LinkTrickplayAcceleration: FunctionComponent = ({ className, title, href }: IProps) => {
- return (
-
- );
-};
-
-export default LinkTrickplayAcceleration;
diff --git a/src/controllers/dashboard/encodingsettings.html b/src/controllers/dashboard/encodingsettings.html
index 93981c00eb..824b8f8280 100644
--- a/src/controllers/dashboard/encodingsettings.html
+++ b/src/controllers/dashboard/encodingsettings.html
@@ -137,12 +137,6 @@
${AllowAv1Encoding}
-
-
-
diff --git a/src/controllers/dashboard/encodingsettings.js b/src/controllers/dashboard/encodingsettings.js
index 1aeabb2ebc..12f95fdf0f 100644
--- a/src/controllers/dashboard/encodingsettings.js
+++ b/src/controllers/dashboard/encodingsettings.js
@@ -19,7 +19,6 @@ function loadPage(page, config, systemInfo) {
page.querySelector('#chkHardwareEncoding').checked = config.EnableHardwareEncoding;
page.querySelector('#chkAllowHevcEncoding').checked = config.AllowHevcEncoding;
page.querySelector('#chkAllowAv1Encoding').checked = config.AllowAv1Encoding;
- page.querySelector('#chkAllowMjpegEncoding').checked = config.AllowMjpegEncoding;
$('#selectVideoDecoder', page).val(config.HardwareAccelerationType);
$('#selectThreadCount', page).val(config.EncodingThreadCount);
page.querySelector('#chkEnableAudioVbr').checked = config.EnableAudioVbr;
@@ -128,7 +127,6 @@ function onSubmit() {
config.EnableHardwareEncoding = form.querySelector('#chkHardwareEncoding').checked;
config.AllowHevcEncoding = form.querySelector('#chkAllowHevcEncoding').checked;
config.AllowAv1Encoding = form.querySelector('#chkAllowAv1Encoding').checked;
- config.AllowMjpegEncoding = form.querySelector('#chkAllowMjpegEncoding').checked;
ApiClient.updateNamedConfiguration('encoding', config).then(function () {
updateEncoder(form);
}, function () {
diff --git a/src/strings/en-us.json b/src/strings/en-us.json
index 5d8be73d24..f593993fbd 100644
--- a/src/strings/en-us.json
+++ b/src/strings/en-us.json
@@ -1653,10 +1653,10 @@
"ForeignPartsOnly": "Forced/Foreign parts only",
"HearingImpairedShort": "HI/SDH",
"LabelIsHearingImpaired": "For hearing impaired (SDH)",
- "AllowMjpegEncoding": "Allow encoding in MJPEG format (used during trickplay generation)",
"Trickplay": "Trickplay",
- "LabelTrickplayAccel": "Enable hardware acceleration",
- "LabelTrickplayAccelHelp": "Make sure to enable 'Allow MJPEG Encoding' in Transcoding if your hardware supports it.",
+ "LabelTrickplayAccel": "Enable hardware decoding",
+ "LabelTrickplayAccelEncoding": "Enable hardware accelerated MJPEG encoding",
+ "LabelTrickplayAccelEncodingHelp": "Currently only available on QSV and VAAPI, this option has no effect on other hardware acceleration methods.",
"NonBlockingScan": "Non Blocking - queues generation, then returns",
"BlockingScan": "Blocking - queues generation, blocks scan until complete",
"LabelScanBehavior": "Scan Behavior",