From e8e01b40f2055da387d594f2d01cf8ae532f8deb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miguel=20=C3=81ngel?= Date: Thu, 22 Oct 2026 11:29:58 -0400 Subject: [PATCH 1/6] fix: data-volume multiplies the volume lane in preview and render --- docs/reference/audio-effects.mdx | 4 ++ docs/reference/html-schema.mdx | 2 +- packages/core/src/audioGain.ts | 5 ++ packages/core/src/runtime/audioFx.ts | 21 ++++++--- packages/core/src/runtime/media.test.ts | 30 +++++++----- packages/core/src/runtime/media.ts | 8 ++-- .../src/runtime/webAudioTransport.test.ts | 8 ++-- .../core/src/runtime/webAudioTransport.ts | 47 +++++++------------ .../services/audioAutomationRender.test.ts | 7 ++- .../src/services/audioMixer.grouping.test.ts | 35 ++++++++++++++ .../engine/src/services/audioMixer.test.ts | 45 ++++++++++++++++++ packages/engine/src/services/audioMixer.ts | 19 ++++++-- packages/lint/src/rules/media.test.ts | 2 +- packages/lint/src/rules/media.ts | 2 +- scripts/package-size-budgets.json | 2 +- 15 files changed, 170 insertions(+), 67 deletions(-) diff --git a/docs/reference/audio-effects.mdx b/docs/reference/audio-effects.mdx index d2d60decf0c..24750f372ae 100644 --- a/docs/reference/audio-effects.mdx +++ b/docs/reference/audio-effects.mdx @@ -115,6 +115,10 @@ Preview and render agree on both clocks. which is about `3.981` — the same ceiling `data-volume` uses. A lane that boosts above unity is valid and will play; `1` is unity, not the maximum. +The lane multiplies `data-volume`, the way clip gain offsets volume keyframes in +an editor: `data-volume="0.5"` under a lane at `1` plays at `0.5`. The product +shares the same +12 dB ceiling. This holds on clips and on groups. + A lane holds its first value backwards to the start of its clip and its last value forward to the end. **A bed that begins before the voice therefore needs an explicit "no cut" point at `t: 0`, or it starts out already ducked.** Maximum 512 diff --git a/docs/reference/html-schema.mdx b/docs/reference/html-schema.mdx index 21e43a99a02..b9c08c42e7b 100644 --- a/docs/reference/html-schema.mdx +++ b/docs/reference/html-schema.mdx @@ -133,7 +133,7 @@ Audio has no visual lifecycle. | --- | --- | --- | | `data-media-start` / `data-playback-start` | Video, audio, nested composition | Offset into the source file, used by trim and split. Two groups of readers disagree, so the right name depends on the element. **Read only `data-media-start`:** the timing compiler, the HTML parser, `hyperframes validate` (which only inspects `