VcvDump

One of the frustrating things that can arise with VcvRack is when a patch ( or selection ) doesn’t load completely, usually because of one or more missing modules. There’s lots of options in the library, so typically if you don’t have the exact unit required, there can be ample opportunity for the substitution of something similar. And, yes I realize there are limits to that approach. The real PIA/PIB is trying to figure out what the missing module had as inputs as well as its outputs. You can, knowing the module ID, find the cables attached to it and the other modules that are connected by searching through the JSON for the patch (or selection), but it is a PIA/PIB to accomplish.

VcvDump does this for you. Its a comand line utility that displays a list of modules, cables, and the details for a given module. Native windows, native linux, and executable JAR files are here in appropo folders:

https://drive.google.com/drive/folders/10bbwmyWKxCXUnCW45NnI6Wq1GuI9x7TO?usp=sharing

IMPORTANT - you must pass a text/json file to it for it to work. This version will NOT work on “vcv” files that are compressed. Of course the current loaded patch is available in the autosave folder as “patch.json”, that will work, as well as any selection, “vcvs”, file. [ In a future version maybe get the decompression to work, if there’s enough interest]. Execute it without parameters and it displays what its expecting. Here’s some output, with example command lines:


Command line: vcvdump Drone.vcvs listmodules
=======
Modules
=======
ID                  PLUGIN                  MODEL
-----------------------------------------------------------------
5887697893714515    VultCompacts            Freak-HW
6883142842294854    Fundamental             Quantizer
8779255853661224    Fundamental             VCA-1
8636835292420770    repelzen                reburst
3686811302467599    squinkylabs-plug1       squinkylabs-super
5745210292885415    Bogaudio                Bogaudio-Mix4
7413658963621174    VultModulesFree         Disjoint
5793014494494536    AlrightDevices          Chronoblob2
6182104327664683    NYSTHI                  mix4
6349960095836122    Instruo                 saich
4548060185773363    VultModulesFree         Opulus
1329217354258833    AlrightDevices          Chronoblob2
6632444821577398    Valley                  Plateau
3026445516246423    Valley                  Plateau
2076616087635625    Valley                  Plateau
2468259885597363    Instruo                 ochd
8490364306821990    Befaco                  NoisePlethora
2090547705156071    Befaco                  StereoStrip

Command line: vcvdump Drone.vcvs listcables
======
Cables
======
ID                  INPUT MODULE        INPUT INDEX OUTPUT MODULE       OUTPUT INDEX
--------------------------------------------------------------------------------
2761669258246036    5745210292885415    8           6349960095836122    0
6830352694863353    5745210292885415    2           3686811302467599    0
1974542262182391    5745210292885415    5           3686811302467599    1
139586172160294     5887697893714515    0           5745210292885415    0
1767748557415791    5887697893714515    1           5745210292885415    1
2522864490064738    7413658963621174    2           5887697893714515    0
2728282468035826    7413658963621174    3           5887697893714515    1
4748921764796314    5793014494494536    5           7413658963621174    0
...
Command line: vcvdump Drone.vcvs outputsfor 5887697893714515
====== Outputs for: VultCompacts-Freak-HW [5887697893714515] ======
OUTPUT INDEX    INPUT MODULE                                                INPUT INDEX
0               VultModulesFree-Disjoint[7413658963621174]                2
1               VultModulesFree-Disjoint[7413658963621174]                3
0               NYSTHI-mix4[6182104327664683]                                  0
1               NYSTHI-mix4[6182104327664683]                                  5

Command line: vcvdump Drone.vcvs inputsfor 5887697893714515
====== Inputs for: VultCompacts-Freak-HW [5887697893714515] ======
INPUT INDEX     OUTPUT MODULE                                               OUTPUT INDEX
0               Bogaudio-Bogaudio-Mix4[5745210292885415]                    0
1               Bogaudio-Bogaudio-Mix4[5745210292885415]                    1

Command line: VcvDump Drone.vcvs module 5887697893714515
====== Inputs for: VultCompacts-Freak-HW [5887697893714515] ======
INPUT INDEX     OUTPUT MODULE                                               OUTPUT INDEX
0               Bogaudio-Bogaudio-Mix4[5745210292885415]                    0
1               Bogaudio-Bogaudio-Mix4[5745210292885415]                    1
====== Outputs for: VultCompacts-Freak-HW [5887697893714515] ======
OUTPUT INDEX    INPUT MODULE                                                INPUT INDEX
0               VultModulesFree-Disjoint[7413658963621174]                  2
1               VultModulesFree-Disjoint[7413658963621174]                  3
0               NYSTHI-mix4[6182104327664683]                                  0
1               NYSTHI-mix4[6182104327664683]                              	   5
4 Likes

Use Markdown code blocks for formatting multi-line code or terminal output. Extended Syntax | Markdown Guide

Thanks for the tip !!