Skip to content

0.11.1: stop playback on project switch, Follow playhead, faster Play/Stop - #5

Merged
postmanpat-303 merged 6 commits into
mainfrom
fix/playback-0.11.1
Oct 20, 2026
Merged

postmanpat-303 merged 6 commits into
mainfrom
fix/playback-0.11.1

Conversation

@postmanpat-303

Copy link
Copy Markdown
Owner

Fixes:

  • New / Open / Close / Recover stop playback of the old project first (after the unsaved-changes prompt; a running recording is stopped and its take saved first). New File > Close Project (Ctrl+W).
  • Follow playhead: smooth timeline scroll while playing/recording; FOLLOW LED, View menu, F; on by default, persisted; pauses on manual scroll/drag.
  • Play ~30 ms (was 120 ms–1 s): persistent shared-mode output stream, cached renders/gains, decoded sources kept. Stop: 6 ms de-click fade. Playing waveform no longer repaints its canvas at 30 Hz.

Tests: TS 157, Rust 71, svelte-check clean.

…ache rendered audio

- playback: persistent Deck (shared mode only) + per-play render sessions; no device lookup,
  stream build or 15 ms sleep on Play; Ramp state machine in the callback (6 ms fade on stop/pause,
  ramp-in for mid-file starts, bit-exact pass-through otherwise, whole frames only on underrun)
- engine: fade-out stop, wait for flush before restart, reopen on stream error / device loss,
  close after 10 min idle; PrepareOutput warm-up
- PlayCache: dry renders + Normalize/Loudness gains keyed by content, bounded; import decodes
  through DecodeCache; prerender_clips; release_project_audio frees both caches
- settings.follow_playhead (default on) + View > Follow Playhead check item, File > Close Project
- STREAMWAVE_PERF latency tracing (off by default)
- tests: ramp, play cache, follow setting
…F); warm play cache

- switchProject: recording prompt -> stop and wait for the take -> unsaved prompt -> pick ->
  release audio -> replace; cancelling anywhere leaves playback alone
- Follow: LED toggle on the transport row, View menu, F; rAF loop (reads then writes), smooth
  interpolated playhead for ruler + preview; pauses on manual scroll/drag
- optimistic Stop in the UI; background prerender of the active track
…ayhead, faster Play/Stop and stopping playback when switching projects
@postmanpat-303
postmanpat-303 merged commit b94571c into main Oct 20, 2026
1 of 2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant