Audio processing · resampling · signal fidelity

High-performance
audio resampling.

Transformations.Audio provides fast, high-fidelity audio resampling for .NET, with practical cleanup, speech polishing, level analysis, PCM conversion, WAV IO, and repeatable fidelity checks growing around the core.

✓ High SNR ✓ Fast preview routes ✓ .NET 8, 9, and 10
pipeline://clean-speech ready
INPUT noisy-voice.wav · 48 kHz · mono
Rumble
high-pass
Hum
notched
Voice
limited
199audio tests
3target frameworks
0native dependencies added
4main resampling routes: linear, spline, sinc, hybrid
8+cleanup and speech-polish tools
PCM16quantization, dither, and WAV read/write
A/Brepeatable fidelity reports for algorithm changes
Audio cleanup

Tools for rough recordings, not just perfect lab signals.

The package now includes practical repair and polish APIs for noisy voice notes, podcast tracks, narration, and utility pipelines. The approach is deterministic and composable: each stage is usable alone, and the presets are built from the same pieces.

Click and pop repair

Detects isolated sample outliers and interpolates from local neighbours, while preserving ordinary ramps and channel separation.

ClickRepairer.RepairClicks
Hum removal

Convenience 50Hz/60Hz mains-hum removal using narrow notch filters over configurable harmonics.

HumRemover.Remove60HzHum
Speech presets

Opinionated cleanup chains for spoken-word material: high-pass, optional hum notches, click repair, gate, normalize, limit, and de-ess.

SpeechCleaner.CleanPodcast
De-essing

Uses a 4-9 kHz sidechain to reduce harsh sibilance without bluntly low-passing the whole recording.

DeEsser.Apply
Filters

Public high-pass, low-pass, and notch biquad filters for rumble, hiss shaping, hum, and utility DSP chains.

AudioFilters.ApplyHighPass
Cleaner pipeline

A conservative one-call cleanup chain for common rough-recording issues, with every stage configurable.

AudioCleaner.CleanRecording
Resampling

Fast paths, high-fidelity paths, and evidence between them.

Transformations.Audio keeps multiple algorithms in the mix because resampling is full of trade-offs. The active direction is a small set of dependable routes, with experimental candidates kept separately for A/B testing rather than quietly deleted.

Linear

The fastest route for previews, meter feeds, or environments where near-instant conversion matters more than high-frequency fidelity.

var output = Linear.Resample(input, inRate, outRate, channels);
Best for: speed-sensitive preview paths

Spline

A compact balanced interpolator for moderate quality needs. Useful where a smooth output is more important than absolute anti-alias performance.

var output = Spline.Resample(input, inRate, outRate, channels);
Best for: general-purpose scaling

Sinc

The raw high-fidelity route, especially strong for upsampling and near-unity conversions where preserving musical detail matters.

var output = Sinc.Resample(input, inRate, outRate, channels);
Best for: quality-first conversions

Hybrid

An evidence-driven router that chooses fast or alias-aware paths by quality mode and sample-rate ratio.

var output = Hybrid.Resample(input, inRate, outRate, channels);
Best for: default application pipelines
QuestionEvidence styleWhy it matters
Is the fast route good enough?repeatable timing + SNR tablesSpeed wins only count when quality stays inside the intended gate.
Should a candidate be promoted?default + real-like fixture suitesMusic, speech, percussion, field audio, alias stress, and round-trip cases behave differently.
Are duplicates truly identical?A/B algorithm reportsNear-identical variants can be carried as experimental while the public API stays small.
Toolkit surface

More than a resampler.

The package is growing into a focused audio utility layer for .NET apps that need reliable transformations without pulling in a large native stack.

Level analysis

Sample peak, true peak, RMS, dB conversion, crest factor, zero-crossing rate, DC offset, and energy measurements.

AudioLevels.Analyze
Dynamics

Offline compressor, noise gate, and linked peak limiter for safer final levels and quieter gaps.

PeakLimiter.Limit
Channels

Layout-aware downmixing from mono, stereo, 5.1, 7.1, and larger channel layouts.

Downmixer.Process
Editing

Silence trimming, fades, crossfades, and segment assembly for simple offline processing chains.

AudioFades.FadeIn
PCM and WAV

PCM16 conversion, dither options, little-endian bytes, and simple PCM16 WAV reading/writing.

WavePcm16Reader.Read
Fixtures

Deterministic sine, chirp, impulse, and seeded white-noise generators for repeatable tests and examples.

AudioSignalGenerator.CreateSine
Transformations.Audio

Install once.
Clean, convert, and measure.

NuGet — single package
$ dotnet add package Transformations.Audio
View on NuGet.org .NET 8 · .NET 9 · .NET 10 · MIT licensed