diff options
Diffstat (limited to 'TODO.md')
| -rw-r--r-- | TODO.md | 16 |
1 files changed, 15 insertions, 1 deletions
@@ -2,7 +2,21 @@ This file tracks prioritized tasks with detailed attack plans. -## Recently Completed +## Recently Completed (February 3, 2026) +- [x] **Music System Bug Fixes & Rock Track Implementation**: + - [x] **Fixed Critical Pool Exhaustion Bug**: Tracker pool slots were never freed, causing music to stop after 8 patterns. Implemented round-robin slot allocation with proper cleanup. + - [x] **Fixed Note Name Parsing**: Added automatic note-name-to-frequency conversion (E2→82.4Hz, A4→440Hz, etc.) in `tracker_compiler.cc`. Bass and melody now play correctly. + - [x] **Fixed Timing Mismatch**: Patterns are 4 beats (2 seconds at 120 BPM), but SCORE was triggering every 4 seconds. Updated to trigger every 2 seconds for continuous playback. + - [x] **Implemented Dynamic Resource Sizing**: `tracker_compiler` now analyzes scores to determine optimal MAX_VOICES/MAX_SPECTROGRAMS values (max simultaneous patterns: 5, recommended: 10 each). + - [x] **Created Rock Demo Track**: 11 patterns (drums, bass, melody, power chords) with 49 triggers over 25 seconds, using 14 drum samples + 10 procedural notes. + + **Known Issues**: + - Audio playback quality could be improved (some artifacts/cuts remain) + - Note synthesis parameters (duration, harmonics) use default values - need tuning for better sound + - Pattern overlaps might cause voice exhaustion under heavy load + - No dynamic volume/envelope control for melodic notes + +## Recently Completed (Previous) - [x] **Task #26: Shader Asset Testing & Validation**: - [x] **Attack Plan - `ShaderComposer` Unit Tests**: Add tests to `test_shader_composer.cc` to verify correct snippet registration, retrieval, and composition for various WGSL shader assets. - [x] **Attack Plan - Asset Content Validation**: Implement checks (e.g., in `test_assets.cc`) to ensure loaded WGSL shader assets are non-empty and contain expected entry points (`vs_main`, `fs_main`, `main` for compute shaders). |
