Made my first project in c++.
Inspired by the NCS style circular music Visualiser, I have tried making a simpler version of the same. This is the desktop native audio visualisation utility designed for Windows. The visualiser utilizes WASAPI Loopback feature to intercept and visualize global system audio in real-time.
Integrated and works flawlessly with the Realtime audio input (Sytem audio, not the microphone). Tested with Youtube, spotify and games, the Soundwave renders a responsive frequency based visualisation overlay.
- System-Wide Audio Capture: Utilizes low-latency WASAPI loopback to capture audio from any running application without requiring virtual audio cables.
- Real-Time FFT Analysis: Implements Fast Fourier Transform algorithms to convert time-domain audio signals into frequency-domain data for accurate spectrum visualization.
- High-Performance Rendering: Built on SFML 3.0 for hardware-accelerated 2D graphics, ensuring 60 FPS performance with minimal CPU overhead.
[Windows OS Audio Mixer]
|
v
[MiniAudio Backend (WASAPI Loopback)] --> Capture Thread
|
v
[Raw PCM Data Buffer]
|
v
[KissFFT Processor] --> Converts Time Domain to Frequency Domain
|
v
[Normalization & Smoothing Engine] --> Applies Linear Interpolation (Lerp)
|
v
[SFML Render Engine] --> Draws Geometry to Window
-
Clone the Repository
git clone https://github.com/Adityarya11/Sound-Wave-Visualizer.git cd Sound-Wave-Visualizer
-
Create Build Directory
mkdir build cd build
-
Configure Project Run CMake to generate the Visual Studio solution files. Ensure you target the x64 architecture.
cmake ..
-
Compile Build the project in Debug or Release mode.
cmake --build . --config Release
-
Run Navigate to the Release folder and execute the binary.
./Release/SoundWaveVisualizer.exe
Since the core idea was to implement a circular visualiser that thing is under development. I have taken reference and was motivated by the video of
I wont be releasing this as an app any soon but definitely try to atleast make the circular visualiser.
If You find this fun and cool then Thanks !!
You can watch the video as well.
Visualiser.mp4
- I know the color scheme is boring but i dont know what color to pick
- most of the bars(sound waves) are left sided, need to make them middle.
