NAudio.WinMM 3.1.1-preview.2

NAudio.WinMM

Nuget

Windows Multimedia (WinMM / winmm.dll) bindings for NAudio. Windows-only (net9.0-windows).

What's included

  • PlaybackWaveOut for playing audio via the legacy WinMM API. The window-callback variant lives in NAudio.WinForms as WaveOutWindow
  • RecordingWaveIn for capturing audio from input devices. The window-callback variant is WaveInWindow in NAudio.WinForms
  • MIDI I/OMidiIn / MidiOut for sending and receiving live MIDI messages
  • ACM — Audio Compression Manager wrappers: AcmStream, AcmMp3FrameDecompressor, driver enumeration
  • Device enumeration and capability queries for WinMM audio and MIDI devices

When to use it

Use this package when you need the classic WaveOut/WaveIn APIs — useful for broad compatibility with older Windows versions, for very simple playback/capture, or when you specifically want ACM codecs. For lower-latency playback, system loopback capture, or modern device enumeration prefer NAudio.Wasapi.

See the NAudio documentation site for tutorials and the full API reference, or the GitHub repository for full documentation and tutorials.

License

MIT.

Showing the top 20 packages that depend on NAudio.WinMM.

Packages Downloads
NAudio
NAudio, an audio library for .NET
21
NAudio
NAudio, an audio library for .NET
19
NAudio.WinForms
Windows Forms audio controls and window-callback variants of WaveOut/WaveIn for the NAudio audio library.
19
NAudio
NAudio, an audio library for .NET
18
NAudio.WinForms
Package Description
18
NAudio.WinForms
Windows Forms audio controls and window-callback variants of WaveOut/WaveIn for the NAudio audio library.
18
NAudio
NAudio, an audio library for .NET
17
NAudio.WinForms
Package Description
17
NAudio.WinForms
Package Description
16

  • Fixed DirectSoundOut failing every playback with DirectSoundException 0x80004001 (or an ArgumentException for a format with extra data, e.g. one read from a WAV by WaveFileReader): the secondary buffer's WAVEFORMATEX was still a GCHandle-pinned WaveFormat instance — a site missed in the #1432 marshalling conversion, since WaveFormat no longer carries [StructLayout] — and now marshals via WaveFormat.MarshalToPtr
  • Fixed WasapiPlayer and WasapiOut being stranded in the Playing state, unable to play again, when the source's Read threw or the source ended before the first buffer was filled (#1442)
  • macOS support (preview) - A new wrappers library is added wrapping macOS native API's for playback/recording, reading/writing files and resampling audio. The NAudio.MacOS package ships pre-release only (X.Y.Z-preview.N) while its API settles, so it stays pre-release alongside stable releases of the other packages. Special thanks to @mdcdi1315 (#1325) for the work and the tests. For more information, see the design doc that describes the decisions that helped shape the wrappers. (#1398)
  • VB.NET support - Added SampleProviderBase and WaveProviderBase, base classes that keep the NAudio 2 Read(buffer, offset, count) signature for languages that cannot name a Span<T> in a method signature, and a Using NAudio from VB.NET guide covering playback, recording and custom providers from VB (#1426)

.NET 9.0

Version Downloads Last updated
3.1.1-preview.2 1 09/22/2026
3.1.1-preview.1 8 09/09/2026
3.1.0 7 09/07/2026
3.1.0-preview.2 8 09/06/2026
3.1.0-preview.1 7 09/06/2026
3.0.2-preview.2 7 09/01/2026
3.0.2-preview.1 8 08/21/2026
3.0.1 8 08/19/2026
3.0.1-preview.1 7 08/19/2026
3.0.0 11 08/19/2026
3.0.0-preview.20 11 08/11/2026
3.0.0-preview.19 9 08/06/2026
3.0.0-preview.18 12 07/18/2026
3.0.0-preview.17 15 07/16/2026
3.0.0-preview.16 9 07/01/2026
3.0.0-preview.15 5 09/15/2026
3.0.0-preview.14 4 09/15/2026
3.0.0-preview.10 0 06/08/2026
3.0.0-preview.9 2 09/10/2026
3.0.0-preview.8 1 09/15/2026
3.0.0-preview.7 2 09/15/2026
3.0.0-preview.6 0 05/21/2026
3.0.0-preview.5 1 09/17/2026
3.0.0-preview.4 2 09/09/2026
3.0.0-preview.3 1 09/15/2026
3.0.0-preview.2 4 09/09/2026
2.4.0 8 09/01/2026
2.3.0 21 05/30/2026
2.2.1 20 05/30/2026
2.2.0 16 05/30/2026
2.1.0 18 05/30/2026
2.1.0-beta.1 17 05/30/2026
2.0.1 19 05/30/2026
2.0.0 17 05/30/2026
2.0.0-beta2 20 05/29/2026
2.0.0-beta1 17 05/30/2026