IX Snapshot 1.4 - July 9th 2023

User avatar
IXix
Posts: 1113
Joined: Wed Nov 23, 2011 3:24 pm

IX Snapshot 1.4 - July 9th 2023

Post by IXix »

IX Snapshot, a sexy .NET rip-off of PeerState, with multiple treeview goodness.

:dance: IX Snapshot at buzz.robotplanet.dk :dance:

IX Snapshot 1.4
+ Improved MIDI
+ Improved Info tab
+ Changed "Selection follows slot" - slots can now store their own selection
+ Various small improvement and fixes

IX Snapshot 1.3d
+ Fixed loading of parameters with duplicate names (see FSM Infector)

IX Snapshot 1.3c
+ Fixed treeviews not reflecting machine name changes
+ Fixed handling of newly added tracks

IX Snapshot 1.3b
+ Per-property smoothing settings are properly saved/loaded
+ Treeview shows properties with smoothing in different colours
+ Fixed capture/etc. of Track property group

IX Snapshot 1.3a
+ Fixed broken "Cos S" curve (typo in the formula :roll: )

IX Snapshot 1.3
+ Parameter smoothing on restore
+ Fixed MIDI mapping to specific slots
+ Various UI tweaks

IX Snapshot 1.2
+ Treeview filtering
+ Treeview item context menus
+ Renaming slots
+ Non-empty slots are available in machine context menu
+ Added 'Clear selected' button to main tab
+ Added help file
+ Minor improvements

IX Snapshot 1.1
+Fixed incorrect handling of newly added machine track parameters in treeview
+Treeviews now display machine supplied descriptions for stored parameters
+Added manager interface
+Various minor UI tweaks

IX Snapshot 1.0 (initial release and subsequent flurry of fixes)
+ Fixed error when learning MIDI for the Clear button
+ Handle machine name changes
+ Handle machine track changes
+ Fixed stupid confirm on capture bug.
+ Fixed errors fetching machine data size (thanks wde!)
+ Machine data sizes update when user clicks Snapshot GUI.
+ Machine data info shows both stored and current size.
+ Added buttons to manage selection.
+ Added option "Selection follows slot".
+ Added option "Confirm on clear/purge".
+ Added tooltips to most controls.
+ Fixed error on load due to deleted machine state container being saved to song even though no properties were saved.
+ Minor improvements to MIDI mapping dialog.
+ Support delete/undelete of machines
+ Prevent crash when attempting to restore state for a deleted machine
+ Initial release

Right-clicking a button will open a dialog so you can assign a MIDI event to the button you clicked. If you hold CTRL and right-click, you can map MIDI to the current slot, so you can assign MIDI events to specific slots. The mapping dialog shows which property you're assigning in its title bar.

I don't think anything will change as far as the core features are concerned. I'll add extra stuff to the UI to manage the slots and data but any future releases should be fully compatible.

I think it's stable but for some reason, whenever I'm running a debug session in Visual Studio, Buzz crashes unexpectedly for no apparent reason. I'm 99% sure that this is because of Visual Studio rather than my machine since it doesn't seem to happen when I run Buzz normally, but save often and report any weird behaviour.

Feature requests and bug reports welcome. Enjoy!

p.s. MASSIVE THANKS TO WDE AND UNZ FOR AWESOME HELPFULNESS!! :dance:
Last edited by IXix on Sun Jul 09, 2023 9:18 pm, edited 15 times in total.
wde
Posts: 332
Joined: Sun Jan 08, 2012 9:28 am

Re: IX Snapshot

Post by wde »

Wow, fantastic work! Very usable tool in many different ways. I just love the fact that I can save a number of options for a machine and go back and forth to explore different combinations. And misbehaving VSTs are not that big of a problem anymore!

Going to be another essential machine going forward.

I'll test more when I have time but I noticed couple of bugs:

If you click machine name all goes well but expanding the tree view causes quite often infinite loop of dispatcher errors. Happened so far only with VSTs.
Snapshot bug.png
Snapshot bug.png (13.41 KiB) Viewed 11998 times
It also seems that 1. adding machine A, 2. capturing machine A to 'slot 0', 3. deleting machine A and finally restoring 'slot 0' causes a crash. Maybe cleaning up the capture when machine is deleted should fix it.
User avatar
IXix
Posts: 1113
Joined: Wed Nov 23, 2011 3:24 pm

Re: IX Snapshot

Post by IXix »

wde wrote: Mon Oct 18, 2021 6:01 pm If you click machine name all goes well but expanding the tree view causes quite often infinite loop of dispatcher errors. Happened so far only with VSTs.
Not sure I understand but I'll poke it and see what happens.
wde wrote: Mon Oct 18, 2021 6:01 pm It also seems that 1. adding machine A, 2. capturing machine A to 'slot 0', 3. deleting machine A and finally restoring 'slot 0' causes a crash. Maybe cleaning up the capture when machine is deleted should fix it.
Ah yes, forgot to check for that. I'll get on it! :D
User avatar
UNZ
Posts: 808
Joined: Mon Nov 21, 2011 9:42 pm
Contact:

