OwnAudioSharp 2.2.0
See the version list below for details.
dotnet add package OwnAudioSharp --version 2.2.0
NuGet\Install-Package OwnAudioSharp -Version 2.2.0
<PackageReference Include="OwnAudioSharp" Version="2.2.0" />
<PackageVersion Include="OwnAudioSharp" Version="2.2.0" />
<PackageReference Include="OwnAudioSharp" />
paket add OwnAudioSharp --version 2.2.0
#r "nuget: OwnAudioSharp, 2.2.0"
#:package OwnAudioSharp@2.2.0
#addin nuget:?package=OwnAudioSharp&version=2.2.0
#tool nuget:?package=OwnAudioSharp&version=2.2.0
<div align="center"> <img src="Ownaudiologo.png" alt="Logo" width="600"/> </div>
<a href="https://www.buymeacoffee.com/ModernMube"> <img src="https://img.shields.io/badge/Support-Buy%20Me%20A%20Coffee-orange" alt="Buy Me a Coffee"> </a>
<a href="https://www.nuget.org/packages/OwnAudioSharp"> <img src="https://img.shields.io/badge/Nuget-OwnAudioSharp%20Nuget%20Package-blue" alt="OwnAudioSharp Package"> </a>
OwnAudioSharp is a cross-platform managed audio engine I built entirely in C# with zero external native dependencies. It provides direct access to native system audio APIs (WASAPI, PulseAudio, Core Audio, AAudio) through pure managed code, offering professional-grade audio capabilities that you usually only find in commercial software - completely free.
Why OwnAudioSharp?
Pure Managed Code Engine: No native library dependencies - runs anywhere .NET runs Professional Audio Features: AI-driven vocal separation, audio mastering, advanced chord detection High Performance: Zero-allocation design, lock-free buffers, SIMD optimization Commercial Quality, Free: Professional tools without licensing costs Truly Cross-Platform: Windows, macOS, Linux, Android, iOS (in progress)
⚠️ Important!
Version 2.0.0 brings major changes!
Pre-2.0.0 versions relied on native libraries (miniaudio, portaudio, ffmpeg) and were less optimized. Starting from version 2.0.0, OwnAudioSharp operates with zero external dependencies using a fully managed audio engine.
Key changes:
- ✅ Fully managed audio engine across all platforms
- ✅ ~90% backward compatibility with previous API
- ✅ Significant performance improvements
- ⚠️ Legacy APIs marked as
[Obsolete]- will be removed in future versions
Using OwnaudioSharp version 2 with older code: If you need pre-2.0.0 functionality because you wrote your code for an older version of OwnaudioSharp, replace the Ownaudio namespaces in your code with the OwnaudioLegacy namespace. for example: Ownaudio.Source ⇒ OwnaudioLegacy.Source
Migration recommendation: Use version 2.0.0 or later for all new projects. The new managed engine offers better performance and maintainability.
✨ Key Features
Professional Audio Features (Free!)
Features you typically only find in commercial software:
AI Vocal Separation: State-of-the-art vocal and instrumental track separation using ONNX neural networks
- Multiple quality models:
default,best,karaoke - Professional-grade stem isolation
- Multiple quality models:
Audio Mastering: AI-driven matchering - master your tracks to match reference audio
- Automatic EQ matching and spectral analysis
- Professional mastering without expensive plugins
Advanced Chord Detection: Musical chord recognition from simple to professional
- Real-time and offline analysis
- Major, minor, diminished, augmented, extended chords (7th, 9th, 11th, 13th)
- Chromagram-based recognition
Core Engine Features
Cross-platform Managed Engine: Pure C# implementation for all platforms
- Windows (WASAPI), macOS (Core Audio), Linux (PulseAudio), Android (AAudio), iOS (in progress)
- No native library dependencies - works out of the box
Dual API Layers:
- Low-level Core API for direct engine control
- High-level NET API for professional features
Audio Processing:
- Multi-format support (MP3, WAV, FLAC) with built-in decoders
- Real-time effects: reverb, compressor, equalizer, pitch shifting, tempo control
- Multi-source audio mixing with synchronized playback
High Performance:
- Zero-allocation design for real-time audio
- Lock-free ring buffers for thread safety
- SIMD-optimized audio processing
📦 Installation
NuGet Package Manager
Install-Package OwnAudioSharp
.NET CLI
dotnet add package OwnAudioSharp
Requirements
- .NET 9.0 or later
- No external dependencies
📚 Documentation & API Reference
Complete API documentation with examples is available on the official website:
<div align="center"> <a href="https://modernmube.github.io/OwnAudioSharp/"> <img src="https://img.shields.io/badge/📖_Full_API_Documentation-OwnAudioSharp_Website-blue?style=for-the-badge" alt="Documentation" width="400"> </a> </div>
The website includes:
- Complete API reference for all classes and methods
- Step-by-step tutorials and usage examples
- Architecture and design documentation
- Best practices and performance tips
- Professional feature guides (vocal removal, mastering, chord detection)
🔧 Engine Architecture Documentation
OwnAudioSharp's audio engine is built on a modular architecture with platform-specific implementations. Detailed documentation is available for each component:
Core Components
- Ownaudio.Core - Cross-platform interfaces, audio decoders (MP3/WAV/FLAC), lock-free buffers, and zero-allocation primitives
Platform-Specific Implementations
- Ownaudio.Windows - WASAPI implementation for Windows (10+)
- Ownaudio.Linux - PulseAudio implementation for Linux
- Ownaudio.macOS - Core Audio implementation for macOS
- Ownaudio.Android - AAudio implementation for Android (API 26+)
Each platform implementation includes:
- Architecture overview and native API details
- Performance characteristics and latency information
- Platform-specific requirements and dependencies
- Usage examples and best practices
- Troubleshooting guides
For low-level engine development or platform-specific optimization, check out the individual platform documentation.
🚀 Quick Start Example
// Initialize OwnaudioNET (async for UI apps!)
await OwnaudioNet.InitializeAsync();
// Create file source
var source = new FileSource("music.mp3");
// Create mixer and add source
var mixer = new AudioMixer(OwnaudioNet.Engine);
mixer.AddSource(source);
mixer.Start();
// Play the source
source.Play();
// Apply professional effects
var reverb = new ReverbEffect { Mix = 0.3f, RoomSize = 0.7f };
var compressor = new CompressorEffect(threshold: 0.5f, ratio: 4.0f, sampleRate: 48000f);
var sourceWithEffects = new SourceWithEffects(source, reverb, compressor);
// Control playback
source.Volume = 0.8f;
source.Seek(30.0); // seconds
💡 Support
OwnAudioSharp is completely free and open-source, providing professional-grade audio features without licensing costs. If you find this library useful, especially for commercial purposes, consider supporting its continued development:
<div align="center"> <a href="https://www.buymeacoffee.com/ModernMube" target="_blank"> <img src="https://cdn.buymeacoffee.com/buttons/v2/arial-yellow.png" alt="Buy Me A Coffee" style="height: 60px !important;width: 217px !important;"> </a> </div>
Why support?
- Enables continued development and new features
- Ensures timely bug fixes and updates
- Improves documentation and examples
- Saves you thousands in commercial audio library licensing costs
Your support helps keep professional audio technology accessible to everyone!
📄 License
See the LICENSE file for details.
🙏 Acknowledgements
Special thanks to the creators of:
- DryWetMidi - .NET library to work with MIDI data and MIDI devices
- soundtouch.net - .NET wrapper for SoundTouch
- Avalonia - Cross-platform .NET UI framework
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net9.0 is compatible. net9.0-android was computed. net9.0-android35.0 is compatible. 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. |
-
net9.0
- Avalonia (>= 11.3.7)
- MathNet.Numerics (>= 5.0.0)
- Melanchall.DryWetMidi (>= 8.0.2)
- Microsoft.ML.OnnxRuntime (>= 1.23.1)
- SoundTouch.Net (>= 2.3.2)
- System.Memory (>= 4.6.3)
- System.Numerics.Tensors (>= 9.0.10)
-
net9.0-android35.0
- Avalonia (>= 11.3.7)
- MathNet.Numerics (>= 5.0.0)
- Melanchall.DryWetMidi (>= 8.0.2)
- Microsoft.ML.OnnxRuntime (>= 1.23.1)
- SoundTouch.Net (>= 2.3.2)
- System.Memory (>= 4.6.3)
- System.Numerics.Tensors (>= 9.0.10)
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 |
|---|---|---|
| 2.5.4 | 110 | 1/11/2026 |
| 2.5.3 | 102 | 12/31/2025 |
| 2.4.1 | 167 | 12/21/2025 |
| 2.3.4 | 266 | 12/15/2025 |
| 2.3.3 | 157 | 12/14/2025 |
| 2.3.2 | 193 | 12/13/2025 |
| 2.3.1 | 306 | 12/7/2025 |
| 2.2.0 | 194 | 11/24/2025 |
| 2.1.0 | 148 | 11/8/2025 |
| 2.0.15 | 210 | 11/5/2025 |
| 2.0.0 | 276 | 11/4/2025 |
| 1.0.68 | 254 | 9/21/2025 |
| 1.0.65 | 176 | 9/14/2025 |
| 1.0.62 | 120 | 9/13/2025 |
| 1.0.25 | 214 | 9/7/2025 |
| 1.0.5 | 203 | 9/11/2025 |
| 1.0.0 | 231 | 8/24/2025 |
| 0.94.56 | 179 | 8/22/2025 |
| 0.91.35 | 132 | 8/15/2025 |
| 0.89.65 | 300 | 7/26/2025 |
| 0.89.45 | 352 | 7/20/2025 |
| 0.43.19 | 129 | 7/5/2025 |
| 0.31.45 | 215 | 6/17/2025 |
| 0.30.12 | 293 | 6/9/2025 |
| 0.25.92 | 281 | 6/9/2025 |
| 0.25.91 | 262 | 6/8/2025 |
| 0.25.90 | 251 | 6/8/2025 |
| 0.25.82 | 172 | 6/6/2025 |
| 0.25.78 | 166 | 6/1/2025 |
| 0.25.62 | 551 | 5/20/2025 |
| 0.25.7 | 475 | 5/20/2025 |