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();
 }