public void SourceConverter_RiseAndFall() { var nextFrame = new VisualizationDataFrame( testFrame.Time.Value.Add(testFrame.Duration), testFrame.Duration, ScalarData.Create(Enumerable.Repeat <float>(1.0f, (int)expectedChannelCount).ToArray()), ScalarData.Create(Enumerable.Repeat <float>(2.0f, (int)expectedChannelCount).ToArray()), SpectrumData.Create( Enumerable.Repeat <float>(1.0f, (int)(expectedChannelCount * expectedFrequencyCount)).ToArray(), expectedChannelCount, ScaleType.Linear, ScaleType.Linear, expectedMinFrequency, expectedMaxFrequency) ); sut.SpectrumRiseTime = TimeSpan.FromMilliseconds(100); sut.SpectrumFallTime = TimeSpan.FromMilliseconds(50); sut.RmsRiseTime = TimeSpan.FromMilliseconds(80); sut.RmsFallTime = TimeSpan.FromMilliseconds(40); sut.PeakRiseTime = TimeSpan.FromMilliseconds(20); sut.PeakFallTime = TimeSpan.FromMilliseconds(200); var data = sut.GetData(); testSource.Frame = nextFrame; data = sut.GetData(); Assert.IsNotNull(data.RMS); Assert.IsNotNull(data.Peak); Assert.IsNotNull(data.Spectrum); }
public void VisualizationDataFrame_ctor() { var rms = ScalarData.CreateEmpty(2); var peak = ScalarData.CreateEmpty(2); var spectrum = SpectrumData.CreateEmpty(2, 100, ScaleType.Linear, ScaleType.Linear, 0, 20000.0f); var frame = new VisualizationDataFrame(TimeSpan.FromSeconds(1), TimeSpan.FromSeconds(1.0 / 60.0), rms, peak, spectrum); Assert.IsNotNull(frame); Assert.AreEqual(TimeSpan.FromSeconds(1), frame.Time); Assert.AreEqual(TimeSpan.FromSeconds(1.0 / 60.0), frame.Duration); Assert.AreSame(rms, frame.RMS); Assert.AreSame(peak, frame.Peak); Assert.AreSame(spectrum, frame.Spectrum); }
public void TestInit() { sut = new SourceConverter(); testSource = new FakeVisualizationSource(); testSource.ExpectedChannels = expectedChannelCount; sut.Source = testSource; testFrame = new VisualizationDataFrame( TimeSpan.Zero, TimeSpan.FromMilliseconds(16.7), ScalarData.CreateEmpty(expectedChannelCount), ScalarData.CreateEmpty(expectedChannelCount), SpectrumData.CreateEmpty(expectedChannelCount, 10, ScaleType.Linear, ScaleType.Linear, 0, 10000)); testSource.Frame = testFrame; }
public void SourceConverter_CombineChannels_WoMap(uint inputChannels, uint outChannels, float [] expectedRms) { float[] input = new float[inputChannels]; float value = 1.0f; for (int index = 0; index < inputChannels; index++, value *= 2.0f) { input[index] = value; } var inputFrame = new VisualizationDataFrame(TimeSpan.Zero, TimeSpan.FromMilliseconds(16), ScalarData.Create(input), null, null); testSource.ExpectedChannels = inputChannels; testSource.Frame = inputFrame; sut.ChannelCount = outChannels; var outFrame = sut.GetData(); CollectionAssert.AreEqual(expectedRms, outFrame.RMS.ToArray()); }
public void TestInit() { sut = new SourceConverter(); testSource = new FakeVisualizationSource(); sut.Source = testSource; testFrame = new VisualizationDataFrame( expectedTime, expectedDuration, ScalarData.CreateEmpty(expectedChannelCount), ScalarData.CreateEmpty(expectedChannelCount), SpectrumData.CreateEmpty(expectedChannelCount, expectedFrequencyCount, ScaleType.Linear, ScaleType.Linear, expectedMinFrequency, expectedMaxFrequency) ); otherFrame = new VisualizationDataFrame( expectedTime.Add(expectedDuration), expectedDuration, ScalarData.CreateEmpty(expectedChannelCount), ScalarData.CreateEmpty(expectedChannelCount), SpectrumData.CreateEmpty(expectedChannelCount, expectedFrequencyCount, ScaleType.Linear, ScaleType.Linear, expectedMinFrequency, expectedMaxFrequency) ); testSource.Frame = testFrame; }