Skip to content

feat: implement transport pause and playhead#21

Merged
britle20 merged 3 commits into
developfrom
feat/16-transport-playhead
Jun 6, 2026
Merged

feat: implement transport pause and playhead#21
britle20 merged 3 commits into
developfrom
feat/16-transport-playhead

Conversation

@britle20

@britle20 britle20 commented Jun 6, 2026

Copy link
Copy Markdown
Collaborator

Summary

Closes #16

Implements distinct paused transport behavior and runtime editor playhead display for the M1 clip editor.

Changes

  • Adds paused scheduler state and startTick resume support.
  • Exposes audio engine pauseLoop() separately from stopLoop().
  • Updates the transport button so playing shows pause, pause preserves the current tick, and stop resets to tick 0.
  • Renders a vertical piano roll playhead and a 16-step drum playhead indicator.
  • Documents the transport API/runtime playhead behavior.

Testing

  • npm run typecheck --if-present
  • npm run lint --if-present
  • npm run test --if-present
  • npm run build --if-present

Screenshots

Not included. Dev server was started and the app returned HTTP 200.

Notes / Limitations

  • Visual playhead timing is driven by requestAnimationFrame and reads audio engine state; it does not drive audio scheduling.
  • Web Audio events already submitted inside the short schedule-ahead window may still sound briefly after pause/stop.
  • Vite used port 5174 locally because 5173 was already occupied.

Follow-up

@britle20 britle20 merged commit 458c47b into develop Jun 6, 2026
1 check 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