Re: IX Snapshot

Post by UNZ »

IXix wrote: Sun Oct 17, 2021 7:31 pm whenever I'm running a debug session in Visual Studio, Buzz crashes unexpectedly for no apparent reason. I'm 99% sure that this is because of Visual Studio rather than my machine since it doesn't seem to happen when I run Buzz normally
i have observed the same thing happening in buzz for a few years now (not related to this machine).
my hunch is that some VST try to detect if you run a debug session and something goes horribly wrong there... (i know because one of them flat out displayed a message saying it's going to crash now because it doesn't want to be reverse-engineered..). Or just the fact that memory is initialized to different values when running debug mode, or an entirely different allocator might actually be used and align/pad things different which happens to trigger some bug in other machines which access that invalid memory....
the other suspicion i have is that the .net gui part is somehow to blame, because i get a ton of error messages in the output window while running in debug, and i don't even have a custom theme going or anything, as barebones as it gets, but something is throwing a lot of wpf/.net expections constantly..
User avatar
IXix
Posts: 1113
Joined: Wed Nov 23, 2011 3:24 pm

Re: IX Snapshot

Post by IXix »

UNZ wrote: Mon Oct 18, 2021 8:03 pm i have observed the same thing happening in buzz for a few years now (not related to this machine)...
Yeah, I have similar suspicions. The reverse engineering thing has annoyed me sooooooooo many times. I haven't got a clue how to reverse engineer a VST, I can barely forward engineer my own code! :lol:

Update: Fixed the missing machine crash.
  • State information for missing machines is now ignored but not removed (in case the machine gets undeleted).
  • Data for missing machines will not be saved to the song file.
  • Purge will now get rid of such data (as well as data for non-selected properties as before)
I should probably add a way to select any active stored properties so you don't accidentally purge things you want to keep...
User avatar
IXix
Posts: 1113
Joined: Wed Nov 23, 2011 3:24 pm

Re: IX Snapshot

Post by IXix »

wde wrote: Mon Oct 18, 2021 6:01 pmIf you click machine name all goes well but expanding the tree view causes quite often infinite loop of dispatcher errors. Happened so far only with VSTs.
Snapshot bug.png
I'm not seeing this. Expanding/collapsing etc. works fine with no errors here. I haven't tested many VSTs but I wouldn't have thought it would matter which one it was, as they're all the same PVST machine as far as Snapshot is concerned.
wde
Posts: 332
Joined: Sun Jan 08, 2012 9:28 am

Re: IX Snapshot - Updated 18th Oct 2021

Post by wde »

IXix wrote: Mon Oct 18, 2021 9:01 pm I haven't tested many VSTs but I wouldn't have thought it would matter which one it was, as they're all the same PVST machine as far as Snapshot is concerned.
Yeah it seems strange. I still get the error but managed to limit the problem. So I'm running 32bit Buzz and testing Snapshot with FB-3300.

I get the issue with 64bit version of the vst, 32bit seems to work fine. Maybe this is related?

Thanks for the update!
User avatar
IXix
Posts: 1113
Joined: Wed Nov 23, 2011 3:24 pm

Re: IX Snapshot - Updated 18th Oct 2021

Post by IXix »

Updated. Added a bunch of mildly useful UI stuff and fixed a stupid bug that hopefully hasn't affected anyone yet. :oops:
wde wrote: Tue Oct 19, 2021 8:36 amSo I'm running 32bit Buzz and testing Snapshot with FB-3300.

I get the issue with 64bit version of the vst, 32bit seems to work fine. Maybe this is related?
Tried that vst in all platform configurations (32/32, 32/64, 64/32, 64/64) and still didn't see anything strange. I don't think the msdn link you posted is relevant in this case but I could easily be wrong as all this WPF stuff is basically voodoo as far as I can tell. If you feel like investigating, you can peruse my shoddy and amateurish code at https://github.com/IXix/IX-Snapshot.
User avatar
tinga
Posts: 526
Joined: Tue Nov 22, 2011 5:25 pm

Re: IX Snapshot - Updated 19th Oct 2021

Post by tinga »

A super "PeerState", just try it today with Qsamo, and yes its a real snapshot :dance: , wonderful, works in Buzz64.
Its time for me to buzz again, after more one year of interrupt.
Great work.
User avatar
IXix
Posts: 1113
Joined: Wed Nov 23, 2011 3:24 pm

Re: IX Snapshot - Updated 19th Oct 2021

Post by IXix »

tinga wrote: Thu Oct 21, 2021 1:15 pm A super "PeerState", just try it today with Qsamo, and yes its a real snapshot :dance: , wonderful, works in Buzz64.
Its time for me to buzz again, after more one year of interrupt.
Great work.
Glad you like it! Check the forum regularly as there's a couple of bugs being dealt with as we speak. I'll probably put up a new build later tonight or tomorrow.

