# Managing plugin parameters in AudioPluginInstance

**URL:** <https://forum.juce.com/t/managing-plugin-parameters-in-audioplugininstance/30013>\
**Category:** Audio Plugins\
**Created:** [October 24, 2018, 2:22pm UTC](https://forum.juce.com/t/managing-plugin-parameters-in-audioplugininstance/30013 "2018-10-24T14:22:22Z")\
**Posts on this page:** 1\
**Showing post:** 22

<div class="post-metadata">

**Author:** ![dbraun](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/dbraun/32/7260_2.png) [@dbraun](https://forum.juce.com/u/dbraun)\
**Post date:** [February 25, 2020, 5:56pm UTC](https://forum.juce.com/t/managing-plugin-parameters-in-audioplugininstance/30013/22 "2020-02-25T17:56:00Z")

</div>

I have some related questions. I’m using [RenderMan](https://github.com/fedden/RenderMan) to load the Serum VST and then export audio via python/command line. I’ve used the code in this thread to try to enumerate all VST parameters which I can set. I’ve also tried the XML code here [How to get a grouped representation xml with an audio processor value tree state](https://forum.juce.com/t/how-to-get-a-grouped-representation-xml-with-an-audio-processor-value-tree-state/33986) All options show a list of a parameters that’s shorter than I expect. The XML doesn’t look good on the forum so I’m uploading a simple numeric list instead

```
for (int i = 0; i < plugin->getNumParameters(); i++) {
    std::cout << i << ": " << plugin.get()->getParameterName(i) << std::endl;
}

```

:

> **Serum Parameters**
>
> 0: MasterVol: 0.7  
> 1: A Vol: 0.75  
> 2: A Pan: 0.100877  
> 3: A Octave: 0.425781  
> 4: A Semi: 0.5  
> 5: A Fine: 0.5  
> 6: A Unison: 0  
> 7: A UniDet: 0.5  
> 8: A UniBlend: 0.75  
> 9: A Warp: 0.618421  
> 10: A CoarsePit: 0.5  
> 11: A WTPos: 0  
> 12: A RandPhase: 1  
> 13: A Phase: 0.5  
> 14: B Vol: 0.679825  
> 15: B Pan: 0.5  
> 16: B Octave: 0.28125  
> 17: B Semi: 0.5  
> 18: B Fine: 0.5  
> 19: B Unison: 0.4  
> 20: B UniDet: 0.245614  
> 21: B UniBlend: 0.75  
> 22: B Warp: 0  
> 23: B CoarsePit: 0.5  
> 24: B WTPos: 0  
> 25: B RandPhase: 1  
> 26: B Phase: 0.5  
> 27: Noise Level: 0  
> 28: Noise Pitch: 0.5  
> 29: Noise Fine: 0.5  
> 30: Noise Pan: 0.5  
> 31: Noise RandPhase: 0  
> 32: Noise Phase: 0  
> 33: Sub Osc Level: 0.653509  
> 34: Sub Osc Pan: 0.5  
> 35: Env1 Atk: 0.11  
> 36: Env1 Hold: 0  
> 37: Env1 Dec: 0.570271  
> 38: Env1 Sus: 0.44412  
> 39: Env1 Rel: 0.342128  
> 40: OscA\>Fil: 1  
> 41: OscB\>Fil: 1  
> 42: OscN\>Fil: 0  
> 43: OscS\>Fil: 0  
> 44: Fil Type: 0.0337079  
> 45: Fil Cutoff: 0.337719  
> 46: Fil Reso: 0.1  
> 47: Fil Driv: 0  
> 48: Fil Var: 0  
> 49: Fil Mix: 1  
> 50: Fil Stereo: 0.5  
> 51: Env2 Atk: 0.11  
> 52: Env2 Hld: 0  
> 53: Env2 Dec: 0.530929  
> 54: Env2 Sus: 0.0789474  
> 55: Env2 Rel: 0.329035  
> 56: Env3 Atk: 0.11  
> 57: Env3 Hld: 0  
> 58: Env3 Dec: 0.197368  
> 59: Env3 Sus: 0  
> 60: Env3 Rel: 0.215  
> 61: LFO1 Rate: 0.5  
> 62: LFO2 Rate: 0.5  
> 63: LFO3 Rate: 0.5  
> 64: LFO4 Rate: 0.5  
> 65: PortTime: 0  
> 66: PortCurve: 0.5  
> 67: Chaos1 BPM: 0  
> 68: Chaos2 BPM: 0  
> 69: Chaos1 Rate: 0.251189  
> 70: Chaos2 Rate: 0.251189  
> 71: A curve1: 0.4995  
> 72: D curve1: 0.666  
> 73: R curve1: 0.666  
> 74: A curve2: 0.4995  
> 75: D curve2: 0.791  
> 76: R curve2: 0.666  
> 77: A curve3: 0.4995  
> 78: D curve3: 0.666  
> 79: R curve3: 0.666  
> 80: Mast.Tun: 0.5  
> 81: Verb Wet: 0.2  
> 82: VerbSize: 0.35  
> 83: Decay: 0.35  
> 84: VerbLoCt: 0  
> 85: Spin Rate: 0.25  
> 86: VerbHiCt: 0.35  
> 87: Spin Depth: 0.2  
> 88: EQ FrqL: 0.333  
> 89: EQ FrqH: 0.666  
> 90: EQ Q L: 0.6  
> 91: EQ Q H: 0.6  
> 92: EQ VolL: 0.5  
> 93: EQ VolH: 0.5  
> 94: EQ TypL: 0  
> 95: EQ TypH: 0  
> 96: Dist\_Wet: 0.666667  
> 97: Dist\_Drv: 0.894737  
> 98: Dist\_L/B/H: 0  
> 99: Dist\_Mode: 0  
> 100: Dist\_Freq: 0.5  
> 101: Dist\_BW: 0.5  
> 102: Dist\_PrePost: 0  
> 103: Flg\_Wet: 1  
> 104: Flg\_BPM\_Sync: 0  
> 105: Flg\_Rate: 0.25  
> 106: Flg\_Dep: 1  
> 107: Flg\_Feed: 0.5  
> 108: Flg\_Stereo: 0.5  
> 109: Phs\_Wet: 1  
> 110: Phs\_BPM\_Sync: 0  
> 111: Phs\_Rate: 0.25  
> 112: Phs\_Dpth: 0.5  
> 113: Phs\_Frq: 0.5  
> 114: Phs\_Feed: 0.8  
> 115: Phs\_Stereo: 0.5  
> 116: Cho\_Wet: 0.337719  
> 117: Cho\_BPM\_Sync: 0  
> 118: Cho\_Rate: 0.179825  
> 119: Cho\_Dly: 0.214912  
> 120: Cho\_Dly2: 0  
> 121: Cho\_Dep: 1  
> 122: Cho\_Feed: 0.1  
> 123: Cho\_Filt: 0.5  
> 124: Dly\_Wet: 0.3  
> 125: Dly\_Freq: 0.5  
> 126: Dly\_BW: 0.8  
> 127: Dly\_BPM\_Sync: 1  
> 128: Dly\_Link: 0  
> 129: Dly\_TimL: 0.625  
> 130: Dly\_TimR: 0.625  
> 131: Dly\_Mode: 0  
> 132: Dly\_Feed: 0.4  
> 133: Dly\_Off L: 0.5  
> 134: Dly\_Off R: 0.5  
> 135: Cmp\_Thr: 0.5  
> 136: Cmp\_Rat: 0.75  
> 137: Cmp\_Att: 0.3  
> 138: Cmp\_Rel: 0.3  
> 139: CmpGain: 0  
> 140: CmpMBnd: 0  
> 141: FX Fil Wet: 1  
> 142: FX Fil Type: 0  
> 143: FX Fil Freq: 0.5  
> 144: FX Fil Reso: 0  
> 145: FX Fil Drive: 0  
> 146: FX Fil Var: 0  
> 147: Hyp\_Wet: 0.5  
> 148: Hyp\_Rate: 0.4  
> 149: Hyp\_Detune: 0.25  
> 150: Hyp\_Unison: 0.571429  
> 151: Hyp\_Retrig: 0  
> 152: HypDim\_Size: 0.5  
> 153: HypDim\_Mix: 0  
> 154: Dist Enable: 1  
> 155: Flg Enable: 0  
> 156: Phs Enable: 0  
> 157: Cho Enable: 1  
> 158: Dly Enable: 0  
> 159: Comp Enable: 0  
> 160: Rev Enable: 0  
> 161: EQ Enable: 0  
> 162: FX Fil Enable: 0  
> 163: Hyp Enable: 0  
> 164: OscAPitchTrack: 1  
> 165: OscBPitchTrack: 1  
> 166: Bend U: 0.541667  
> 167: Bend D: 0.458333  
> 168: WarpOscA: 0.782609  
> 169: WarpOscB: 0  
> 170: SubOscShape: 0  
> 171: SubOscOctave: 0.25  
> 172: A Uni LR: 1  
> 173: B Uni LR: 1  
> 174: A Uni Warp: 0.5  
> 175: B Uni Warp: 0.5  
> 176: A Uni WTPos: 0.5  
> 177: B Uni WTPos: 0.5  
> 178: A Uni Stack: 0  
> 179: B Uni Stack: 0  
> 180: Mod 1 amt: 0.594298  
> 181: Mod 1 out: 0  
> 182: Mod 2 amt: 0.671053  
> 183: Mod 2 out: 0.495  
> 184: Mod 3 amt: 0.619141  
> 185: Mod 3 out: 0.895  
> 186: Mod 4 amt: 0.5  
> 187: Mod 4 out: 1  
> 188: Mod 5 amt: 0.5  
> 189: Mod 5 out: 1  
> 190: Mod 6 amt: 0.5  
> 191: Mod 6 out: 1  
> 192: Mod 7 amt: 0.5  
> 193: Mod 8 out: 1  
> 194: Mod 8 amt: 0.5  
> 195: Mod 8 out: 1  
> 196: Mod 9 amt: 0.5  
> 197: Mod 9 out: 1  
> 198: Mod10 amt: 0.5  
> 199: Mod10 out: 1  
> 200: Mod11 amt: 0.5  
> 201: Mod11 out: 1  
> 202: Mod12 amt: 0.5  
> 203: Mod12 out: 1  
> 204: Mod13 amt: 0.5  
> 205: Mod13 out: 1  
> 206: Mod14 amt: 0.5  
> 207: Mod14 out: 1  
> 208: Mod15 amt: 0.5  
> 209: Mod15 out: 1  
> 210: Mod16 amt: 0.5  
> 211: Mod16 out: 1  
> 212: Osc A On: 1  
> 213: Osc B On: 1  
> 214: Osc N On: 1  
> 215: Osc S On: 1  
> 216: Filter On: 1  
> 217: Mod Wheel: 0  
> 218: Macro 1: 0  
> 219: Macro 2: 0  
> 220: Macro 3: 0  
> 221: Macro 4: 0  
> 222: Amp.: 0.5  
> 223: LFO1 smooth: 0  
> 224: LFO2 smooth: 0  
> 225: LFO3 smooth: 0  
> 226: LFO4 smooth: 0  
> 227: Pitch Bend: 0.5  
> 228: Mod17 amt: 0.5  
> 229: Mod17 out: 1  
> 230: Mod18 amt: 0.5  
> 231: Mod18 out: 1  
> 232: Mod19 amt: 0.5  
> 233: Mod19 out: 1  
> 234: Mod20 amt: 0.5  
> 235: Mod20 out: 1  
> 236: Mod21 amt: 0.5  
> 237: Mod21 out: 1  
> 238: Mod22 amt: 0.5  
> 239: Mod22 out: 1  
> 240: Mod23 amt: 0.5  
> 241: Mod23 out: 1  
> 242: Mod24 amt: 0.5  
> 243: Mod24 out: 1  
> 244: Mod25 amt: 0.5  
> 245: Mod25 out: 1  
> 246: Mod26 amt: 0.5  
> 247: Mod26 out: 1  
> 248: Mod27 amt: 0.5  
> 249: Mod27 out: 1  
> 250: Mod28 amt: 0.5  
> 251: Mod28 out: 1  
> 252: Mod29 amt: 0.5  
> 253: Mod29 out: 1  
> 254: Mod30 amt: 0.5  
> 255: Mod30 out: 1  
> 256: Mod31 amt: 0.5  
> 257: Mod31 out: 1  
> 258: Mod32 amt: 0.5  
> 259: Mod32 out: 1  
> 260: LFO5 Rate: 0.5  
> 261: LFO6 Rate: 0.5  
> 262: LFO7 Rate: 0.5  
> 263: LFO8 Rate: 0.5  
> 264: LFO5 smooth: 0  
> 265: LFO6 smooth: 0  
> 266: LFO7 smooth: 0  
> 267: LFO8 smooth: 0  
> 268: FX Fil Pan: 0.5  
> 269: Comp\_Wet: 1  
> 270: CompMB L: 0.5  
> 271: CompMB M: 0.5  
> 272: CompMB H: 0.5

Note that for the XML’s “Mod 1 amt”, if you go to the MATRIX panel of Serum, the AMOUNT parameter in the third column is non-default. For the XML’s “Mod 1 out”, which is non default, the corresponding thing in Serum is the OUTPUT column all the way on the right. Great, but how do I access parameters for things like SOURCE and DESTINATION? I’ve read the XML closely and don’t see them. Also, the Oscillators section has a dropdown menu for selecting the filepath of a wavetable. Could it be possible to get/set those with JUCE? What more can I debug? Thank you!

 ![serum1](https://us1.discourse-cdn.com/flex026/uploads/juce/original/2X/7/72472637fbdf0608d12056a979bd0d721edd7741.png) ![serum2](https://us1.discourse-cdn.com/flex026/uploads/juce/original/2X/8/8bbc0f23399c8f3af89d63dc6ae578b8813ba924.png)

---

_[View the full topic](https://forum.juce.com/t/managing-plugin-parameters-in-audioplugininstance/30013)._
