.YML <> .VCV file interchange

As the capabilities of the 4ms Meta increase/accelerate might be worth having an easy way one click option to allow users to interchange between .yml and .vcv files so that things can be tidied/expanded in VCV rack. I can see there are ways to unpack .vcv files using zstd (involving brew installation on the Mac) so it ought be interchangeable but I’m not keen on getting brew on my Mac right now.

Also there are times when using a text editor on a .yml file really helps set multiple precise parameters for the Meta but then I find I want to tweak further in VCV rack.

zstd is support by tar on macOs, no need for homebrew

tar -xf ./mypatch.vcv --zstd 

p.s.: homebrew is worth installing, and if you don’t put it in your path, then it will have no side effects. I source a script when I need to use it (which as a dev is a lot ;))


as for converting from MM yml → vcv json.
the MM yml file doesn’t contain all the information used in a vcv patch file, e.g. lacks position info.
you could cobble something together, that just meant you didn’t have to re-enter the patch.
but it’d be a once and done process..

ie. you’d convert to vcv, then edit it vcv to ‘tidy’ it up.

btw: tar becomes pretty irrelevant at that point, as if you are going to do this conversion, you’re going to need code, so use something like python/c++ etc, which all have libs for zstd anyway.

this has been discussed before :

Thanks for the pointers - will explore further. Disk space on this machine a bit tight so was trying to avoid installing brew…

homebrew itself is pretty small,
but then it all comes down to what you install using it.
indeed, my install is about nearly 5gb, but I do have various version of python/cross compilers/libs and other stuff.

all that said, as above, you don’t need for this task.
and no point installing unless you do a lot of stuff on the command line.
(or at least thats my main use for it, I know some others use if as a more general install tool)


as for implementation…
for testing, vcv can read a patch in non compressed form. so for this conversion you wont need to worry about it just create the patch.json in a directory, and load that
unfortunately, they changed it so this only now works from the command line

/Applications/VCV\ Rack\ 2\ Pro.app/Contents/MacOS/Rack patch.json

the normal file open menu does not work (anymore !)
so. you probably use something like zstandard lib for python, day to day use.

btw: if you just want to look at what an uncompressed patch looks like in vcv, you can also just look in the autosave directory of vcv, this has your current patch in uncompressed format.

anyways, all the tools/info are already available, ‘just’ a matter of knocking something up.
in fairness, I think a simple hack at this (in something like python) would be pretty quick to do, but not really sure of its usefulness (to me)