# Saving and Loading “Full” Audio State

**URL:** https://qa.fmod.com/t/saving-and-loading-full-audio-state/18547
**Category:** FMOD Engine
**Created:** [March 20, 2022, 1:46pm UTC](https://qa.fmod.com/t/saving-and-loading-full-audio-state/18547 "2022-03-20T13:46:04Z")
**Posts on this page:** 2
**Page:** 1

<div class="post-metadata">

### Author: ![kkukshtel](https://avatars.discourse-cdn.com/v4/letter/k/f6c823/32.png) [@kkukshtel](https://qa.fmod.com/u/kkukshtel)
#### Post date: [March 20, 2022, 1:46pm UTC](https://qa.fmod.com/t/saving-and-loading-full-audio-state/18547/1 "2022-03-20T13:46:04Z")

</div>

Hello all! I’m working on a game where there is a lot of dynamic audio switching on/off, instance creation, and parameter setting in a single “level”. I’m trying to figure out the best way to save and load the “state” of the full audio system when a user makes a save of a map, and then load that state with the loaded savegame.

What we currently do is keep a running tally of all created instances, their last called state, and their last called parameters. On load we then run through this list to re-init the system. However, because this requires code-driven event creation/param passing/etc, we don’t get “state” that comes from FMOD itself (like an active audio instance stopping another instance).

My question is twofold: is there a way to listen to whatever FMOD is doing for instances? Is there an easier way to snapshot the whole system? Are there other best practices here I’m missing?

Thanks!

---

<div class="post-metadata">

### Author: ![jeff\_fmod](https://yyz2.discourse-cdn.com/flex036/user_avatar/qa.fmod.com/jeff_fmod/32/1766_2.png) [@jeff\_fmod](https://qa.fmod.com/u/jeff_fmod)
#### Post date: [March 23, 2022, 5:26am UTC](https://qa.fmod.com/t/saving-and-loading-full-audio-state/18547/2 "2022-03-23T05:26:33Z")

</div>

You can listen out for event instance creation, destruction etc by implementing [event callbacks](https://fmod.com/resources/documentation-api?version=2.02&page=studio-api-eventinstance.html#fmod_studio_event_callback) and listening out for your desired callback types. This would give you added control over things like knowing whether a voice is virtual which would give you closer state approximation. Unfortunately there is no system-level way to listen out for these events so this would mean a callback would need to be set on each individual event instance or event description.  
We don’t have any high level interface for saving or loading the state of FMOD- technically we do with [command capture/replay](https://fmod.com/resources/documentation-api?version=2.02&page=studio-api-system.html#studio_system_loadcommandreplay) but it would take some work to adequately repurpose for state management.
