private void ShowSpeechTypeVariation(SpeechVisualizer visualizer, SpeechTypeSpecification speechTypeSpecification, double deltaTime) { double time = 0; double lastTime = speechTypeSpecification.TimeSpeechTypeTupleList.Last().Item1; visualizer.MarkerList = new List <SoundMarker>(); while (time < lastTime) { SoundMarker marker = new SoundMarker(); marker.Type = SoundMarkerType.HorizontalLine; marker.Thickness = 4; marker.Start = (float)(time - 0.25 * deltaTime); marker.End = (float)(time + 0.25 * deltaTime); SpeechType speechType = speechTypeSpecification.GetSpeechType(time); if (speechType == SpeechType.Silence) { marker.Color = Color.Yellow; marker.Level = 28000; } else if (speechType == SpeechType.Voiced) { marker.Color = Color.Lime; marker.Level = 32000; } else { marker.Color = Color.Red; marker.Level = 30000; } visualizer.MarkerList.Add(marker); time += deltaTime; } visualizer.Invalidate(); }
private void ShowPitchMarks(SpeechVisualizer visualizer, List <double> pitchMarkTimeList) { foreach (double pitchMarkTime in pitchMarkTimeList) { SoundMarker marker = new SoundMarker(); marker.Type = SoundMarkerType.VerticalLine; marker.Thickness = 2; marker.Start = -30000; marker.End = 30000; marker.Color = Color.Yellow; marker.Level = pitchMarkTime; visualizer.MarkerList.Add(marker); } visualizer.Invalidate(); }