feat: implement mute video tracks

This commit is contained in:
Maze Winther
2025-08-13 00:52:19 +02:00
parent a97eb26fa4
commit 71b6718337
4 changed files with 55 additions and 86 deletions
@@ -235,7 +235,7 @@ export function PreviewPanel() {
const activeElements: ActiveElement[] = [];
// Iterate tracks from bottom to top so topmost track renders last (on top)
;[...tracks].reverse().forEach((track) => {
[...tracks].reverse().forEach((track) => {
track.elements.forEach((element) => {
if (element.hidden) return;
const elementStart = element.startTime;
@@ -436,7 +436,7 @@ export function PreviewPanel() {
trimStart={element.trimStart}
trimEnd={element.trimEnd}
clipDuration={element.duration}
trackMuted={elementData.track.muted}
trackMuted={element.muted || elementData.track.muted}
/>
</div>
);
@@ -462,14 +462,18 @@ export function PreviewPanel() {
// Audio elements (no visual representation)
if (mediaItem.type === "audio") {
return (
<div key={element.id} className="absolute inset-0" style={{ pointerEvents: "none" }}>
<div
key={element.id}
className="absolute inset-0"
style={{ pointerEvents: "none" }}
>
<AudioPlayer
src={mediaItem.url!}
clipStartTime={element.startTime}
trimStart={element.trimStart}
trimEnd={element.trimEnd}
clipDuration={element.duration}
trackMuted={elementData.track.muted}
trackMuted={element.muted || elementData.track.muted}
/>
</div>
);