NAudio.Sampler 3.0.2-preview.2

Prefix Reserved
This is a prerelease version of NAudio.Sampler.
dotnet add package NAudio.Sampler --version 3.0.2-preview.2
                    
NuGet\Install-Package NAudio.Sampler -Version 3.0.2-preview.2
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="NAudio.Sampler" Version="3.0.2-preview.2" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="NAudio.Sampler" Version="3.0.2-preview.2" />
                    
Directory.Packages.props
<PackageReference Include="NAudio.Sampler" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add NAudio.Sampler --version 3.0.2-preview.2
                    
#r "nuget: NAudio.Sampler, 3.0.2-preview.2"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package NAudio.Sampler@3.0.2-preview.2
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=NAudio.Sampler&version=3.0.2-preview.2&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=NAudio.Sampler&version=3.0.2-preview.2&prerelease
                    
Install as a Cake Tool

NAudio.Sampler

Nuget

A cross-platform software sampler for NAudio. Play MIDI through SoundFont (.sf2) and SFZ instruments, or a single sample mapped across the keyboard. Truly cross-platform — net9.0, no [SupportedOSPlatform].

What's included

  • SoundFont playbackSoundFontSampler plays .sf2 instruments, including the SF2 modulator engine
  • SFZ playbackSfzSampler plays SFZ instruments, with ISfzSampleLoader / FileSfzSampleLoader for resolving the referenced sample files
  • Single-sample instrumentsSingleSampleInstrument / SingleSampleSampler map one sample across the keyboard
  • Voice engine — a polyphonic SamplerEngine with DAHDSR envelopes, LFOs, modulated filters (SamplerFilterType), crossfade curves (SamplerCrossfadeCurve), trigger modes (SamplerTrigger) and reverb/chorus sends

Each sampler is exposed as an ISampleProvider, so it drops straight into any NAudio mixer or output pipeline.

When to use it

Reach for this package when you want to render MIDI to audio using SoundFont or SFZ instruments, or build a sample-based instrument, on any platform NAudio runs on. It builds on NAudio.SoundFile for sample loading and is not pulled in by the NAudio meta-package — reference it explicitly:

dotnet add package NAudio.Sampler

Tutorial

For a worked walkthrough see the NAudio.Sampler tutorial.

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

License

MIT.

Product Compatible and additional computed target framework versions.
.NET net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
3.0.2-preview.2 46 8/27/2026
3.0.2-preview.1 51 8/20/2026
3.0.1 109 8/18/2026
3.0.1-preview.1 61 8/17/2026
3.0.0 94 8/15/2026
3.0.0-preview.20 71 8/8/2026
3.0.0-preview.19 69 7/25/2026
3.0.0-preview.18 61 7/16/2026
3.0.0-preview.17 65 7/11/2026
3.0.0-preview.16 76 7/1/2026
3.0.0-preview.15 70 6/28/2026
3.0.0-preview.14 70 6/25/2026

* Fixed `Mp3FileReaderBase` seeking silently restarting playback from the beginning of the file on MP3s with a Xing/Info header — the lazy frame index was gated on `IsLengthExact`, which such a header sets without any frame having been scanned. Also fixed seeks landing on the wrong frame when the target fell exactly on a frame boundary, and Xing/Info header frames being indexed as audio (shifting every seek in those files ~26 ms early). A 3.0.0 regression (#1419)
* Fixed `WdlResamplingSampleProvider` losing samples, and eventually returning 0 permanently, when asked for more output than the source could supply — a 3.0.0 regression that broke the common pattern of reading generously from a `BufferedWaveProvider`-backed capture chain. `WdlResampler.ResampleOut` also no longer drifts in input-driven (feed) mode when handed fewer samples than `ResamplePrepare` requested (#1412)