It's not supposed to ask for confirmation when you capture and it can throw an error if you answer no. Also, wde has found a problem related to retrieving the size of machine data. I can't reproduce that one so it's possibly system or options related.
User avatar
HerrFornit
Posts: 435
Joined: Sat Feb 25, 2017 12:27 pm
Location: Dortmund
Contact:

Re: IX Snapshot - Updated 19th Oct 2021

Post by HerrFornit »

Hey, great that you did it! :!:

I am very sad that I can not test in the moment, because of a serious situation in my new home (moved). Hope I can try it soon...
User avatar
IXix
Posts: 1113
Joined: Wed Nov 23, 2011 3:24 pm

Re: IX Snapshot - Updated 19th Oct 2021

Post by IXix »

HerrFornit wrote: Thu Oct 21, 2021 4:53 pm I am very sad that I can not test in the moment, because of a serious situation in my new home (moved). Hope I can try it soon...
I hope your situation improves soon. :(

Updated again. Fixed a few bugs.
User avatar
IXix
Posts: 1113
Joined: Wed Nov 23, 2011 3:24 pm

Re: IX Snapshot - Updated 21st Oct 2021

Post by IXix »

Oh, it's not aware of machine name changes or more importantly track count changes. Sigh. On it. :roll:
User avatar
IXix
Posts: 1113
Joined: Wed Nov 23, 2011 3:24 pm

Re: IX Snapshot - Updated 23rd Oct 2021

Post by IXix »

Ouch, sorting out the tracks problem really bent my head. :lol:
IXix wrote: Sun Oct 17, 2021 7:31 pmIX Snapshot 2021.10.23
+ Handle machine name changes
+ Handle machine track changes
Like deleted machines, stored values for deleted tracks are kept around in case the track comes back. Purge will get rid of them.
rav
Posts: 140
Joined: Fri Sep 14, 2012 3:35 pm

Re: IX Snapshot - Updated 23rd Oct 2021

Post by rav »

Awesome, man :)
Are you planning to add some kind of snapshot manager from PeerState? With manual snapshot morphing, interia and a little randomisation (all controlled by MIDI of course :lol:).

Edit:
hot report: CTRL + right_click on 'Clear' gives error
User avatar
IXix
Posts: 1113
Joined: Wed Nov 23, 2011 3:24 pm

Re: IX Snapshot - Updated 23rd Oct 2021

Post by IXix »

rav wrote: Thu Nov 04, 2021 10:01 pmAre you planning to add some kind of snapshot manager from PeerState?
Yes but probably not soon.
rav wrote: Thu Nov 04, 2021 10:01 pmhot report: CTRL + right_click on 'Clear' gives error
Thanks, I'll fix that as soon as I can.
etruscan
Posts: 85
Joined: Wed Nov 23, 2011 10:10 am

Re: IX Snapshot - Updated 23rd Oct 2021

Post by etruscan »

Thanks IXix! As much as I love PeerState, it does crash on me regularly, and your machine is very welcome and timely :D

The only thing keeping me with PeerState is the inertia parameter for morphing between states. This produces interesting results, and is also a nice way to do parameter slides (e.g. filter cutoffs). Do you plan to add inertia to Snapshot at any point?
User avatar
IXix
Posts: 1113
Joined: Wed Nov 23, 2011 3:24 pm

Re: IX Snapshot - Updated 23rd Oct 2021

Post by IXix »

etruscan wrote: Thu Feb 03, 2022 1:34 am Thanks IXix! As much as I love PeerState, it does crash on me regularly, and your machine is very welcome and timely :D

The only thing keeping me with PeerState is the inertia parameter for morphing between states. This produces interesting results, and is also a nice way to do parameter slides (e.g. filter cutoffs). Do you plan to add inertia to Snapshot at any point?
Probably. I pretty much want it to be a complete PeerState replacement. Not sure when I'll get around to doing it though. :(
User avatar
IXix
Posts: 1113
Joined: Wed Nov 23, 2011 3:24 pm

Re: IX Snapshot - Updated Feb 6th 2022

Post by IXix »

Little bugfix...
IXix wrote: Sun Oct 17, 2021 7:31 pmIX Snapshot 2022.02.06
+ Fixed error when learning MIDI for the Clear button
rav wrote: Thu Nov 04, 2021 10:01 pmhot report: CTRL + right_click on 'Clear' gives error
Sorry it took so long! I have to admit I just forgot. :oops:
etruscan
Posts: 85
Joined: Wed Nov 23, 2011 10:10 am

Re: IX Snapshot - Updated Feb 6th 2022

Post by etruscan »

I loooove the way this handles VST snapshots. No dicking around assigning parameters to Polac VST tracks; it just works! How cool is that? *

* IT'S VERY COOL

:dance: :dance: :dance:
Post Reply