private void reCalc() { int found = 0; int diff = (int)Math.Abs(datasets[0].fs - _sampleRate); for (int i = 1; i < datasets.Count; i++) { if ((int)Math.Abs(datasets[i].fs - _sampleRate) < diff) { diff = (int)Math.Abs(datasets[1].fs - _sampleRate); found = i; } } filterSet = datasets[found]; }
private void createFilters() { datasets = new List <FilterDataset>(); FilterDataset a; a = new FilterDataset(); a.fs = 11025; a.b = new double[] { 0.7736721075390028, -2.8625867978943105, 3.7136261161872133, -1.7020786365858063, -0.1547344215078005, 0.2321016322617008 }; a.a = new double[] { 1.0000000000000000, -3.5757337829718345, 4.7582766196624924, -2.7899757644608405, 0.6085910689326314, -0.0011559137053395, 0.0000005512739116 }; datasets.Add(a); a = new FilterDataset(); a.fs = 22050; a.b = new double[] { 0.8055484487647923, -2.9805292604297318, 3.8666325540710029, -1.7722065872825432, -0.1611096897529584, 0.2416645346294377 }; a.a = new double[] { 1.0000000000000000, -3.8302763396909523, 5.5476415277122415, -3.6541031162267403, 0.9871997587068019, -0.0512041243503595, 0.0007424782229829 }; datasets.Add(a); a = new FilterDataset(); a.fs = 44100; a.b = new double[] { 0.6180020317070465, -2.2866075173160723, 2.9664097521938229, -1.3596044697555023, -0.1236004063414093, 0.1854006095121139 }; a.a = new double[] { 1.0000000000000000, -4.2307872496224137, 7.0346422059383222, -5.7449460002195494, 2.3363695685698880, -0.4225269693894642, 0.0272484535888349 }; datasets.Add(a); a = new FilterDataset(); a.fs = 48000; a.b = new double[] { 0.5815372712118925, -2.1516879034840022, 2.7913789018170840, -1.2793819966661637, -0.1163074542423785, 0.1744611813635678 }; a.a = new double[] { 1.0000000000000000, -4.2935584346882125, 7.2834260475956798, -6.1242473677395743, 2.6089701629718975, -0.5111053205554470, 0.0365149183602303 }; datasets.Add(a); a = new FilterDataset(); a.fs = 96000; a.b = new double[] { 0.2845855585491984, -1.0529665666320340, 1.3660106810361521, -0.6260882288082365, -0.0569171117098397, 0.0853756675647595 }; a.a = new double[] { 1.0000000000000000, -4.8431509604790124, 9.5812763956502831, -9.8758665218481614, 5.5715967697266429, -1.6249444537578395, 0.1910887708899461 }; datasets.Add(a); }