Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AudioQ

AudioQ is a sampler / sound-mangling audio plugin built with the JUCE framework. Drop a sample in, chop it up with granular playback, filter and compress it, glitch it, and automate everything from the DAW. Ships as VST3 and Standalone.

AudioQ Logo

Features

  • Audio File Loading: Drag & drop WAV/AIFF/MP3 files directly into the plugin
  • Real-time Waveform Visualization: Source display plus a live output view of what the chain is doing
  • Playback Control: Play, stop, loop regions drawn on the waveform, optional crossfade on loop points, tempo-aware resampling (20-300 BPM)
  • Creative Modes:
    • Random Mode: Automatically loops random segments
    • Granular Mode: Ultra-short grains (0.05-0.5 s) with randomized playback, controlled by grain size and density
  • DSP Effects:
    • Low-pass and High-pass Filters (20-20000 Hz, dsp::StateVariableTPTFilter with smoothed parameter changes)
    • Compressor with threshold, ratio, attack, and release controls
    • Custom Tremolo effect with rate (0.1-10 Hz) and depth controls
    • Glitch section: Bitcrusher (bit depth 16 down to 1, downsampling up to 40x), Stutter (2-32 Hz repeats from a history buffer), Reverse playback
    • Dry/Wet blend for parallel processing
  • Volume Safety: A peak monitor halts playback if the output exceeds 4.0 linear gain (~+12 dB). This is a fail-safe against runaway granular spikes, not a substitute for monitoring at a safe level.
  • Full Automation: All 16 parameters are automatable via AudioProcessorValueTreeState (APVTS)

Parameters (16, all automatable)

  • GAIN: 0.0 to 3.1623 (~+10 dB)
  • TEMPO: 20-300 BPM (changes playback speed)
  • LPF / HPF: 20-20000 Hz cutoff frequencies
  • Compressor: Threshold -60 to 0 dB, Ratio 1-20, Attack 1-200 ms, Release 5-1000 ms
  • Granular: Grain Size 0.05-0.5 s, Grain Density 0.1-1.0
  • Tremolo: Rate 0.1-10 Hz, Depth 0-1
  • Glitch: Crush Bits 16-1, Crush Downsample 1-40x, Stutter Rate 2-32 Hz
  • Dry/Wet: 0-1

Building from Source

Requirements

  • JUCE Framework (v8.0+ recommended)
  • CMake 3.22+ (recommended) or Projucer
  • Visual Studio 2022 (Windows) or Xcode (macOS)
  • C++17 or later

CMake (VST3 + Standalone)

git clone https://github.com/Szunias/AudioQ.git
cd AudioQ
cmake -B build
cmake --build build --config Release

Artifacts land in build/AudioQ_artefacts/Release/ (VST3/AudioQ.vst3 and the standalone executable).

Projucer (VST3 only)

Open AudioQ.jucer, set your module paths, export to your IDE and build the VST3 target.

Installation

Copy the AudioQ.vst3 folder to your VST3 directory:

  • Windows: C:\Program Files\Common Files\VST3\
  • macOS: /Library/Audio/Plug-Ins/VST3/ or ~/Library/Audio/Plug-Ins/VST3/

Usage

  1. Load AudioQ in your DAW, or run the standalone build
  2. Drag and drop an audio file onto the plugin window
  3. Drag on the waveform to set a loop region; playback follows the project tempo
  4. Enable Granular Mode and shape the sound with grain size and density
  5. Push the glitch section (crush, stutter, reverse) and blend with Dry/Wet

Technical Notes

  • Sample Rate: Supports all standard rates (44.1 kHz, 48 kHz, 96 kHz, etc.)
  • Processing: 32-bit float, stereo
  • State Preservation: Full parameter state saving/loading
  • dsp::StateVariableTPTFilter for filtering, dsp::Compressor for compression
  • Custom DSP for tremolo, bitcrusher, stutter and reverse
  • AudioTransportSource for playback with resampling
  • Thread-safe buffer access with CriticalSection; safety flag is atomic

Author

Igor Szuniewicz

License

MIT — see LICENSE.

Demo

Check out the AudioQ showcase video to see it in action!

About

AudioQ - VST3 audio plugin with real-time effects, granular synthesis, and waveform visualization. Built with JUCE.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages