title: Display a audio waveform using C#
body: <p>I've already searched at Stackoverflow and google, but haven't found what I'm looking for.<br>
  So far I got the audio raw data(WAV File) and I want to visualize it.  </p>
  
  <pre><code>        private void Form1_Load(object sender, EventArgs e)
      {
          FileStream fs = new FileStream("D:\\tada.wav", FileMode.Open);
          BinaryReader reader = new BinaryReader(fs);
          char[] data = new char[4];
          long fsize;
          long wfxSize;
          long dataSize;
          WaveFormatEx wfx;
  
          //RIFF
          reader.Read(data, 0, 4);
  
          fsize = reader.ReadInt32();
  
          //WAVE
          reader.Read(data, 0, 4);
  
          //FMT
          reader.Read(data, 0, 4);
          wfxSize = reader.ReadInt32();
  
          byte[] wfxBuffer = new byte[wfxSize];
          reader.Read(wfxBuffer, 0, (int)wfxSize);
          wfx = new WaveFormatEx(wfxBuffer);
  
          //DATA
          reader.Read(data, 0, 4);
          dataSize = reader.ReadInt32();
          byte[] dataBuff = new byte[dataSize];
          reader.Read(dataBuff, 0, (int)dataSize);
          reader.Close();
  
          //Visualize the data...
      }
  </code></pre>
  
  <p>I know I need to convert the raw data into samples and then check for the peak for each sample and draw lines, but I really don't know how to do it(except for the drawing).</p>