NAudio 3.0.1-preview.1

NAudio

Nuget

NAudio is an open source .NET audio library written by Mark Heath and contributors.

This is the main NAudio meta-package. Installing it pulls in everything you need to play, record and manipulate audio on .NET, and adds AudioFileReader — the one-line "just open this audio file" reader that picks the right decoder for you — along with Mp3FileReader.

Requires net9.0 or later. If you need .NET Framework or .NET Standard 2.0, use NAudio 2.x.

What it pulls in

Always, on every target framework:

  • NAudio.Core — the format-independent core: WaveStream, IWaveProvider / ISampleProvider, WAV and AIFF readers and writers, mixing, resampling, DSP, and the NAudio.Effects framework
  • NAudio.Midi — the MIDI event model and Standard MIDI File reading and writing

Additionally, on a Windows target framework:

  • NAudio.Wasapi — WASAPI playback, capture and loopback (WasapiPlayer / WasapiRecorder), plus Media Foundation codecs
  • NAudio.WinMMWaveOut / WaveIn, classic MIDI I/O, ACM codecs and mixer controls via winmm.dll
  • NAudio.Asio — low-latency multichannel playback and capture through ASIO drivers
  • NAudio.Dmo — DMO effects, the DMO MP3 decoder and resampler, and DirectSoundOut
  • NAudio.WinForms — Windows Forms controls, and the window-callback WaveOutWindow / WaveInWindow

On a non-Windows target framework only the cross-platform pieces are referenced. If you only need a subset, reference the individual packages directly rather than this meta-package.

Optional packages

These are not pulled in by the meta-package — add them explicitly if you want them:

Package Platform What it gives you
NAudio.Sampler cross-platform Polyphonic software sampler — SoundFont (.sf2), SFZ and single-sample instruments
NAudio.SoundFile cross-platform Read and write WAV/AIFF/FLAC/Ogg-Vorbis/Opus/MP3 via libsndfile
NAudio.Alsa Linux AlsaOut / AlsaIn playback and capture via libasound
NAudio.Vst3 Windows VST 3 plug-in hosting (preview) — effects and instruments
NAudio.Extras cross-platform (+ Windows extras) Opinionated helpers — playback engine, capture mixing, ID3 tags

Getting started

using NAudio.Wave;

using var audioFile = new AudioFileReader("myfile.mp3");
using var player = new WasapiPlayerBuilder().Build();
player.Init(audioFile);
player.Play();
while (player.PlaybackState == PlaybackState.Playing)
{
    Thread.Sleep(500);
}

License

MIT. See the project site for source, issues, and contribution guidelines.

Showing the top 20 packages that depend on NAudio.

Packages Downloads
NDILibDotNetCoreBase
Provides a wrapper to the NDI libraries for Windows, macOS, and Linux.
17
NDILibDotNetCoreBase
Provides a wrapper to the NDI libraries for Windows, macOS, and eventually Linux.
17
NDILibDotNetCoreBase
Provides a wrapper to the NDI libraries for Windows, macOS, and eventually Linux.
13
NDILibDotNetCoreBase
Provides a wrapper to the NDI libraries for Windows, macOS, and Linux.
12

  • Sample and tool apps now roll forward onto newer .NET runtimes, so running them no longer requires the .NET 9 runtime to be installed
  • Fixed the NAudio and NAudio.Extras meta-packages resolving their portable net9.0 asset on projects targeting a plain netX.0-windows TFM (the WinForms/WPF template default), which silently dropped the entire Windows stack — no WaveOut, WASAPI, Media Foundation, ASIO, DMO or WinForms types, and AudioFileReader throwing "MP3 file reading requires the NAudio.Wasapi package". Both packages now also ship a plain net9.0-windows leg (#1407)
  • Breaking: AudioFileReader now throws NotSupportedException instead of InvalidOperationException when the cross-platform build is asked for a format it cannot read, and the messages simply state that rather than suggesting an NAudio.Wasapi install that could never have helped (#1407)
  • Projects on a plain netX.0-windows TFM may now see CA1416 warnings when calling WASAPI process-loopback capture. The warning is correct — those callers do need an OperatingSystem.IsWindowsVersionAtLeast(10, 0, 19041) guard — and was previously hidden because the only Windows asset available already implied that floor (#1407)
  • Fixed AiffFileReader reporting too long a Length and throwing IndexOutOfRangeException when the SSND chunk declares a non-zero offset (#1405)
  • Fixed AiffFileReader.Read throwing IndexOutOfRangeException when the source stream returns fewer bytes than requested (#1405)

.NET 9.0

.NET 9.0

.NET 9.0

Version Downloads Last updated
3.1.1-preview.2 1 09/22/2026
3.1.1-preview.1 8 09/10/2026
3.1.0 7 09/07/2026
3.1.0-preview.2 7 09/06/2026
3.1.0-preview.1 11 09/04/2026
3.0.2-preview.2 5 09/03/2026
3.0.2-preview.1 15 08/20/2026
3.0.1 11 08/18/2026
3.0.1-preview.1 11 08/18/2026
3.0.0 9 08/16/2026
3.0.0-preview.20 13 08/10/2026
3.0.0-preview.19 11 07/29/2026
3.0.0-preview.18 12 07/18/2026
3.0.0-preview.17 15 07/15/2026
3.0.0-preview.16 11 07/01/2026
3.0.0-preview.15 0 06/28/2026
3.0.0-preview.14 0 06/25/2026
3.0.0-preview.10 2 09/08/2026
3.0.0-preview.9 0 05/27/2026
3.0.0-preview.8 0 05/22/2026
3.0.0-preview.7 1 09/21/2026
3.0.0-preview.6 1 09/19/2026
3.0.0-preview.5 0 05/11/2026
3.0.0-preview.4 0 05/11/2026
3.0.0-preview.3 1 09/18/2026
3.0.0-preview.2 1 09/16/2026
2.4.0 8 08/28/2026
2.3.0 19 05/30/2026
2.2.1 18 05/30/2026
2.2.0 21 05/30/2026
2.1.0 15 05/30/2026
2.1.0-beta.1 15 05/30/2026
2.0.1 19 05/30/2026
2.0.0 19 05/30/2026
2.0.0-beta2 18 05/30/2026
2.0.0-beta1 17 05/30/2026
1.10.0 19 05/29/2026
1.9.0 15 05/30/2026
1.9.0-preview2 16 05/30/2026
1.9.0-preview1 15 05/30/2026
1.8.5 17 05/30/2026
1.8.4 18 05/30/2026
1.8.3 17 05/30/2026
1.8.2 16 05/30/2026
1.8.1 18 05/30/2026
1.8.0 1 09/21/2026
1.7.3 19 05/30/2026
1.7.2 15 05/30/2026
1.7.1 15 05/30/2026
1.7.0 15 05/30/2026
1.7.0-beta01 17 05/30/2026
1.7.0-alpha06 2 09/10/2026
1.7.0-alpha05 1 09/19/2026
1.7.0-alpha04 2 09/08/2026
1.7.0-alpha03 17 05/29/2026
1.7.0-alpha02 2 09/08/2026
1.7.0-alpha01 1 09/08/2026
1.6.0 18 05/30/2026
1.5.7-beta 1 09/20/2026
1.5.6-beta 0 10/09/2012
1.5.5-beta 0 09/11/2012
1.5.4-beta 2 09/18/2026
1.5.3-beta 0 03/05/2012
1.5.2-beta 0 03/03/2012
1.5.1-beta 0 03/02/2012
1.5.0 2 09/10/2026