NAudio
Win2D
Our great sponsors
NAudio | Win2D | |
---|---|---|
27 | 8 | |
5,242 | 1,749 | |
1.8% | 1.0% | |
5.7 | 7.2 | |
8 days ago | about 2 months ago | |
C# | C++ | |
MIT License | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
NAudio
-
DIY Wavetable Synthesis Sequencer
Thanks for the suggestion. I have to rewrite most of the audio signal processing code anyway as I am using NAudio currently. Have heard of PiSound before, and will definitely check it out as it is pretty popular. I just need a way to output an array of numbers, representing the processed sound wave, to turn into an analog signal. Writing this from scratch is unnecessarily complicated when these libraries already exist.
-
ButterWorth signal processing
https://github.com/naudio/NAudio/blob/master/NAudio.Core/Dsp/BiQuadFilter.cs Simple formulas for all major types of filters
-
Cross-platform audio playback
Not tried it but there is also NAudio (https://github.com/naudio/NAudio)
Iโve used NAudio for this. You get Windows support for free, and itโs not too difficult to implement for other platforms. I have gists published for Android and iOS that should get you going.
- Playback audio from microphone to default speaker
-
What is the best C# Library for detecting pitch from voice singing (through microphone)?
This might help: NAudio, they have a doc file for working with pitch here
- How to install NAudio in unity
- Show HN: Tone v0.0.4 โ hackable command line audio tagger โ any feedback?
-
Trying to play a wave file slowed down
Hello. I'm working on a school assignment where I'm creating an application where the user can play .wav files slowed down to 0.5 speed. I'm using Naudio and Varispeed to accomplish this. There is a varispeed demo that shows how to do it and from what I can tell, I'm doing more or less the exact same in my code as the demo. But the wave file is played in the normal speed anyways. Does anyone have a clue on what I'm doing wrong?
- What programming environment do you recommend for implementing some DSP theory?
Win2D
-
Alternative to SharpDX for 2D rendering?
For Windows only, Win2D!
-
[WinUI] High level 2D rendering library
You're looking for Win2D: https://github.com/microsoft/Win2D. It's the official D2D WinRT wrapper, supports UWP and WinUI, has seamless interior with XAML, it's very easy to use and has extensive interop APIs (even more so once we ship the next release) that give you maximum control if needed. I recommend checking it out ๐
- Easy-to-use 2D graphics libraries
- WPF Begins its Long Goodbye
-
Wanting to create a GUI project, any help?
Your easiest bet is likely to use Win2D within UWP or WinUI 3, then you could just throw a CanvasControl as the root of your UI and draw whatever you want on it, including setting individual pixels. Alternatively an easy way to do that could be to use a WriteableBitmap in WPF/UWP/WinUI 3 just drawn into a root Border or something, and then you can easily manipulate pixels there. Of course, that'd be slower and not CPU accelerated, but still viable depending on your exact use case.
-
What library should I use to make basic 2D graphics which is simple to use and that is able to quickly draw a bunch of particles (circles) on the screen with updating positions every frame? (Not the best description ever. I explain it better in the post's text)
Alternatively you can also try Win2D, which is an official wrapper for D2D available for UWP and WinUI. You could use its CanvasAnimatedControl panel and then do your drawing from there, and just manually draw all your particles. The actual drawing would still be GPU accelerated, so it'd be relatively efficient (though less than using a custom shader, as you'd be queueing each particle from the CPU side).
-
I've made a Video Editor for Windows 10, focused on Speed + Simplicity. Would you use it?
To make a long story short, it's a UWP app since I've used DirectX 11 for drawing on the screen. I use C#, and I needed win2d (https://github.com/microsoft/Win2D)
-
What's the best way to develop something with GUI in C#?
Universal Windows Platform was introduced as the new hotness, but in my personal experience lacks a number of features from WPF I couldn't part with. It seems to have flopped a bit outside of applications developed by Microsoft. Projects that I though would bring features I really wanted (like win2d: GitHub - microsoft/Win2D) seem to have lost support. I'd hold off on this.
What are some alternatives?
CSCore - An advanced audio library, written in C#. Provides tons of features. From playing/recording audio to decoding/encoding audio streams/files to processing audio data in realtime (e.g. applying custom effects during playback, create visualizations,...). The possibilities are nearly unlimited.
Silk.NET - The high-speed OpenGL, OpenCL, OpenAL, OpenXR, GLFW, SDL, Vulkan, Assimp, WebGPU, and DirectX bindings library your mother warned you about.
Xabe.FFmpeg - .NET Standard wrapper for FFmpeg. It allows to process media without know how FFmpeg works, and can be used to pass customized arguments to FFmpeg from dotnet core application.
OpenTK - The Open Toolkit library is a fast, low-level C# wrapper for OpenGL, OpenAL & OpenCL. It also includes windowing, mouse, keyboard and joystick input and a robust and fast math library, giving you everything you need to write your own renderer or game engine. OpenTK can be used standalone or inside a GUI on Windows, Linux, Mac.
vosk-api - Offline speech recognition API for Android, iOS, Raspberry Pi and servers with Python, Java, C# and Node
SciChart - Highest rated & Fastest WPF Charts, used by F1, NASA and more
TagLib# - Library for reading and writing metadata in media files
Oxyplot - A cross-platform plotting library for .NET
Audio Switcher - .NET Library which facilitates interacting with Audio Devices on Windows
Veldrid - A low-level, portable graphics library for .NET.
Bufdio - A cross platform audio playback library for .NET with PortAudio and FFmpeg
Helix Toolkit - Helix Toolkit is a collection of 3D components for .NET.