< Back to IRCAM Forum

Save spat5.oper Snapshot without windows state and position

Hi Forum,
Is there a way to save the snapshots of the spat5.oper using the snapshot window WITHOUT saving the spat5.oper window state and position?
During a concert, it is better to keep this window closed because it can interfere with the performance. Moreover, when the snapshot is recalled the cursor is inside the spat window.
Of course, this is because the window state and position are saved with the snaphots.
I know that it is always possible to store a snapshot with the spat oper window closed…but in real life, working with spat oper and editing/saving snapshots, one has this window open.



No, it’s not currently possible.
Rather than not saving the window state, I might instead add an option to not recall the window state when recalling a snapshot. Maybe. In any case : your request is noted.


yes, I meant that. To have an option to “don’t save/recall window state” in snapshots or presets. So that, when desired, one can freely open or close the window while performing. This is a really useful function.
For “window state” i mean the open/close status, the position, the zoom, etc.
So far, the only option I can see is to manually modify the window/visible to 0 in the snapshot textfile. But, of course, an “ignore window state” would be fine.

Hi Lorenzo,

There’s a new option in this build. Please give it a try and let me know.


Hi Thibaut,
Great! It seems to work properly.
Btw, I remark that recalling the snapsnots, the “cursor” remains inside the spat5.oper window. For example, I am working with the cursor inside a GUI outside the spat5.oper window (a numberbox recalling a snapshot) and, after the snapshot is recalled, the cursor is in the spat window (even if the GUI is highlighted).
I also verified that, in the snapshot is saved also the “viewer only” parameter, even if one activates “store everything except window”

And it would be great if this feature (not saving the spat window state), could be implemented for the preset too.
I.e., we could imagine a value for the parameter “/window/visible” in the preset text file.
It could be “-1” or “ignore”, or whatever.

Thanks for the feedback.

  1. About the “cursor” thing :
    as far as I can tell, this occurs only if the snapshot contains window messages.
    This makes sense, because the message “/window/visible 1” gives focus (mouse/keyboard) to the spat5 object.
    When the snapshots are stored without window messages, the cursor focus should stay where it is (in your numbox).
    At least, that’s what I observe.

  2. When you store snapshots without window, this ignores all the messages starting with “/window”.
    “viewer only” is controlled by “/viewer/only” message, and therefore it is included into the snapshot.
    This is consistant.

You can workaround this, without much effort.
See attached patcher :


Hm, concerning point 1, this is not what I observe.
I mean, even if the function “store everything except window” is active, after recalling a snapshot the focus is always inside the spat window.
This is also true with the [spat5.osc.ignore /window] trick (if i use it well…).
See attached archive.
Spat-snapshots.zip (11.3 KB)

The problem is that :
in your snapshot #1, source #3 is “selected”
while in your snapshot #2, source #1 is selected.
So, when snapshots are recalled, the source selection changes.
Changing the source selection is “like” making a mouse click inside the spat5.oper window.
Therefore your numbox loses its focus.

I’ll see if I can change that, but it’s not a given.

Otherwise, make sure that no sources are selected when saving your snapshots.
(or edit the snapshot file and change /select 1 to /select 0)


Ok, I see that and I will put to 0 the “select” parameter for every source in every snapshot.
Working with Spat and editing presets or snapshots, is an ordinary situation while in a studio or rehearsing…so, it’s a routine practice that a user opens the window and edits some presets.
Of course, according to the final performing situation, one can close the spat window and recall a spat snapshot automatically from a score or manually from a GUI. So, the “focus” parameter is somehow a useless parameter
Therefore, so far the solution os to put to 0 the “select” parameter in all snapshots.

And…thank you

Hi T,
sorry to ask again.
Is there a simpler way to filter out the “viewer only” state stored in a snapshot file?
And I have an error message in the Max window.
Everything is inside
Spat5-snapshots.zip (12.2 KB)
the patch.

1 Like

Hi Lorenzo,

This is another “complicated” story :
when you load the snapshot file, each snapshot is allocated with a given number of OSC messages. For instance, your 1st snapshot contains 386 messages.
But then, you use [spat5.osc.ignore], so one of the message is “missing”. It is therefore “replaced by” an empty message “/”. That explains the error message that you see.
In this case, the error is benign though, and you could just ignore it.

Attached is an alternative version : instead of ignoring the message, it is replaced by “viewer/only 1” (as if you had edited the snapshot file manually).

Admittedly, this is super elegant nor simple. Maybe I could further improve things in the future…
This snapshot feature is relatively new, so your feedback is much appreciated.


1 Like

Thank you so much, Thibaut,
I must say that I would just get rid of the viewer state, not forcing it to 1.
I’m new to spat 5 and I have all my live electronic system based on spat 4, therefore I don’t know yet all the possibilities. It’s a huge update!
One of the main problems of spat is how to store its states.
For a long moment, I used pattrstorage, but with each new spat upgrade the number of parameters changed and the system could not recall the presets anymore (for the different number of “atoms”).

  • New Spat5 presets are interesting and I will test their stability in future performances. I must say that, as a personal rule, I avoid opening files while performing… but I should try this mechanism with a complex patch.

  • Snapshots seem interesting too because you can store all the presets in a unique file, so you can recall it only at the beginning. Moreover, they can interpolate.

For this reason, I want to set up a system working with both techniques to see which one is better.
And as you understood, I need to get rid of the window and zoom settings that interfere with a live performance or rehearsal.

I let you know how I stabilize that and will give you updates!

Thank you, as always, for your fast replies.

Hi Lorenzo,

Your use case made me think a little bit. And so I decided to slightly change the file format for storing snapshots. You can give it a try in the new build below.
This should - hopefully - make it easier to manipulate snapshots in your patch.
For backward compatibility, you can still load your previous snapshot files; but you’ll have a warning message to encourage you to re-save the file (in the new format).

(I unfortunately remember all the troubles with pattrstorage…)

Kind regards,


Hi Thibaut,
I will check…I just hope this does not upset other users…

Cool Thibaut,
I find this file format much more essential and less complex to manipulate.