Esempio n. 1
0
        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);
            }
        }
Esempio n. 2
0
        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);
            }
        }