public void TestFeatureUtility() { var arraySoundSignalReader = new ArraySignalReader(new float[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }); var filteredSignal = new PreemphasisFilter(arraySoundSignalReader, 0.95f); VoiceActivitySignalReader fu = new VoiceActivitySignalReader(filteredSignal, 5); float[] frame1; float[] frame2; float[] frame3; bool isVoice; fu.Read( 5, 2, out frame1,out isVoice); fu.Read(5, 2, out frame2, out isVoice); fu.Read(5, 2, out frame3, out isVoice); var arraySoundSignalReader1 = new ArraySignalReader(new float[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }); var filteredSignal1 = new PreemphasisFilter(arraySoundSignalReader1, 0.95f); float[] frame4 = new float[5]; float[] frame5 = new float[5]; //float[] frame6 = new float[5]; filteredSignal1.Read(frame4, 0, 5); filteredSignal1.Read(frame5, 0, 5); }
public void TestPreFiltering() { var soundSignal = new TestSoundSignalReader(new float[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }); var preemphasisFilter = new PreemphasisFilter(soundSignal, 0.95f); var buffer = new float[10]; var items = preemphasisFilter.Read(buffer, 10); var expected = new[] { 1.0000f, 1.0500f, 1.1000f, 1.1500f, 1.2000f, 1.2500f, 1.3000f, 1.3500f, 1.4000f, 1.45f }; for (var index = 0; index < buffer.Length; index++) { var delta = Math.Abs(expected[index] - buffer[index]); Assert.IsTrue(0.01 > delta); } preemphasisFilter = new PreemphasisFilter(soundSignal, 0.95f); buffer = new float[3]; var startIndex = 0; while (preemphasisFilter.Read(buffer, startIndex, 3)) { startIndex += 3; } }