feat(06-02): add segment overlay canvas rendering and click interaction

- Create lightsync/frontend/timeline/segments.js with SegmentOverlay class
- Integrate SegmentOverlay into timeline.js render pipeline (between row banding and waveform)
- Add loadSegments method to TimelineCanvas
- Wire loadSegments call in app.js loadedmetadata handler
This commit is contained in:
Claude
2026-04-07 11:41:41 +00:00
parent d339ba588d
commit 48e15ee013
3 changed files with 138 additions and 1 deletions

View File

@@ -492,6 +492,8 @@ function initTimeline() {
const path = `/app/shows/${filename}`;
timeline.audioDuration = audio.duration;
timeline.loadWaveform(path);
// Load structural segments for overlay
timeline.loadSegments(path);
// Load beats and update BPM display when analysis completes
timeline.loadBeats(path).then(() => {
if (timeline.beatGrid.tempoBpm) {