phase2: fix velocity double-scaling in bridge job, bank/program parity, golden RMS test

- render_offline: send velocity as float 0..1 (RenderJob.cpp scales *127);
  old int(0.8*127) was scaled again -> clamp 127, velocity ignored
- forward soundfont_bank/program into bridge job (presence-based, matches
  midi_events_to_messages)
- new tests: bridge branch dispatch (SF_RENDER_ENGINE=bridge -> 404),
  bridge vs pedalboard golden RMS comparison (plan section 6)
This commit is contained in:
2026-08-17 11:04:01 +07:00
parent 235dee103d
commit 3d963eb8dd
3 changed files with 46 additions and 3 deletions
+2
View File
@@ -995,6 +995,8 @@ def _render_midi_notes_pedalboard(instrument_id: str, notes: list, bpm: float,
preset_id=preset_id,
preset_path=preset_path,
preset_data_b64=preset_data_b64,
soundfont_bank=soundfont_bank,
soundfont_program=soundfont_program,
)
if not HAS_PEDALBOARD:
raise HTTPException(status_code=501, detail="pedalboard không khả dụng trên máy này")