Independent buses, effects and stems
Three OPM instances share one AudioContext. Each owns its voice budget and output saturation; the host routes them through separate gains and optional chorus/reverb on the accompaniment. The same effects process offline stems. Begin with a low device volume.
Offline stems
Web Audio sums bus outputs linearly after each engine's own headroom saturation. A monolithic single-engine render shares one saturation stage and one voice pool, so a stem sum is a different, valid mix rather than a bitwise equal render. More buses mean more AudioWorklet processors: measure CPU on target devices before adding them.