fix: update GOP parameters for mediaAnalyzerGOP and transcode2PassX265 to enhance encoding efficiency and documentation
Build / Lint & Test (push) Successful in 16s
Build / Lint & Test (push) Successful in 16s
This commit is contained in:
1 parent
36184fbf32
commit
3f0b38d513
7 files changed
+38
-19
No files matched your search
@@ -52,7 +52,9 @@ const AUDIO_INPUTS = {
|
||||
{ const a = makeArgs('/media/toshiba/Radarr/Film (2023)/Film.mkv',
|
||||
[makeStream({ r_frame_rate:'24000/1001', height:1080 })], ANALYZER_INPUTS);
|
||||
const o = await analyzerPlugin(a);
|
||||
eq(o.variables.gopKeyint, '48', '23.976fps -> keyint=48');
|
||||
eq(o.variables.gopKeyint, '96', '23.976fps -> keyint=96 (4 seconds)');
|
||||
eq(o.variables.gopMinKeyint, '24', '23.976fps -> min-keyint=24 (1 second)');
|
||||
eq(o.variables.gopSceneCut, '40', 'scene-cut threshold is 40');
|
||||
eq(o.variables.isMovie, 'true', '/Radarr -> isMovie=true');
|
||||
eq(o.variables.isAnimation, 'false', 'no anime -> isAnimation=false');
|
||||
eq(o.variables.vBitrate, '3000k', 'film bitrate=3000k');
|
||||
@@ -64,7 +66,7 @@ const AUDIO_INPUTS = {
|
||||
{ const a = makeArgs('/media/toshiba/Sonarr/Naruto S01/S01E01.mkv',
|
||||
[makeStream({ r_frame_rate:'25/1', height:720 })], ANALYZER_INPUTS);
|
||||
const o = await analyzerPlugin(a);
|
||||
eq(o.variables.gopKeyint, '50', '25fps -> keyint=50');
|
||||
eq(o.variables.gopKeyint, '100', '25fps -> keyint=100 (4 seconds)');
|
||||
eq(o.variables.isMovie, 'false', '/Sonarr -> isMovie=false');
|
||||
eq(o.variables.isAnimation, 'true', 'Naruto -> isAnimation=true');
|
||||
eq(o.variables.x265Tune, 'animation', 'anime -> tune=animation');
|
||||
@@ -74,7 +76,7 @@ const AUDIO_INPUTS = {
|
||||
{ const a = makeArgs('/media/toshiba/Sonarr/Naruto S01/S01E01.mkv',
|
||||
[makeStream({ r_frame_rate:'30000/1001', height:480 })], ANALYZER_INPUTS);
|
||||
const o = await analyzerPlugin(a);
|
||||
eq(o.variables.gopKeyint, '60', '29.97fps -> keyint=60');
|
||||
eq(o.variables.gopKeyint, '120', '29.97fps -> keyint=120 (4 seconds)');
|
||||
eq(o.variables.vBitrate, '1000k', 'anime SD 480p -> 1000k');
|
||||
cleanup(a); }
|
||||
|
||||
|
||||
@@ -6,7 +6,8 @@
|
||||
* File: Radarr path, AC3 ITA 448k 5.1, EAC3 ENG 640k 5.1
|
||||
*
|
||||
* Expected:
|
||||
* gopKeyint = "48"
|
||||
* gopKeyint = "96"
|
||||
* gopMinKeyint = "24"
|
||||
* isMovie = "true"
|
||||
* isAnimation = "false"
|
||||
* vBitrate = "3000k"
|
||||
@@ -44,7 +45,9 @@ async function run() {
|
||||
const vars = out1.variables;
|
||||
|
||||
assertEqual(out1.outputNumber, 1, 'outputNumber');
|
||||
assertEqual(vars.gopKeyint, '48', 'gopKeyint (2 x 23.976 = 47.95 -> 48)');
|
||||
assertEqual(vars.gopKeyint, '96', 'gopKeyint (4 x 23.976 = 95.90 -> 96)');
|
||||
assertEqual(vars.gopMinKeyint,'24', 'gopMinKeyint (1 x 23.976 = 23.98 -> 24)');
|
||||
assertEqual(vars.gopSceneCut, '40', 'gopSceneCut (x265 default threshold)');
|
||||
assertEqual(vars.isMovie, 'true', 'isMovie (Radarr path)');
|
||||
assertEqual(vars.isAnimation, 'false', 'isAnimation (no anime match)');
|
||||
assertEqual(vars.vBitrate, '3000k', 'vBitrate (film default)');
|
||||
|
||||
@@ -6,7 +6,8 @@
|
||||
* Note: DTS detection logic is fully covered in unit tests (quick-logic-test.js).
|
||||
*
|
||||
* Expected:
|
||||
* gopKeyint = "50"
|
||||
* gopKeyint = "100"
|
||||
* gopMinKeyint = "25"
|
||||
* isAnimation = "true"
|
||||
* isMovie = "false"
|
||||
* x265Tune = "animation"
|
||||
@@ -40,7 +41,9 @@ async function run() {
|
||||
});
|
||||
const out1 = await analyzerPlugin(args1);
|
||||
const vars = out1.variables;
|
||||
assertEqual(vars.gopKeyint, '50', 'gopKeyint (2 x 25 = 50)');
|
||||
assertEqual(vars.gopKeyint, '100', 'gopKeyint (4 x 25 = 100)');
|
||||
assertEqual(vars.gopMinKeyint,'25', 'gopMinKeyint (1 x 25 = 25)');
|
||||
assertEqual(vars.gopSceneCut, '40', 'gopSceneCut (x265 default threshold)');
|
||||
assertEqual(vars.isMovie, 'false', 'isMovie=false (Sonarr path)');
|
||||
assertEqual(vars.isAnimation, 'true', 'isAnimation=true (Naruto in path)');
|
||||
assertEqual(vars.x265Tune, 'animation', 'x265Tune=animation');
|
||||
|
||||
Reference in new issue
Block a user