title: Hanning (von Hann) window
body: <pre><code>public short[] HanningWindow(short[] signal_in ,int pos ,int size)
  {
      for (int i= pos; i &lt; pos+size; i++)
      {
          signal_in[i] = (short) ((signal_in[i]) * ( 0.5 * (1-Math.cos( (2 * Math.PI * i) /    (size - 1))))) ;
      }
      return signal_in;
  }
  </code></pre>
  
  <p>I am trying to use it over </p>
  
  <pre><code>pos = (ring+delay*frame_rate*frame_size)%(frame_size*(frame_rate+1));
  num = record.read(lin,pos,frame_size);           
  
  GGSpecSub tempSpecSub = new GGSpecSub();
  lin = tempSpecSub.HanningWindow(lin, pos, frame_size);
  </code></pre>
  
  <p>It's my first time using real-time DSP - please tell me if this is the right way to apply a Hanning window to a signal?</p>