public static void generateTone(int sampleRate, Sinusoid func, double time, out double[] samples) { int sampleCount = (int)Math.Floor((double)sampleRate * time); samples = new double[sampleCount]; for (var i = 0; i < sampleCount; i++) { samples[i] = func.sample(i / (double)sampleRate); } }
public static void generateTone(int sampleRate, double frequency, double amplitude, double time, out double[] samples) { int sampleCount = (int)Math.Floor((double)sampleRate * time); samples = new double[sampleCount]; var myCos = new Sinusoid(); myCos.Amplitude = amplitude; myCos.Frequency = frequency; for (var i = 0; i < sampleCount; i++) { samples[i] = myCos.sample(i / (double)sampleRate); } }