All Projects → feliwir → SharpAudio

feliwir / SharpAudio

Licence: MIT license
Audio playback/capturing engine for C#

Programming Languages

C#
18002 projects

Projects that are alternatives of or similar to SharpAudio

Zipstorer
A Pure C# Class to Store Files in Zip
Stars: ✭ 139 (+0%)
Mutual labels:  netcore, netstandard
Ffmediatoolkit
FFMediaToolkit is a cross-platform video decoder/encoder library for .NET that uses FFmpeg native libraries. It supports video frames extraction, reading stream metadata and creating videos from bitmaps in any format supported by FFmpeg.
Stars: ✭ 156 (+12.23%)
Mutual labels:  netcore, netstandard
Activelogin.authentication
Support Swedish BankID (svenskt BankID) authentication in .NET.
Stars: ✭ 141 (+1.44%)
Mutual labels:  netcore, netstandard
Docnet
DocNET is as fast PDF editing and reading library for modern .NET applications
Stars: ✭ 128 (-7.91%)
Mutual labels:  netcore, netstandard
Opentouryo
”Open棟梁”は、長年の.NETアプリケーション開発実績にて蓄積したノウハウに基づき開発した.NET用アプリケーション フレームワークです。 (”OpenTouryo” , is an application framework for .NET which was developed using the accumulated know-how with a long track record in .NET application development.)
Stars: ✭ 233 (+67.63%)
Mutual labels:  netcore, netstandard
Oss.core
.net core下的领域开源电商网站,类库使用的标准库项目,集成微信和支付宝。 暂时还在开发阶段
Stars: ✭ 128 (-7.91%)
Mutual labels:  netcore, netstandard
Megaapiclient
MegaApiClient is a C# .Net library to access http://mega.co.nz / http://mega.nz cloud storage and file hosting service.
Stars: ✭ 151 (+8.63%)
Mutual labels:  netcore, netstandard
Raft.net
Implementation of RAFT distributed consensus algorithm among TCP Peers on .NET / .NETStandard / .NETCore / dotnet
Stars: ✭ 112 (-19.42%)
Mutual labels:  netcore, netstandard
Swan
Swan stands for Stuff We All Need. Unosquare's collection of C# extension methods and classes.
Stars: ✭ 202 (+45.32%)
Mutual labels:  netcore, netstandard
Oxyplot
A cross-platform plotting library for .NET
Stars: ✭ 2,466 (+1674.1%)
Mutual labels:  netcore, netstandard
Elmahcore
ELMAH for Net.Standard and Net.Core
Stars: ✭ 127 (-8.63%)
Mutual labels:  netcore, netstandard
Platform Compat
Roslyn analyzer that finds usages of APIs that will throw PlatformNotSupportedException on certain platforms.
Stars: ✭ 250 (+79.86%)
Mutual labels:  netcore, netstandard
Colore
A powerful C# library for Razer Chroma's SDK
Stars: ✭ 121 (-12.95%)
Mutual labels:  netcore, netstandard
Azos
A to Z Sky Operating System / Microservice Chassis Framework
Stars: ✭ 137 (-1.44%)
Mutual labels:  netcore, netstandard
Reversemarkdown Net
ReverseMarkdown.Net is a Html to Markdown converter library in C#. Conversion is very reliable since HtmlAgilityPack (HAP) library is used for traversing the Html DOM
Stars: ✭ 116 (-16.55%)
Mutual labels:  netcore, netstandard
Fluentdispatch
🌊 .NET Standard 2.1 framework which makes easy to scaffold distributed systems and dispatch incoming load into units of work in a deterministic way.
Stars: ✭ 152 (+9.35%)
Mutual labels:  netcore, netstandard
Nlua
Bridge between Lua and the .NET.
Stars: ✭ 1,326 (+853.96%)
Mutual labels:  netcore, netstandard
Mailmergelib
MailMergeLib is a mail message client library which provides comfortable mail merge capabilities for text, inline images and attachments, as well as good throughput and fault tolerance for sending mail messages.
Stars: ✭ 97 (-30.22%)
Mutual labels:  netcore, netstandard
Revo
Event Sourcing, CQRS and DDD framework for C#/.NET Core.
Stars: ✭ 162 (+16.55%)
Mutual labels:  netcore, netstandard
Standard.licensing
Easy-to-use licensing library for .NET Framework, Mono, .NET Core, and Xamarin products
Stars: ✭ 239 (+71.94%)
Mutual labels:  netcore, netstandard

SharpAudio

SharpAudio is a cross-platform, backend-agnostic library to playback sounds in .NET. It achieves that by wrapping the platform specific backends.

Supported backends:

  • XAudio2
  • OpenAL

Build status

Build Status Nuget

Example

SharpAudio provides a low-level interface that wraps audio sources & buffers:

    var engine = AudioEngine.CreateDefault();
    var buffer = engine.CreateBuffer();
    var source = engine.CreateSource();

    // Play a 1s long sound at 440hz
    AudioFormat format;
    format.BitsPerSample = 16;
    format.Channels = 1;
    format.SampleRate = 44100;
    float freq = 440.0f;
    var size = format.SampleRate;
    var samples = new short[size];

    for (int i = 0; i < size; i++)
    {
        samples[i] = (short)(32760 * Math.Sin((2 * Math.PI * freq) / size * i));
    }

    buffer.BufferData(samples, format);

    source.QueueBuffer(buffer);

    source.Play();

A high level interface that can load and play sound files is provided in the SharpAudio.Codec package:

    var engine = AudioEngine.CreateDefault();
    var soundStream = new SoundStream(File.OpenRead("test.mp3"), engine);

    soundStream.Volume = 0.5f;
    soundStream.Play();

The following sound formats are supported at the moment:

  • .wav (PCM & ADPCM)
  • .mp3
  • .ogg (WIP: Vorbis & Opus)
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].