Esempio n. 1
0
        void OnDataReceived(object sender, CircStream.DataReceivedEventArgs e)
        {
            CircStream cs = (CircStream)sender;

            if ((cs.State == CircStream.VOXStates.Active) ||
                (cs.State == CircStream.VOXStates.Decay))
            {
                Output.Write(e.buffer, e.index, e.count);
            }
            else if (cs.State == CircStream.VOXStates.VOX_On)
            {
                BinaryWriter output = new BinaryWriter(Output);
                BinaryReader input  = new BinaryReader(_stream);
                output.Write(input.ReadBytes((int)input.BaseStream.Length));
                if (VOXStarting != null)
                {
                    VOXStarting.BeginInvoke(this, EventArgs.Empty, new AsyncCallback(EndCallback), VOXStarting);
                }
            }
            else if (cs.State == CircStream.VOXStates.VOX_Off)
            {
                Output.Flush();
                if (VOXStopping != null)
                {
                    VOXStopping.BeginInvoke(this, EventArgs.Empty, new AsyncCallback(EndCallback), VOXStopping);
                }
            }
        }
Esempio n. 2
0
 private void DestroyBuffer()
 {
     if (_stream != null)
     {
         _stream.Close();
         _stream = null;
     }
 }
Esempio n. 3
0
 public VOXFilter(int SizeInBytes)
 {
     _stream = new CircStream();
     _stream.SetLength(SizeInBytes);
     _stream.DataReceived += new EventHandler <CircStream.DataReceivedEventArgs>(OnDataReceived);
 }