summaryrefslogtreecommitdiff
path: root/workspaces/main/timeline.seq
diff options
context:
space:
mode:
authorskal <pascal.massimino@gmail.com>2026-02-12 00:30:56 +0100
committerskal <pascal.massimino@gmail.com>2026-02-12 00:30:56 +0100
commit89c46872127aaede53362f64cdc3fe9b3164650b (patch)
tree844882239088b35f2b1b555029780d26c6b4cfe8 /workspaces/main/timeline.seq
parent4e0b7c040c3e45c66767b936a8058f76bcc31bf1 (diff)
feat: implement beat-based timing system
BREAKING CHANGE: Timeline format now uses beats as default unit ## Core Changes **Uniform Structure (32 bytes maintained):** - Added `beat_time` (absolute beats for musical animation) - Added `beat_phase` (fractional 0-1 for smooth oscillation) - Renamed `beat` → `beat_phase` - Kept `time` (physical seconds, tempo-independent) **Seq Compiler:** - Default: all numbers are beats (e.g., `5`, `16.5`) - Explicit seconds: `2.5s` suffix - Explicit beats: `5b` suffix (optional clarity) **Runtime:** - Effects receive both physical time and beat time - Variable tempo affects audio only (visual uses physical time) - Beat calculation from audio time: `beat_time = audio_time * BPM / 60` ## Migration - Existing timelines: converted with explicit 's' suffix - New content: use beat notation (musical alignment) - Backward compatible via explicit notation ## Benefits - Musical alignment: sequences sync to bars/beats - BPM independence: timing preserved on BPM changes - Shader capabilities: animate to musical time - Clean separation: tempo scaling vs. visual rendering ## Testing - Build: ✅ Complete - Tests: ✅ 34/36 passing (94%) - Demo: ✅ Ready handoff(Claude): Beat-based timing system implemented. Variable tempo only affects audio sample triggering. Visual effects use physical_time (constant) and beat_time (musical). Shaders can now animate to beats. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Diffstat (limited to 'workspaces/main/timeline.seq')
-rw-r--r--workspaces/main/timeline.seq164
1 files changed, 82 insertions, 82 deletions
diff --git a/workspaces/main/timeline.seq b/workspaces/main/timeline.seq
index c3e2316..ab9e40d 100644
--- a/workspaces/main/timeline.seq
+++ b/workspaces/main/timeline.seq
@@ -2,104 +2,104 @@
# Generated by Timeline Editor
# BPM 120
-SEQUENCE 0.00 0
- EFFECT - FlashCubeEffect 0.00 2.44
- EFFECT + FlashEffect 0.00 1.00 color=1.0,0.5,0.5 decay=0.95
- EFFECT + FadeEffect 0.10 1.00
- EFFECT + SolarizeEffect 0.00 2.00
- EFFECT + VignetteEffect 0.00 2.50 radius=0.6 softness=0.1
+SEQUENCE 0.00s 0
+EFFECT - FlashCubeEffect 0.00s 2.44s
+EFFECT + FlashEffect 0.00s 1.00s color=1.0,0.5,0.5 decay=0.95
+EFFECT + FadeEffect 0.10s 1.00s
+EFFECT + SolarizeEffect 0.00s 2.00s
+EFFECT + VignetteEffect 0.00s 2.50s radius=0.6 softness=0.1
-SEQUENCE 2.50 0 "rotating cube"
- EFFECT + CircleMaskEffect 0.00 4.00 0.50
- EFFECT + RotatingCubeEffect 0.00 4.00
- EFFECT + GaussianBlurEffect 1.00 2.00 strength=1.0
- EFFECT + GaussianBlurEffect 3.00 4.00 strength=2.0
+SEQUENCE 2.50s 0 "rotating cube"
+EFFECT + CircleMaskEffect 0.00s 4.00s 0.50
+EFFECT + RotatingCubeEffect 0.00s 4.00s
+EFFECT + GaussianBlurEffect 1.00s 2.00s strength=1.0
+EFFECT + GaussianBlurEffect 3.00s 4.00s strength=2.0
-SEQUENCE 5.93 0
- EFFECT - FlashCubeEffect 0.11 1.45
- EFFECT + FlashEffect 0.00 0.20
+SEQUENCE 5.93s 0
+EFFECT - FlashCubeEffect 0.11s 1.45s
+EFFECT + FlashEffect 0.00s 0.20s
-SEQUENCE 6.90 1 "spray"
- EFFECT + ParticleSprayEffect 0.00 2.00
- EFFECT + ParticlesEffect 0.00 3.00
- EFFECT = GaussianBlurEffect 0.00 2.00 strength=3.0
+SEQUENCE 6.90s 1 "spray"
+EFFECT + ParticleSprayEffect 0.00s 2.00s
+EFFECT + ParticlesEffect 0.00s 3.00s
+EFFECT = GaussianBlurEffect 0.00s 2.00s strength=3.0
-SEQUENCE 8.50 2 "Hybrid3D"
- EFFECT + ThemeModulationEffect 0.00 2.00
- EFFECT + HeptagonEffect 0.20 2.00
- EFFECT + ParticleSprayEffect 0.00 2.00
- EFFECT = ParticlesEffect 0.00 2.00
- EFFECT + Hybrid3DEffect 0.00 2.00
- EFFECT + GaussianBlurEffect 0.00 2.00
- EFFECT + CNNEffect 0.0 2.0 layers=3 blend=.9
+SEQUENCE 8.50s 2 "Hybrid3D"
+EFFECT + ThemeModulationEffect 0.00s 2.00s
+EFFECT + HeptagonEffect 0.20s 2.00s
+EFFECT + ParticleSprayEffect 0.00s 2.00s
+EFFECT = ParticlesEffect 0.00s 2.00s
+EFFECT + Hybrid3DEffect 0.00s 2.00s
+EFFECT + GaussianBlurEffect 0.00s 2.00s
+EFFECT + CNNEffect 0.0s 2.0s layers=3 blend=.9
# EFFECT + ChromaAberrationEffect 0.00 1.50 offset=0.01 angle=1.57
-SEQUENCE 10.50 0 "CNN effect"
- EFFECT + HeptagonEffect 0.0 12.00
+SEQUENCE 10.50s 0 "CNN effect"
+EFFECT + HeptagonEffect 0.0s 12.00s
# EFFECT + RotatingCubeEffect 0.00 12.0
# EFFECT + Hybrid3DEffect 0.00 12.00
- EFFECT + Scene1Effect 0.0 12.0
- EFFECT + CNNEffect 1.0 12.0 layers=3 blend=.5
+EFFECT + Scene1Effect 0.0s 12.0s
+EFFECT + CNNEffect 1.0s 12.0s layers=3 blend=.5
-SEQUENCE 22.0 0 "buggy"
- EFFECT + HeptagonEffect 0.00 0.20
- EFFECT + FadeEffect 0.11 1.01
+SEQUENCE 22.0s 0 "buggy"
+EFFECT + HeptagonEffect 0.00s 0.20s
+EFFECT + FadeEffect 0.11s 1.01s
-SEQUENCE 22.14 3
- EFFECT + ThemeModulationEffect 0.00 4.00
- EFFECT = HeptagonEffect 0.00 4.00
- EFFECT + GaussianBlurEffect 0.00 5.00 strength=1.5
- EFFECT + ChromaAberrationEffect 0.00 5.00 offset=0.03 angle=0.785
- EFFECT + SolarizeEffect 0.00 5.00
+SEQUENCE 22.14s 3
+EFFECT + ThemeModulationEffect 0.00s 4.00s
+EFFECT = HeptagonEffect 0.00s 4.00s
+EFFECT + GaussianBlurEffect 0.00s 5.00s strength=1.5
+EFFECT + ChromaAberrationEffect 0.00s 5.00s offset=0.03 angle=0.785
+EFFECT + SolarizeEffect 0.00s 5.00s
-SEQUENCE 23.00 2
- EFFECT - FlashCubeEffect 0.20 1.50
- EFFECT + HeptagonEffect 0.00 2.00
- EFFECT + ParticleSprayEffect 0.00 2.00
- EFFECT + ParticlesEffect 0.00 2.00
+SEQUENCE 23.00s 2
+EFFECT - FlashCubeEffect 0.20s 1.50s
+EFFECT + HeptagonEffect 0.00s 2.00s
+EFFECT + ParticleSprayEffect 0.00s 2.00s
+EFFECT + ParticlesEffect 0.00s 2.00s
-SEQUENCE 22.75 2 "Fade"
- EFFECT - FlashCubeEffect 0.20 1.50
- EFFECT + FlashEffect 0.00 1.00
+SEQUENCE 22.75s 2 "Fade"
+EFFECT - FlashCubeEffect 0.20s 1.50s
+EFFECT + FlashEffect 0.00s 1.00s
-SEQUENCE 23.88 10
- EFFECT - FlashCubeEffect 0.20 1.50
- EFFECT + GaussianBlurEffect 0.00 2.00
- EFFECT + FlashEffect 0.00 0.20
- EFFECT = FlashEffect 0.50 0.20
+SEQUENCE 23.88s 10
+EFFECT - FlashCubeEffect 0.20s 1.50s
+EFFECT + GaussianBlurEffect 0.00s 2.00s
+EFFECT + FlashEffect 0.00s 0.20s
+EFFECT = FlashEffect 0.50s 0.20s
-SEQUENCE 25.59 1
- EFFECT + ThemeModulationEffect 0.00 8.00
- EFFECT + HeptagonEffect 0.20 2.00
- EFFECT + ParticleSprayEffect 0.00 8.00
- EFFECT + Hybrid3DEffect 0.00 8.06
- EFFECT + GaussianBlurEffect 0.00 8.00
- EFFECT + ChromaAberrationEffect 0.00 8.14
- EFFECT + SolarizeEffect 0.00 7.88
+SEQUENCE 25.59s 1
+EFFECT + ThemeModulationEffect 0.00s 8.00s
+EFFECT + HeptagonEffect 0.20s 2.00s
+EFFECT + ParticleSprayEffect 0.00s 8.00s
+EFFECT + Hybrid3DEffect 0.00s 8.06s
+EFFECT + GaussianBlurEffect 0.00s 8.00s
+EFFECT + ChromaAberrationEffect 0.00s 8.14s
+EFFECT + SolarizeEffect 0.00s 7.88s
-SEQUENCE 33.08 0
- EFFECT + ThemeModulationEffect 0.00 3.00
- EFFECT + VignetteEffect 0.00 3.00 radius=0.6 softness=0.3
- EFFECT + SolarizeEffect 0.00 3.00
+SEQUENCE 33.08s 0
+EFFECT + ThemeModulationEffect 0.00s 3.00s
+EFFECT + VignetteEffect 0.00s 3.00s radius=0.6 softness=0.3
+EFFECT + SolarizeEffect 0.00s 3.00s
-SEQUENCE 35.31 0
- EFFECT + ThemeModulationEffect 0.00 4.00
- EFFECT + HeptagonEffect 0.20 2.00
- EFFECT + GaussianBlurEffect 0.00 8.00
- EFFECT + SolarizeEffect 0.00 2.00
+SEQUENCE 35.31s 0
+EFFECT + ThemeModulationEffect 0.00s 4.00s
+EFFECT + HeptagonEffect 0.20s 2.00s
+EFFECT + GaussianBlurEffect 0.00s 8.00s
+EFFECT + SolarizeEffect 0.00s 2.00s
-SEQUENCE 42.29 0
- EFFECT + ThemeModulationEffect 0.00 6.00
- EFFECT = HeptagonEffect 0.20 2.00
- EFFECT + Hybrid3DEffect 0.00 4.00
- EFFECT + ParticleSprayEffect 0.00 5.50
- EFFECT + HeptagonEffect 0.00 8.00
- EFFECT + ChromaAberrationEffect 0.00 7.50
- EFFECT + GaussianBlurEffect 0.00 8.00
+SEQUENCE 42.29s 0
+EFFECT + ThemeModulationEffect 0.00s 6.00s
+EFFECT = HeptagonEffect 0.20s 2.00s
+EFFECT + Hybrid3DEffect 0.00s 4.00s
+EFFECT + ParticleSprayEffect 0.00s 5.50s
+EFFECT + HeptagonEffect 0.00s 8.00s
+EFFECT + ChromaAberrationEffect 0.00s 7.50s
+EFFECT + GaussianBlurEffect 0.00s 8.00s
-SEQUENCE 50.02 0
- EFFECT + ThemeModulationEffect 0.00 4.00
- EFFECT + HeptagonEffect 0.00 9.50
- EFFECT + ChromaAberrationEffect 0.00 9.00
- EFFECT + GaussianBlurEffect 0.00 8.00
+SEQUENCE 50.02s 0
+EFFECT + ThemeModulationEffect 0.00s 4.00s
+EFFECT + HeptagonEffect 0.00s 9.50s
+EFFECT + ChromaAberrationEffect 0.00s 9.00s
+EFFECT + GaussianBlurEffect 0.00s 8.00s