This commit is a large commit which provides us the tooling so we can more efficiently make and modify streams for appropriate situation, and does a bunch of work to optimize our stream. (A mid sized patch shrunk by half with these changed).
It's a large change which closes #1069 and should allow us to be streaming stable from hereon out. At least that's the plan!
Make -1/-1/-1 Zone Address stream as {}
Processor Storage none is streamed as {} now
Zone::AssociatedSampleData inactive -> {}
Move current streaming version to configuration.,h
Remove the extra streaming version variable on patch
Have a human readable streaming version fn and include it in engine json and log messages
Add capability to support streaming an enum with default, but be careful
Use that on bus aux
Fix a channel strip display bug that it didn't show the routing on refresh properly
Use default routing row to shrink stream size / parse time
Add a "StreamReason" like "Unstream" data which lets you know if you are streaming for process, daw or multi
Don't send route extraPalyload for daw or multi
Move the streamguards into engine next to the thread local states
Add template functions to add and addUnlessDefault for an object
Bus mute solo pan and level default stream
Stream sample udpate and up streaming version for big streamathon
Move to SC_STREAMDEF everywhere (except ID for reasons)
Compact a whole bunch of keys and do some optionals
This commit is a large commit which provides us the tooling so we can more efficiently make and modify streams for appropriate situation, and does a bunch of work to optimize our stream. (A mid sized patch shrunk by half with these changed).
It's a large change which closes #1069 and should allow us to be streaming stable from hereon out. At least that's the plan!
Closes #1069