private void OnSamplesAvailable(object sender, SamplesAvailableEventArgs e) { if (this.activation == null) { return; } if (e.Available < FrameSize) { return; } byte[] samples = e.Provider.ReadSamples(FrameSize); ActivationLevel = this.activation.GetLevel(samples); IsActivating = this.activation.IsTalking(samples); }
private static void Controller_SamplesAvailable(object sender, SamplesAvailableEventArgs samps) { // IF RX Mode if (iqStream == null) { iqStream = new ComplexFifoStream(BlockMode.None); } if (iqStream.Length < SampleRate) { iqStream.Write(samps.Buffer, samps.Length); } else { _droppedBuffers++; } if (iqStream != null) { iqStream.Read(_rxBufferPtr, (int)SampleRate); for (int i = 0; i < SampleRate; i++) { Console.WriteLine(String.Format("{0:0.000000}\t{1:0.000000}", _rxBufferPtr[i].Real, _rxBufferPtr[i].Imag)); //Console.WriteLine($"{_bufferPtr[i].Imag} {_bufferPtr[i].Real}"); } } // TO DO if TX Mode //if (TXmode) //{ // samps.Buffer = //} }
/// <summary> /// Ensure that registered delegates receive the SamplesAvailable event. /// </summary> /// <param name="e">Event argument.</param> private void OnSamplesAvailable(SamplesAvailableEventArgs e) { // If there are subscriber(s), raise event. SamplesAvailable?.Invoke(this, e); }