protected override bool ReadRealWorldParameters() { // Note that the PresetPluginName is "SSLComp" even if the PlugInName is "SSLComp Stereo" if (PresetPluginName == "SSLComp") { // <Parameters Type="RealWorld">8 1 * 3 4 3 * 1 1 1 // 0 0 0.95000000000000006661 1 0.95000000000000006661 </Parameters> // split the parameters text into sections string[] splittedPhrase = PresetRealWorldParameters.Split(' ', '\n'); // Threshold (-15 - +15) Threshold = float.Parse(splittedPhrase[0], CultureInfo.InvariantCulture); // compression threshold in dB // Ratio (2:1=0, 4:1=1, 10:1=2) Ratio = (RatioType)Enum.Parse(typeof(RatioType), splittedPhrase[1]); // Fade [Off=0 or *, Out=1, In=2] if (splittedPhrase[2] != "*") { Fade = (FadeType)Enum.Parse(typeof(FadeType), splittedPhrase[2]); } else { Fade = FadeType.Off; } // Attack [0 - 5, .1 ms, .3 ms, 1 ms, 3 ms, 10 ms, 30 ms) Attack = (AttackType)int.Parse(splittedPhrase[3]); // Release: 0 - 4, .1 s, .3 s, .6 s, 1.2 s, Auto Release = (ReleaseType)int.Parse(splittedPhrase[4]); // Make-Up Gain (-5 - +15) dB MakeupGain = float.Parse(splittedPhrase[5], CultureInfo.InvariantCulture); //* string Delimiter1 = splittedPhrase[6]; // Rate-S (1 - +60) seconds // Autofade duration. Variable from 1 to 60 seconds RateS = float.Parse(splittedPhrase[7], CultureInfo.InvariantCulture); // In In = (splittedPhrase[8] == "1"); // Analog Analog = (splittedPhrase[9] == "1"); return(true); } else { return(false); } }
protected override bool ReadRealWorldParameters() { // Note that the PresetPluginName is "SSLChannel" even if the PlugInName is "SSLChannel Stereo" if (PresetPluginName == "SSLChannel") { // split the parameters text into sections string[] splittedPhrase = PresetRealWorldParameters.Split(' ', '\n'); CompThreshold = float.Parse(splittedPhrase[0], CultureInfo.InvariantCulture); // compression threshold in dB CompRatio = float.Parse(splittedPhrase[1], CultureInfo.InvariantCulture); // compression ratio CompFastAttack = (splittedPhrase[2] == "1"); // compression fast attack CompRelease = float.Parse(splittedPhrase[3], CultureInfo.InvariantCulture); // compression release in ms string Delimiter1 = splittedPhrase[4]; ExpThreshold = float.Parse(splittedPhrase[5], CultureInfo.InvariantCulture); // expander threshold in dB ExpRange = float.Parse(splittedPhrase[6], CultureInfo.InvariantCulture); // expander range in dB ExpGate = (splittedPhrase[7] == "1"); // expander gate ExpFastAttack = (splittedPhrase[8] == "1"); // expander fast attack ExpRelease = float.Parse(splittedPhrase[9], CultureInfo.InvariantCulture); // expander release in ms string Delimiter2 = splittedPhrase[10]; DynToByPass = (splittedPhrase[11] == "1"); // Dyn To By Pass DynToChannelOut = (splittedPhrase[12] == "1"); // Dyn To Channel Out LFTypeBell = (splittedPhrase[13] == "1"); // Bell LFGain = float.Parse(splittedPhrase[14], CultureInfo.InvariantCulture); // dB LFFrq = float.Parse(splittedPhrase[15], CultureInfo.InvariantCulture); // Hz LMFGain = float.Parse(splittedPhrase[16], CultureInfo.InvariantCulture); // dB LMFFrq = float.Parse(splittedPhrase[17], CultureInfo.InvariantCulture); // KHz LMFQ = float.Parse(splittedPhrase[18], CultureInfo.InvariantCulture); HMFGain = float.Parse(splittedPhrase[19], CultureInfo.InvariantCulture); // dB HMFFrq = float.Parse(splittedPhrase[20], CultureInfo.InvariantCulture); // KHz HMFQ = float.Parse(splittedPhrase[21], CultureInfo.InvariantCulture); HFTypeBell = (splittedPhrase[22] == "1"); // Bell HFGain = float.Parse(splittedPhrase[23], CultureInfo.InvariantCulture); // dB HFFrq = float.Parse(splittedPhrase[24], CultureInfo.InvariantCulture); // KHz EQToBypass = (splittedPhrase[25] == "1"); EQToDynSC = (splittedPhrase[26] == "1"); HPFrq = float.Parse(splittedPhrase[27], CultureInfo.InvariantCulture); // Hz LPFrq = float.Parse(splittedPhrase[28], CultureInfo.InvariantCulture); // KHz FilterSplit = (splittedPhrase[29] == "1"); Gain = float.Parse(splittedPhrase[30], CultureInfo.InvariantCulture); // dB Analog = (splittedPhrase[31] == "1"); string Delimiter3 = splittedPhrase[32]; string Delimiter4 = splittedPhrase[33]; VUShowOutput = (splittedPhrase[34] == "1"); string Delimiter5 = splittedPhrase[35]; string Delimiter6 = splittedPhrase[36]; float Unknown1 = float.Parse(splittedPhrase[37], CultureInfo.InvariantCulture); float Unknown2 = float.Parse(splittedPhrase[38], CultureInfo.InvariantCulture); PhaseReverse = (splittedPhrase[39] == "1"); InputTrim = float.Parse(splittedPhrase[40], CultureInfo.InvariantCulture); // dB return(true); } else { return(false); } }