void _audioQueue_OutputCompleted(object sender, OutputCompletedEventArgs e) { if (!_isPlaying) return; outputCallback(e.IntPtrBuffer); }
/// <summary> /// Is called when a buffer is completly read and can be freed up /// </summary> private void HandleOutputQueueOutputCompleted(object sender, OutputCompletedEventArgs e) { queuedBufferCount--; IntPtr buf = e.IntPtrBuffer; foreach (var buffer in outputBuffers) { if (buffer.Buffer != buf) { continue; } // free Buffer buffer.PacketDescriptions.Clear(); buffer.CurrentOffset = 0; lock (buffer) { buffer.IsInUse = false; Monitor.Pulse(buffer); } } if (queuedBufferCount == 0 && Finished != null) { Finished(this, new EventArgs()); } }
void _audioQueue_OutputCompleted(object sender, OutputCompletedEventArgs e) { if (!_isPlaying) { return; } outputCallback(e.IntPtrBuffer); }
void _audioQueue_OutputCompleted(object sender, OutputCompletedEventArgs e) { //Debug.WriteLine("callback"); outputCallback(e.IntPtrBuffer); }
/// <summary> /// Is called when a buffer is completly read and can be freed up /// </summary> void HandleOutputQueueOutputCompleted (object sender, OutputCompletedEventArgs e) { queuedBufferCount--; IntPtr buf = e.IntPtrBuffer; foreach (var buffer in outputBuffers) { if (buffer.Buffer != buf) continue; // free Buffer buffer.PacketDescriptions.Clear (); buffer.CurrentOffset = 0; lock (buffer) { buffer.IsInUse = false; Monitor.Pulse (buffer); } } if (queuedBufferCount == 0 && Finished != null) Finished (this, new EventArgs ()); }
void HandleOutputCompleted (object sender, OutputCompletedEventArgs e) { audioQueue.FreeBuffer (e.IntPtrBuffer); }
unsafe void HandleOutputBuffer(object sender, OutputCompletedEventArgs e) { HandleOutputBuffer(e.UnsafeBuffer, false); }
void _audioQueue_OutputCompleted(object sender, OutputCompletedEventArgs e) { //Debug.WriteLine("callback"); outputCallback(e.IntPtrBuffer); }
// // When the entire audio buffered has been played, the // OutputAudioQueue will call us back for more information // void HandleOutputQueueOutputCompleted(object sender, OutputCompletedEventArgs e) { IntPtr buf = e.IntPtrBuffer; Console.WriteLine ("Buffer done"); for (int i = 0; i < outputBuffers.Length; i++){ if (buf == outputBuffers [i]){ lock (inuse){ inuse [i] = false; Monitor.Pulse (inuse); } outputCompleted.Set (); } } }
void OnOutputQueueOutputCompleted(object sender, OutputCompletedEventArgs e) { outputQueue.FreeBuffer (e.IntPtrBuffer); }
void HandleOutputCompleted(object sender, OutputCompletedEventArgs e) { audioQueue.FreeBuffer(e.IntPtrBuffer); }
unsafe void HandleOutputBuffer(object sender, OutputCompletedEventArgs e) { HandleOutputBuffer(e.UnsafeBuffer, false); }
void OnOutputQueueOutputCompleted(object sender, OutputCompletedEventArgs e) { outputQueue.FreeBuffer(e.IntPtrBuffer); }