fix: NAM amp level param now controls input drive, JACK period 256, toggle API matching
This commit is contained in:
@@ -698,10 +698,24 @@ class AudioPipeline:
|
||||
return self._apply_volume(buf, params, fx_state)
|
||||
case FXType.NAM_AMP:
|
||||
if self.nam.is_loaded:
|
||||
import numpy as np
|
||||
import os as _os
|
||||
_os.system('echo "PIPELINE: NAM_AMP is_loaded=True buf_peak={:.6f}" >> /tmp/pipeline_debug.log'.format(float(np.max(np.abs(buf)))))
|
||||
in_rms = 20 * np.log10(np.sqrt(np.mean(buf**2)) + 1e-10)
|
||||
processed = self.nam.process(buf)
|
||||
_os.system('echo "PIPELINE: NAM_AMP processed peak={:.6f}" >> /tmp/pipeline_debug.log'.format(float(np.max(np.abs(processed)))))
|
||||
out_rms = 20 * np.log10(np.sqrt(np.mean(processed**2)) + 1e-10)
|
||||
logger.debug("NAM %s: in=%.1fdBFS out=%.1fdBFS gain=%.1fdB",
|
||||
getattr(self.nam, '_loaded_path', '?'),
|
||||
in_rms, out_rms, out_rms - in_rms)
|
||||
if self.nam._crossfade_buf is not None:
|
||||
processed = self.nam.apply_crossfade(processed)
|
||||
level = params.get("level", 0.75)
|
||||
attenuated = buf * (level * 2.0)
|
||||
processed = self.nam.process(attenuated)
|
||||
return processed
|
||||
_os.system('echo "PIPELINE: NAM_AMP is_loaded=False" >> /tmp/pipeline_debug.log')
|
||||
logger.debug("NAM_AMP: engine not loaded, passing through")
|
||||
return buf
|
||||
case FXType.IR_CAB:
|
||||
if self.ir.is_loaded:
|
||||
|
||||
Reference in New Issue
Block a user