diff --git a/frontend/src/App.svelte b/frontend/src/App.svelte index 225804a..9dacc94 100644 --- a/frontend/src/App.svelte +++ b/frontend/src/App.svelte @@ -18,6 +18,7 @@ selectAll, setActiveSwitch, setFps, + setPreviewSpeed, setVideoUrl, snapToFrame, updateMarker, @@ -38,7 +39,12 @@ function rescheduleAudio() { if (!videoEl) return; - audioEngine.reschedule(videoEl.currentTime, app.markers, !videoEl.paused); + audioEngine.reschedule( + videoEl.currentTime, + app.markers, + !videoEl.paused, + app.previewSpeed, + ); lastScheduledTime = videoEl.currentTime; } @@ -60,11 +66,18 @@ const playing = app.isPlaying; void app.markers; void app.activeSwitch; + void app.previewSpeed; if (playing && Math.abs(t - lastScheduledTime) > 0.25) { rescheduleAudio(); } }); + $effect(() => { + const speed = app.previewSpeed; + controller?.setPlaybackRate(speed); + if (app.isPlaying) rescheduleAudio(); + }); + onMount(() => { const onKeyDown = (event: KeyboardEvent) => { if (isEditableTarget(event.target)) return; @@ -254,6 +267,22 @@ Ctrl+Space + +