Table of Contents

Namespace NAudio.Extras

Classes

AudioPlaybackEngine

Demo for fire and forget playback

AutoDisposeFileReader

Used by AudioPlaybackEngine

CachedSound

Used by AudioPlaybackEngine

CaptureMixerInput

Adapts a single capture source (a microphone, WASAPI loopback, etc.) into an ISampleProvider in a common target format, ready to feed a MixingSampleProvider. It buffers the incoming bytes, converts them to 32-bit IEEE float, and matches the channel count and sample rate of the target format.

FftEventArgs

FFT Event Args

LoopStream

Loopable WaveStream

MaxSampleEventArgs

Max sample event args

RealtimeCaptureMixer

Live-mixes several capture sources (microphones, WASAPI loopback, etc.) that may each have a different sample rate and channel count into a single stream in a common target format. Each source is wrapped in a CaptureMixerInput, and the mixed output is paced to the wall clock (anchored to the first captured sample) so its length matches real elapsed time. That pacing is what keeps independently-clocked sources in sync: a source running slightly slow is padded and one running slightly fast is drained, and a loopback source that stops delivering while nothing is playing simply contributes silence until it resumes.

SampleAggregator

Demo sample provider that performs FFTs