// Generated by tracker_compiler. Do not edit. #include "audio/tracker.h" #include "generated/assets.h" const NoteParams g_tracker_samples[] = { {0}, // ASSET_KICK_1 (ASSET) {0}, // ASSET_SNARE_1 (ASSET) {0}, // ASSET_CRASH_1 (ASSET) {440.0f, 0.50f, 1.0f, 0.01f, 0.0f, 0.0f, 0.0f, 3, 0.6f, 0.0f, 0.0f}, // NOTE_A4 }; const uint32_t g_tracker_samples_count = 4; const AssetId g_tracker_sample_assets[] = { AssetId::ASSET_KICK_1, AssetId::ASSET_SNARE_1, AssetId::ASSET_CRASH_1, AssetId::ASSET_LAST_ID, }; static const TrackerEvent PATTERN_EVENTS_drums_basic[] = { {0.00f, 0, 1.0f, 0.0f}, {0.00f, 3, 0.5f, 0.0f}, {0.25f, 1, 0.9f, 0.0f}, {0.50f, 0, 1.0f, 0.0f}, {0.75f, 1, 0.9f, 0.0f}, }; static const TrackerEvent PATTERN_EVENTS_drums_with_crash[] = { {0.00f, 0, 1.0f, 0.0f}, {0.00f, 2, 0.9f, 0.0f}, {0.00f, 3, 0.5f, 0.0f}, {0.25f, 1, 0.9f, 0.0f}, {0.50f, 0, 1.0f, 0.0f}, {0.75f, 1, 0.9f, 0.0f}, }; const TrackerPattern g_tracker_patterns[] = { {PATTERN_EVENTS_drums_basic, 5, 1.00f}, // drums_basic {PATTERN_EVENTS_drums_with_crash, 6, 1.00f}, // drums_with_crash }; const uint32_t g_tracker_patterns_count = 2; static const TrackerPatternTrigger SCORE_TRIGGERS[] = { {0.0f, 0}, {1.0f, 0}, {2.0f, 1}, {3.0f, 0}, {4.0f, 0}, {5.0f, 0}, {6.0f, 1}, {7.0f, 0}, }; const TrackerScore g_tracker_score = {SCORE_TRIGGERS, 8, 120.0f}; // ============================================================ // RESOURCE USAGE ANALYSIS (for synth.h configuration) // ============================================================ // Total samples: 4 (3 assets + 1 generated notes) // Max simultaneous pattern triggers: 1 // Estimated max polyphony: 5 voices // // REQUIRED (minimum to avoid pool exhaustion): // MAX_VOICES: 5 // MAX_SPECTROGRAMS: 8 (no caching) // // RECOMMENDED (with 50% safety margin): // MAX_VOICES: 10 // MAX_SPECTROGRAMS: 12 (no caching) // // NOTE: With spectrogram caching by note parameters, // MAX_SPECTROGRAMS could be reduced to ~4 // ============================================================