mirror of
https://github.com/heygen-com/hyperframes.git
synced 2026-09-10 22:20:14 +00:00
fix(core,studio): silence hidden audio in preview, and call it mute
Preview scheduled every audio[data-start] regardless of data-hidden, so a hidden audio track was silent in the export but audible in preview — render was already correct, this was a preview-only parity bug. Web Audio scheduling now skips (and re-syncs on toggle) any audio clip under a data-hidden ancestor; the HTMLMedia per-tick volume path folds the same check into effectiveVolume without touching el.muted (transport-owned). Ships unflagged since it's a bugfix restoring parity. Also relabels the eye as Mute/Muted on audio-only track rows (icon, strikethrough label, undo-history copy), gated behind the new audio-track-mute canary — the relabel is a copy/UX change, kept separate from the behavior fix above. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 5
parent
47fae4d49c
commit
58cb979f4d
@@ -89,6 +89,16 @@ export const CANARIES: readonly CanaryDefinition[] = [
|
||||
owner: "vance",
|
||||
sunsetAfter: "2026-11-15",
|
||||
},
|
||||
{
|
||||
name: "audio-track-mute",
|
||||
percentage: 0,
|
||||
description:
|
||||
"Label the visibility control as Mute on audio tracks, and make preview " +
|
||||
"silence data-hidden audio the way the render already does. Fixes a " +
|
||||
"shipped preview/export mismatch, so it is gated separately.",
|
||||
owner: "vance",
|
||||
sunsetAfter: "2026-12-15",
|
||||
},
|
||||
] as const;
|
||||
|
||||
export function findCanary(name: string): CanaryDefinition | undefined {
|
||||
|
||||
Reference in New Issue
Block a user