diff options
Diffstat (limited to 'src/generated/music_data.cc')
| -rw-r--r-- | src/generated/music_data.cc | 346 |
1 files changed, 102 insertions, 244 deletions
diff --git a/src/generated/music_data.cc b/src/generated/music_data.cc index 7db925a..8d6f482 100644 --- a/src/generated/music_data.cc +++ b/src/generated/music_data.cc @@ -7,304 +7,162 @@ const NoteParams g_tracker_samples[] = { { 0 }, // ASSET_KICK_1 (ASSET) { 0 }, // ASSET_KICK_2 (ASSET) - { 0 }, // ASSET_KICK_2 (ASSET) { 0 }, // ASSET_SNARE_1 (ASSET) { 0 }, // ASSET_SNARE_2 (ASSET) { 0 }, // ASSET_SNARE_3 (ASSET) - { 0 }, // ASSET_SNARE_3 (ASSET) - { 0 }, // ASSET_HIHAT_1 (ASSET) - { 0 }, // ASSET_HIHAT_2 (ASSET) - { 0 }, // ASSET_HIHAT_3 (ASSET) - { 0 }, // ASSET_HIHAT_3 (ASSET) - { 0 }, // ASSET_CRASH_1 (ASSET) { 0 }, // ASSET_RIDE_1 (ASSET) - { 0 }, // ASSET_SPLASH_1 (ASSET) - { 0 }, // ASSET_BASS_1 (ASSET) - { 164.8f, 0.50f, 1.0f, 0.01f, 0.0f, 0.0f, 0.0f, 3, 0.6f, 0.0f, 0.0f }, // NOTE_E3 - { 196.0f, 0.50f, 1.0f, 0.01f, 0.0f, 0.0f, 0.0f, 3, 0.6f, 0.0f, 0.0f }, // NOTE_G3 - { 146.8f, 0.50f, 1.0f, 0.01f, 0.0f, 0.0f, 0.0f, 3, 0.6f, 0.0f, 0.0f }, // NOTE_D3 - { 65.4f, 0.50f, 1.0f, 0.01f, 0.0f, 0.0f, 0.0f, 3, 0.6f, 0.0f, 0.0f }, // NOTE_C2 - { 73.4f, 0.50f, 1.0f, 0.01f, 0.0f, 0.0f, 0.0f, 3, 0.6f, 0.0f, 0.0f }, // NOTE_D2 }; -const uint32_t g_tracker_samples_count = 20; +const uint32_t g_tracker_samples_count = 6; const AssetId g_tracker_sample_assets[] = { AssetId::ASSET_KICK_1, AssetId::ASSET_KICK_2, - AssetId::ASSET_KICK_2, AssetId::ASSET_SNARE_1, AssetId::ASSET_SNARE_2, AssetId::ASSET_SNARE_3, - AssetId::ASSET_SNARE_3, - AssetId::ASSET_HIHAT_1, - AssetId::ASSET_HIHAT_2, - AssetId::ASSET_HIHAT_3, - AssetId::ASSET_HIHAT_3, - AssetId::ASSET_CRASH_1, AssetId::ASSET_RIDE_1, - AssetId::ASSET_SPLASH_1, - AssetId::ASSET_BASS_1, - AssetId::ASSET_LAST_ID, - AssetId::ASSET_LAST_ID, - AssetId::ASSET_LAST_ID, - AssetId::ASSET_LAST_ID, - AssetId::ASSET_LAST_ID, }; -static const TrackerEvent PATTERN_EVENTS_kick_basic[] = { - { 0.00f, 0, 1.0f, 0.0f }, - { 0.50f, 0, 1.0f, 0.0f }, -}; -static const TrackerEvent PATTERN_EVENTS_kick_varied[] = { - { 0.00f, 2, 1.0f, 0.0f }, - { 0.50f, 0, 0.9f, 0.0f }, -}; -static const TrackerEvent PATTERN_EVENTS_kick_dense[] = { +static const TrackerEvent PATTERN_EVENTS_kick_1[] = { { 0.00f, 0, 1.0f, 0.0f }, - { 0.12f, 2, 0.6f, -0.2f }, - { 0.25f, 0, 0.9f, 0.0f }, - { 0.38f, 2, 0.6f, 0.2f }, { 0.50f, 0, 1.0f, 0.0f }, - { 0.62f, 2, 0.6f, -0.2f }, - { 0.75f, 0, 0.9f, 0.0f }, - { 0.88f, 2, 0.6f, 0.2f }, -}; -static const TrackerEvent PATTERN_EVENTS_snare_basic[] = { - { 0.25f, 3, 1.1f, 0.1f }, - { 0.75f, 3, 1.1f, 0.1f }, -}; -static const TrackerEvent PATTERN_EVENTS_snare_varied[] = { - { 0.25f, 4, 1.0f, -0.1f }, - { 0.75f, 0, 1.1f, 0.1f }, }; -static const TrackerEvent PATTERN_EVENTS_snare_dense[] = { - { 0.25f, 3, 1.1f, 0.1f }, - { 0.62f, 6, 0.9f, 0.0f }, - { 0.88f, 0, 0.9f, 0.0f }, +static const TrackerEvent PATTERN_EVENTS_kick_2[] = { + { 0.00f, 1, 1.0f, 0.0f }, + { 0.50f, 1, 1.0f, 0.0f }, }; -static const TrackerEvent PATTERN_EVENTS_hihat_basic[] = { - { 0.00f, 8, 0.7f, -0.3f }, - { 0.12f, 7, 0.3f, 0.3f }, - { 0.25f, 8, 0.7f, -0.3f }, - { 0.38f, 7, 0.3f, 0.3f }, - { 0.50f, 8, 0.7f, -0.3f }, - { 0.62f, 7, 0.3f, 0.3f }, - { 0.75f, 8, 0.7f, -0.3f }, - { 0.88f, 7, 0.3f, 0.3f }, +static const TrackerEvent PATTERN_EVENTS_snare_1[] = { + { 0.25f, 2, 1.0f, 0.0f }, + { 0.75f, 2, 1.0f, 0.0f }, }; -static const TrackerEvent PATTERN_EVENTS_hihat_varied[] = { - { 0.00f, 10, 0.7f, -0.3f }, - { 0.12f, 7, 0.3f, 0.3f }, - { 0.25f, 0, 0.6f, -0.2f }, - { 0.38f, 7, 0.3f, 0.3f }, - { 0.50f, 10, 0.7f, -0.3f }, - { 0.62f, 7, 0.3f, 0.3f }, - { 0.75f, 0, 0.6f, -0.2f }, - { 0.88f, 7, 0.3f, 0.3f }, +static const TrackerEvent PATTERN_EVENTS_snare_2[] = { + { 0.25f, 3, 1.0f, 0.0f }, + { 0.75f, 3, 1.0f, 0.0f }, }; -static const TrackerEvent PATTERN_EVENTS_crash[] = { - { 0.00f, 11, 0.9f, 0.0f }, +static const TrackerEvent PATTERN_EVENTS_snare_3[] = { + { 0.25f, 4, 1.0f, 0.0f }, + { 0.75f, 4, 1.0f, 0.0f }, }; static const TrackerEvent PATTERN_EVENTS_ride[] = { - { 0.00f, 12, 0.8f, 0.2f }, -}; -static const TrackerEvent PATTERN_EVENTS_ride_fast[] = { - { 0.00f, 12, 0.8f, 0.2f }, - { 0.12f, 12, 0.6f, 0.2f }, - { 0.25f, 12, 0.8f, 0.2f }, - { 0.38f, 12, 0.6f, 0.2f }, - { 0.50f, 12, 0.8f, 0.2f }, - { 0.62f, 12, 0.6f, 0.2f }, - { 0.75f, 12, 0.8f, 0.2f }, - { 0.88f, 12, 0.6f, 0.2f }, -}; -static const TrackerEvent PATTERN_EVENTS_splash[] = { - { 0.00f, 13, 0.7f, -0.2f }, -}; -static const TrackerEvent PATTERN_EVENTS_bass_e_soft[] = { - { 0.00f, 15, 0.4f, 0.0f }, - { 0.50f, 15, 0.3f, 0.0f }, -}; -static const TrackerEvent PATTERN_EVENTS_bass_e[] = { - { 0.00f, 15, 0.5f, 0.0f }, - { 0.25f, 15, 0.4f, 0.0f }, - { 0.50f, 15, 0.5f, 0.0f }, - { 0.62f, 15, 0.3f, 0.0f }, - { 0.75f, 15, 0.4f, 0.0f }, -}; -static const TrackerEvent PATTERN_EVENTS_bass_eg[] = { - { 0.00f, 15, 0.5f, 0.0f }, - { 0.25f, 15, 0.4f, 0.0f }, - { 0.50f, 16, 0.5f, 0.0f }, - { 0.75f, 16, 0.4f, 0.0f }, -}; -static const TrackerEvent PATTERN_EVENTS_bass_progression[] = { - { 0.00f, 15, 0.5f, 0.0f }, - { 0.25f, 17, 0.4f, 0.0f }, - { 0.50f, 18, 0.5f, 0.0f }, - { 0.75f, 16, 0.4f, 0.0f }, -}; -static const TrackerEvent PATTERN_EVENTS_bass_synco_1[] = { - { 0.00f, 15, 0.6f, 0.0f }, - { 0.06f, 15, 0.5f, 0.1f }, - { 0.19f, 15, 0.6f, -0.1f }, - { 0.38f, 15, 0.5f, 0.0f }, - { 0.50f, 15, 0.6f, 0.0f }, - { 0.69f, 16, 0.6f, 0.1f }, - { 0.81f, 15, 0.5f, 0.0f }, -}; -static const TrackerEvent PATTERN_EVENTS_bass_synco_2[] = { - { 0.00f, 15, 0.6f, 0.0f }, - { 0.12f, 17, 0.6f, -0.1f }, - { 0.31f, 15, 0.5f, 0.1f }, - { 0.44f, 17, 0.5f, 0.0f }, - { 0.50f, 18, 0.6f, 0.0f }, - { 0.62f, 15, 0.5f, 0.1f }, - { 0.75f, 16, 0.6f, 0.0f }, - { 0.88f, 15, 0.5f, -0.1f }, -}; -static const TrackerEvent PATTERN_EVENTS_bass_synco_3[] = { - { 0.00f, 15, 0.6f, 0.0f }, - { 0.06f, 15, 0.5f, 0.0f }, - { 0.12f, 15, 0.6f, 0.1f }, - { 0.25f, 16, 0.6f, 0.0f }, - { 0.38f, 15, 0.5f, -0.1f }, - { 0.56f, 19, 0.6f, 0.0f }, - { 0.69f, 15, 0.5f, 0.1f }, - { 0.88f, 15, 0.6f, 0.0f }, + { 0.00f, 5, 0.7f, 0.2f }, + { 0.25f, 5, 0.6f, 0.2f }, + { 0.50f, 5, 0.7f, 0.2f }, + { 0.75f, 5, 0.6f, 0.2f }, }; const TrackerPattern g_tracker_patterns[] = { - { PATTERN_EVENTS_kick_basic, 2, 1.00f }, // kick_basic - { PATTERN_EVENTS_kick_varied, 2, 1.00f }, // kick_varied - { PATTERN_EVENTS_kick_dense, 8, 1.00f }, // kick_dense - { PATTERN_EVENTS_snare_basic, 2, 1.00f }, // snare_basic - { PATTERN_EVENTS_snare_varied, 2, 1.00f }, // snare_varied - { PATTERN_EVENTS_snare_dense, 3, 1.00f }, // snare_dense - { PATTERN_EVENTS_hihat_basic, 8, 1.00f }, // hihat_basic - { PATTERN_EVENTS_hihat_varied, 8, 1.00f }, // hihat_varied - { PATTERN_EVENTS_crash, 1, 1.00f }, // crash - { PATTERN_EVENTS_ride, 1, 1.00f }, // ride - { PATTERN_EVENTS_ride_fast, 8, 1.00f }, // ride_fast - { PATTERN_EVENTS_splash, 1, 1.00f }, // splash - { PATTERN_EVENTS_bass_e_soft, 2, 1.00f }, // bass_e_soft - { PATTERN_EVENTS_bass_e, 5, 1.00f }, // bass_e - { PATTERN_EVENTS_bass_eg, 4, 1.00f }, // bass_eg - { PATTERN_EVENTS_bass_progression, 4, 1.00f }, // bass_progression - { PATTERN_EVENTS_bass_synco_1, 7, 1.00f }, // bass_synco_1 - { PATTERN_EVENTS_bass_synco_2, 8, 1.00f }, // bass_synco_2 - { PATTERN_EVENTS_bass_synco_3, 8, 1.00f }, // bass_synco_3 + { PATTERN_EVENTS_kick_1, 2, 1.00f }, // kick_1 + { PATTERN_EVENTS_kick_2, 2, 1.00f }, // kick_2 + { PATTERN_EVENTS_snare_1, 2, 1.00f }, // snare_1 + { PATTERN_EVENTS_snare_2, 2, 1.00f }, // snare_2 + { PATTERN_EVENTS_snare_3, 2, 1.00f }, // snare_3 + { PATTERN_EVENTS_ride, 4, 1.00f }, // ride }; -const uint32_t g_tracker_patterns_count = 19; +const uint32_t g_tracker_patterns_count = 6; static const TrackerPatternTrigger SCORE_TRIGGERS[] = { - { 0.0f, 8 }, { 0.0f, 0 }, - { 0.0f, 6 }, + { 0.0f, 2 }, { 0.5f, 0 }, - { 0.5f, 3 }, - { 0.5f, 6 }, - { 1.0f, 9 }, - { 1.0f, 1 }, - { 1.0f, 3 }, - { 1.0f, 7 }, - { 1.5f, 1 }, - { 1.5f, 4 }, - { 1.5f, 7 }, - { 2.0f, 11 }, + { 0.5f, 2 }, + { 1.0f, 0 }, + { 1.0f, 2 }, + { 1.5f, 0 }, + { 1.5f, 2 }, { 2.0f, 0 }, { 2.0f, 3 }, - { 2.0f, 6 }, - { 2.0f, 12 }, - { 2.5f, 1 }, - { 2.5f, 4 }, - { 2.5f, 7 }, - { 2.5f, 12 }, - { 3.0f, 9 }, + { 2.5f, 0 }, + { 2.5f, 3 }, { 3.0f, 0 }, { 3.0f, 3 }, - { 3.0f, 6 }, - { 3.0f, 13 }, - { 3.5f, 1 }, - { 3.5f, 4 }, - { 3.5f, 7 }, - { 3.5f, 14 }, - { 4.0f, 8 }, - { 4.0f, 2 }, - { 4.0f, 5 }, - { 4.0f, 7 }, - { 4.0f, 13 }, - { 4.5f, 2 }, - { 4.5f, 5 }, - { 4.5f, 6 }, - { 4.5f, 15 }, - { 5.0f, 9 }, - { 5.0f, 2 }, - { 5.0f, 5 }, - { 5.0f, 7 }, - { 5.0f, 13 }, - { 5.5f, 2 }, - { 5.5f, 5 }, - { 5.5f, 6 }, - { 5.5f, 14 }, - { 6.0f, 11 }, + { 3.5f, 0 }, + { 3.5f, 3 }, + { 4.0f, 1 }, + { 4.0f, 4 }, + { 4.5f, 1 }, + { 4.5f, 4 }, + { 5.0f, 1 }, + { 5.0f, 4 }, + { 5.5f, 1 }, + { 5.5f, 4 }, + { 6.0f, 1 }, { 6.0f, 2 }, - { 6.0f, 5 }, - { 6.0f, 7 }, - { 6.0f, 15 }, + { 6.5f, 1 }, { 6.5f, 2 }, - { 6.5f, 5 }, - { 6.5f, 6 }, - { 6.5f, 13 }, - { 7.0f, 10 }, - { 7.0f, 0 }, - { 7.0f, 4 }, - { 7.0f, 7 }, - { 7.0f, 14 }, + { 7.0f, 1 }, + { 7.0f, 2 }, { 7.5f, 1 }, - { 7.5f, 3 }, - { 7.5f, 6 }, - { 7.5f, 15 }, - { 7.8f, 6 }, - { 8.0f, 8 }, - { 8.0f, 10 }, - { 8.0f, 2 }, + { 7.5f, 2 }, + { 8.0f, 0 }, + { 8.0f, 3 }, { 8.0f, 5 }, - { 8.0f, 7 }, - { 8.0f, 16 }, - { 8.5f, 10 }, - { 8.5f, 2 }, + { 8.5f, 0 }, + { 8.5f, 3 }, { 8.5f, 5 }, - { 8.5f, 6 }, - { 8.5f, 17 }, - { 9.0f, 10 }, - { 9.0f, 2 }, + { 9.0f, 0 }, + { 9.0f, 3 }, { 9.0f, 5 }, - { 9.0f, 7 }, - { 9.0f, 18 }, - { 9.5f, 8 }, + { 9.5f, 0 }, + { 9.5f, 3 }, + { 9.5f, 5 }, + { 10.0f, 1 }, + { 10.0f, 4 }, + { 10.0f, 5 }, + { 10.5f, 1 }, + { 10.5f, 4 }, + { 10.5f, 5 }, + { 11.0f, 1 }, + { 11.0f, 4 }, + { 11.0f, 5 }, + { 11.5f, 1 }, + { 11.5f, 4 }, + { 11.5f, 5 }, + { 12.0f, 0 }, + { 12.0f, 2 }, + { 12.0f, 5 }, + { 12.5f, 0 }, + { 12.5f, 2 }, + { 12.5f, 5 }, + { 13.0f, 0 }, + { 13.0f, 2 }, + { 13.0f, 5 }, + { 13.5f, 0 }, + { 13.5f, 2 }, + { 13.5f, 5 }, + { 14.0f, 1 }, + { 14.0f, 3 }, + { 14.0f, 5 }, + { 14.5f, 1 }, + { 14.5f, 3 }, + { 14.5f, 5 }, + { 15.0f, 1 }, + { 15.0f, 3 }, + { 15.0f, 5 }, + { 15.5f, 1 }, + { 15.5f, 3 }, + { 15.5f, 5 }, }; const TrackerScore g_tracker_score = { - SCORE_TRIGGERS, 85, 120.0f + SCORE_TRIGGERS, 80, 120.0f }; // ============================================================ // RESOURCE USAGE ANALYSIS (for synth.h configuration) // ============================================================ -// Total samples: 20 (15 assets + 5 generated notes) -// Max simultaneous pattern triggers: 6 -// Estimated max polyphony: 24 voices +// Total samples: 6 (6 assets + 0 generated notes) +// Max simultaneous pattern triggers: 3 +// Estimated max polyphony: 6 voices // // REQUIRED (minimum to avoid pool exhaustion): -// MAX_VOICES: 24 -// MAX_SPECTROGRAMS: 135 (no caching) +// MAX_VOICES: 6 +// MAX_SPECTROGRAMS: 6 (no caching) // // RECOMMENDED (with 50% safety margin): -// MAX_VOICES: 48 -// MAX_SPECTROGRAMS: 202 (no caching) +// MAX_VOICES: 12 +// MAX_SPECTROGRAMS: 9 (no caching) // // NOTE: With spectrogram caching by note parameters, -// MAX_SPECTROGRAMS could be reduced to ~20 +// MAX_SPECTROGRAMS could be reduced to ~6 // ============================================================ |
