52 lines
2 KiB
Python
52 lines
2 KiB
Python
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)
|