Ξ-W2-T1 re-review cleanup: soften ordering claim, bound bake guard fields, dedup gain/play-mode rationale, quiet foreign WrongProject noise
This commit is contained in:
@@ -298,9 +298,12 @@ void ReaSamplerProcessor::publishBuiltLocked(std::unique_ptr<LoadedInstrument> b
|
||||
graveyard_.end());
|
||||
LoadedInstrument* prev = live_.exchange(built.release());
|
||||
// A bake's reset gain lands here rather than at its call site, so the gain and the
|
||||
// capture it belongs to become audible to process() in the same instant. A tail still
|
||||
// ringing out of the drain does take the new gain — one gain sits above every snapshot,
|
||||
// the same shape as ONE BLOCK, ONE RATE (see builtSampleRate_).
|
||||
// capture it belongs to become audible to process() within one block of each other.
|
||||
// live_.exchange above and the gain store below are two independent relaxed atomics
|
||||
// with no ordering between them, so the honest bound is "within one block", not "the
|
||||
// same instant" — a tail still ringing out of the drain does take the new gain, one
|
||||
// gain sitting above every snapshot, the same shape as ONE BLOCK, ONE RATE (see
|
||||
// builtSampleRate_).
|
||||
if (gainAtNextPublish_) {
|
||||
setMasterGainLinear(*gainAtNextPublish_);
|
||||
gainAtNextPublish_.reset();
|
||||
|
||||
Reference in New Issue
Block a user