diff options
Diffstat (limited to 'src/audio/audio_engine.cc')
| -rw-r--r-- | src/audio/audio_engine.cc | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/audio/audio_engine.cc b/src/audio/audio_engine.cc index c184324..1d6659d 100644 --- a/src/audio/audio_engine.cc +++ b/src/audio/audio_engine.cc @@ -13,7 +13,7 @@ void AudioEngine::init() { // Initialize in correct order (synth first, then tracker) synth_init(); resource_mgr_.init(); - tracker_init(); + tracker_init(&resource_mgr_); // Initialize sample-to-synth-id mapping for (int i = 0; i < MAX_SPECTROGRAM_RESOURCES; ++i) { @@ -48,8 +48,8 @@ void AudioEngine::reset() { } synth_init(); // Re-init synth (clears all state) - ::tracker_init(); // Re-register all spectrograms (synth slots now clean) resource_mgr_.reset(); + ::tracker_init(&resource_mgr_); // Re-register all spectrograms // Clear sample-to-synth mapping for (int i = 0; i < MAX_SPECTROGRAM_RESOURCES; ++i) { @@ -171,7 +171,8 @@ void AudioEngine::seek(float target_time) { synth_init(); // 2. Re-init tracker: re-registers all spectrograms with now-clean synth slots - ::tracker_init(); + resource_mgr_.reset(); + ::tracker_init(&resource_mgr_); // 3. Clear sample-to-synth mapping (will be re-registered on demand) for (int i = 0; i < MAX_SPECTROGRAM_RESOURCES; ++i) { |
