From 42a591cc979a4077aeca462a0fc8c7039479d892 Mon Sep 17 00:00:00 2001 From: ZGaetano Date: Thu, 4 Jun 2026 17:50:41 -0400 Subject: [PATCH] add patch script for call site + recorders.js growing_codec guard --- scripts/patch_avci_callsite.py | 52 ++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 scripts/patch_avci_callsite.py diff --git a/scripts/patch_avci_callsite.py b/scripts/patch_avci_callsite.py new file mode 100644 index 0000000..b51da56 --- /dev/null +++ b/scripts/patch_avci_callsite.py @@ -0,0 +1,52 @@ +import sys + +# ── capture-manager.js: pass growingCodecName at the call site ────────────── +path = '/opt/wild-dragon/services/capture/src/capture-manager.js' +src = open(path).read() + +old_call = """ hlsDir: (sourceType === 'sdi' || sourceType === 'deltacast') ? sdiHlsDir : null, + videoCodec, + audioMap, + interlaced: isInterlacedSource, + });""" +new_call = """ hlsDir: (sourceType === 'sdi' || sourceType === 'deltacast') ? sdiHlsDir : null, + videoCodec, + growingCodecName: gCodec, + audioMap, + interlaced: isInterlacedSource, + });""" + +if old_call in src: + src = src.replace(old_call, new_call, 1) + open(path, 'w').write(src) + print('OK capture-manager.js call site patched') +else: + print('FAIL capture-manager.js call site not found') + sys.exit(1) + +# ── recorders.js: expand binary growing_codec guard ───────────────────────── +path2 = '/opt/wild-dragon/services/mam-api/src/routes/recorders.js' +src2 = open(path2).read() + +# Sidecar env GROWING_CODEC= +old_env = "`GROWING_CODEC=${recorder.growing_codec === 'hevc_nvenc' ? 'hevc_nvenc' : 'avci100'}`," +new_env = "`GROWING_CODEC=${['avci50','avci100','avci200','hevc_nvenc'].includes(recorder.growing_codec) ? recorder.growing_codec : 'avci100'}`," + +# startBody growing_codec +old_body = " growing_codec: recorder.growing_codec === 'hevc_nvenc' ? 'hevc_nvenc' : 'avci100'," +new_body = " growing_codec: ['avci50','avci100','avci200','hevc_nvenc'].includes(recorder.growing_codec) ? recorder.growing_codec : 'avci100'," + +ok = True +for old, new, label in [(old_env, new_env, 'GROWING_CODEC env'), (old_body, new_body, 'startBody growing_codec')]: + if old in src2: + src2 = src2.replace(old, new, 1) + print(f'OK recorders.js {label}') + else: + print(f'FAIL recorders.js {label}') + ok = False + +if ok: + open(path2, 'w').write(src2) + print('recorders.js written OK') +else: + sys.exit(1)