From 8becfc4118bfc6a9b30764ebc08eda4cc72770ec Mon Sep 17 00:00:00 2001 From: Brad Koehn Date: Fri, 29 Nov 2024 10:20:59 -0600 Subject: [PATCH 1/2] add rkmpp support --- .../Tdarr_Plugin_00td_action_transcode.js | 8 ++++++++ .../1.0.0/index.js | 1 + .../checkNodeHardwareEncoder/1.0.0/index.js | 1 + .../FlowHelpers/1.0.0/hardwareUtils.js | 20 +++++++++++++++++++ .../1.0.0/index.ts | 1 + .../FlowHelpers/1.0.0/hardwareUtils.ts | 20 +++++++++++++++++++ 6 files changed, 51 insertions(+) diff --git a/Community/Tdarr_Plugin_00td_action_transcode.js b/Community/Tdarr_Plugin_00td_action_transcode.js index 71e5b88..5c7808d 100644 --- a/Community/Tdarr_Plugin_00td_action_transcode.js +++ b/Community/Tdarr_Plugin_00td_action_transcode.js @@ -297,6 +297,10 @@ const getEncoder = async ({ enabled: false, filter: '-vf format=nv12,hwupload', }, + { + encoder: 'hevc_rkmpp', + enabled: false, + }, { encoder: 'hevc_qsv', enabled: false, @@ -310,6 +314,10 @@ const getEncoder = async ({ encoder: 'h264_nvenc', enabled: false, }, + { + encoder: 'h264_rkmpp', + enabled: false, + }, { encoder: 'h264_amf', enabled: false, diff --git a/FlowPlugins/CommunityFlowPlugins/ffmpegCommand/ffmpegCommandSetVideoEncoder/1.0.0/index.js b/FlowPlugins/CommunityFlowPlugins/ffmpegCommand/ffmpegCommandSetVideoEncoder/1.0.0/index.js index 919fde5..29ff829 100644 --- a/FlowPlugins/CommunityFlowPlugins/ffmpegCommand/ffmpegCommandSetVideoEncoder/1.0.0/index.js +++ b/FlowPlugins/CommunityFlowPlugins/ffmpegCommand/ffmpegCommandSetVideoEncoder/1.0.0/index.js @@ -172,6 +172,7 @@ var details = function () { return ({ options: [ 'auto', 'nvenc', + 'rkmpp', 'qsv', 'vaapi', 'videotoolbox', diff --git a/FlowPlugins/CommunityFlowPlugins/tools/checkNodeHardwareEncoder/1.0.0/index.js b/FlowPlugins/CommunityFlowPlugins/tools/checkNodeHardwareEncoder/1.0.0/index.js index 2756564..9ce6d27 100644 --- a/FlowPlugins/CommunityFlowPlugins/tools/checkNodeHardwareEncoder/1.0.0/index.js +++ b/FlowPlugins/CommunityFlowPlugins/tools/checkNodeHardwareEncoder/1.0.0/index.js @@ -62,6 +62,7 @@ var details = function () { return ({ options: [ 'hevc_nvenc', 'hevc_amf', + 'hevc_rkmpp', 'hevc_vaapi', 'hevc_qsv', 'hevc_videotoolbox', diff --git a/FlowPlugins/FlowHelpers/1.0.0/hardwareUtils.js b/FlowPlugins/FlowHelpers/1.0.0/hardwareUtils.js index c91aa70..a9057a1 100644 --- a/FlowPlugins/FlowHelpers/1.0.0/hardwareUtils.js +++ b/FlowPlugins/FlowHelpers/1.0.0/hardwareUtils.js @@ -226,6 +226,16 @@ var getEncoder = function (_a) { return __awaiter(void 0, [_a], void 0, function outputArgs: [], filter: '', }, + { + encoder: 'hevc_rkmpp', + enabled: false, + inputArgs: [ + '-hwaccel', + 'rkmpp', + ], + outputArgs: [], + filter: '', + }, { encoder: 'hevc_amf', enabled: false, @@ -295,6 +305,16 @@ var getEncoder = function (_a) { return __awaiter(void 0, [_a], void 0, function outputArgs: [], filter: '', }, + { + encoder: 'h264_rkmpp', + enabled: false, + inputArgs: [ + '-hwaccel', + 'rkmpp', + ], + outputArgs: [], + filter: '', + }, { encoder: 'h264_videotoolbox', enabled: false, diff --git a/FlowPluginsTs/CommunityFlowPlugins/ffmpegCommand/ffmpegCommandSetVideoEncoder/1.0.0/index.ts b/FlowPluginsTs/CommunityFlowPlugins/ffmpegCommand/ffmpegCommandSetVideoEncoder/1.0.0/index.ts index 3591ce0..de2182a 100644 --- a/FlowPluginsTs/CommunityFlowPlugins/ffmpegCommand/ffmpegCommandSetVideoEncoder/1.0.0/index.ts +++ b/FlowPluginsTs/CommunityFlowPlugins/ffmpegCommand/ffmpegCommandSetVideoEncoder/1.0.0/index.ts @@ -140,6 +140,7 @@ const details = (): IpluginDetails => ({ options: [ 'auto', 'nvenc', + 'rkmpp', 'qsv', 'vaapi', 'videotoolbox', diff --git a/FlowPluginsTs/FlowHelpers/1.0.0/hardwareUtils.ts b/FlowPluginsTs/FlowHelpers/1.0.0/hardwareUtils.ts index 90462b1..8e4523a 100644 --- a/FlowPluginsTs/FlowHelpers/1.0.0/hardwareUtils.ts +++ b/FlowPluginsTs/FlowHelpers/1.0.0/hardwareUtils.ts @@ -203,6 +203,16 @@ export const getEncoder = async ({ outputArgs: [], filter: '', }, + { + encoder: 'hevc_rkmpp', + enabled: false, + inputArgs: [ + '-hwaccel', + 'rkmpp', + ], + outputArgs: [], + filter: '', + }, { encoder: 'hevc_amf', enabled: false, @@ -275,6 +285,16 @@ export const getEncoder = async ({ outputArgs: [], filter: '', }, + { + encoder: 'h264_rkmpp', + enabled: false, + inputArgs: [ + '-hwaccel', + 'rkmpp', + ], + outputArgs: [], + filter: '', + }, { encoder: 'h264_videotoolbox', enabled: false, From ddd3fea148e286b4edf19bb7d59aa5aeba9336c5 Mon Sep 17 00:00:00 2001 From: HaveAGitGat <43864057+HaveAGitGat@users.noreply.github.com> Date: Wed, 5 Feb 2025 17:48:24 +0000 Subject: [PATCH 2/2] fix: add 'hevc_rkmpp' to .ts file --- .../tools/checkNodeHardwareEncoder/1.0.0/index.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/FlowPluginsTs/CommunityFlowPlugins/tools/checkNodeHardwareEncoder/1.0.0/index.ts b/FlowPluginsTs/CommunityFlowPlugins/tools/checkNodeHardwareEncoder/1.0.0/index.ts index d478819..c920050 100644 --- a/FlowPluginsTs/CommunityFlowPlugins/tools/checkNodeHardwareEncoder/1.0.0/index.ts +++ b/FlowPluginsTs/CommunityFlowPlugins/tools/checkNodeHardwareEncoder/1.0.0/index.ts @@ -38,6 +38,7 @@ const details = (): IpluginDetails => ({ options: [ 'hevc_nvenc', 'hevc_amf', + 'hevc_rkmpp', 'hevc_vaapi', 'hevc_qsv', 'hevc_videotoolbox',