eyecandy 4.3.3

dotnet add package eyecandy --version 4.3.3
                    
NuGet\Install-Package eyecandy -Version 4.3.3
                    
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="eyecandy" Version="4.3.3" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="eyecandy" Version="4.3.3" />
                    
Directory.Packages.props
<PackageReference Include="eyecandy" />
                    
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 eyecandy --version 4.3.3
                    
#r "nuget: eyecandy, 4.3.3"
                    
#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 eyecandy@4.3.3
                    
#: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=eyecandy&version=4.3.3
                    
Install as a Cake Addin
#tool nuget:?package=eyecandy&version=4.3.3
                    
Install as a Cake Tool

eyecandy NuGet

.NET library for processing audio playback as OpenGL textures

If you're interested in audio visualization similar to the old WinAmp plugins (Milkdrop!), or more recently, websites like Shadertoy or VertexShaderArt, then you've come to the right place. Although this is a fully independent library, it is the foundation for the monkey-hi-hat music visualization application, and the accompanying shaders in my Volt's Laboratory repository.

This library does all the hard work of capturing live-playback audio and producing different representations of the sound data as OpenGL textures. On modern Windows 64-bit hardware, 4-digit frame rates are not unusual. As of October 2025, Linux support is back! (It performs well enough that I have used it on a 32-bit Raspberry Pi 4B, in some cases attaining 200+ FPS, although the Pi will not be supported due to GPU and driver limitations and quality.)

Please refer to the repository wiki for usage, configuration, and other details. The demo project is also a good reference, and the library's public API is fully documented. There is even more information in the monkey-hi-hat wiki that will be of interest to library consumers.

Version 3+ does not require audio loopback drivers for Windows! Loopback is internal!

Demos

The repository's demo project has a lot of useful utilities, and illustrates different ways to use the library. Here is the help output (run the demo program without args to see this):

demo [type] [options]

[type]
peaks           Peak audio capture values (use for configuration)
text            Text-based audio visualizations
silence         Silence-detection testing
history         Raw history-texture dumps
wave            Raw PCM wave audio visualization
freq            Frequency magnitude and volume history (multiple shaders)
vert            VertexShaderArt-style integer-array vertex shader (no audio)
frag            Shadertoy-style pixel fragment shader
webaudio        Compares WebAudio pseudo-Decibels to pure FFT Decibels
modes           Different OpenGL drawing modes (points, lines, tris, etc)
uniforms        Testing the Shader.ResetUniforms call

info            List known audio devices (Windows: WASAPI, Linux: OpenAL)
info O          Windows: Use OpenAL instead of WASAPI (requires loopback)

[options]
F               Full-screen mode
S               Simulate audio with the SyntheticData wave sample source
E               Simulate OpenGL errors (currently only "freq" does this)
D               Show Debug log messages (default is Error/Critical)
V               Show Verbose log messages (default is Error/Critical)
O               Capture audio with OpenAL (requires loopback driver)
Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  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
4.3.3 198 11/2/2025
4.3.2 128 11/1/2025
4.3.1 185 10/29/2025
4.3.0 122 10/17/2025
4.2.0 188 10/1/2025
4.1.0 209 9/20/2025
4.0.0 209 8/25/2025
3.3.0 184 8/17/2025
3.2.0 268 8/6/2025
3.1.0 218 8/4/2025
3.0.2 218 5/27/2025
3.0.1 178 11/4/2024
3.0.0 231 1/27/2024
2.0.6 274 12/3/2023
2.0.5 209 10/20/2023
2.0.3 192 9/16/2023
2.0.0 224 9/7/2023
1.0.82 242 9/2/2023
1.0.8 250 7/31/2023
1.0.7 226 7/30/2023
1.0.6 238 7/27/2023
1.0.5 222 7/27/2023
1.0.4 237 7/27/2023
1.0.3 236 7/23/2023
1.0.2 241 7/22/2023
1.0.1 248 7/20/2023
1.0.0 254 7/11/2023