A modern standalone port of the classic JESS v2.9.1 XMMS visualization plugin, featuring mesmerizing real-time audio-reactive visuals with support for high-resolution displays up to 4K.
Click the image above to watch JESS in action with mesmerizing real-time visuals!
JESS (Just Enlightened Sound Spectacle) was originally created by Remi Arquier as a visualization plugin for XMMS. This standalone version removes the XMMS dependency while preserving the original's mesmerizing mathematical visualizations, adding modern features like 4K support, configurable modes, and persistent settings.
The visualizer creates stunning, hypnotic patterns that dance and morph in response to audio input, using mathematical transformations, 3D projections, and particle effects to create an ever-changing canvas of light and motion.
I've loved the JESS plugin since my college days - it was always my favorite XMMS visualization, creating those mesmerizing, mathematical patterns that seemed to perfectly capture the essence of whatever music was playing. When XMMS became obsolete and modern Linux systems moved on, I really missed having JESS around. This standalone port is my way of bringing this beautiful piece of software back to life on modern systems, so a new generation can experience its hypnotic visuals, and those of us who remember it can enjoy it once again. The retro 8-bit color mode preserves that authentic early-2000s demoscene aesthetic we all loved.
- 7 Unique Visualization Modes: Each with distinct mathematical patterns and behaviors
- 5 Deformation Effects: Apply hyperbolic, cosine, and zoom distortions
- Real-time Audio Analysis: Responds to frequency spectrum and energy levels
- High Resolution Support: From 320x180 to 4K (3840x2160)
- Configurable Modes: Enable/disable specific visualizations
- Persistent Settings: Saves your preferences in an editable config file
- Retro 8-bit Color Mode: Authentic indexed color palette for that classic demoscene aesthetic
- Psychedelic Color Palettes: Dynamic color generation with smooth, hypnotic transitions
- SDL2 development libraries
- C compiler (gcc/clang)
- Audio input device (microphone)
# Install SDL2 (Ubuntu/Debian)
sudo apt-get install libsdl2-dev
# Build
gcc -o jess standalone_jess.c -lSDL2 -lm -O3
# Run
./jess
# Install SDL2
brew install sdl2
# Build
gcc -o jess standalone_jess.c -lSDL2 -lm -O3
# Run
./jess
# Install SDL2 development libraries
# Download from https://www.libsdl.org/download-2.0.php
# Build (adjust paths as needed)
gcc -o jess.exe standalone_jess.c -lSDL2 -lm -O3 -L/path/to/SDL2/lib -I/path/to/SDL2/include
# Run
jess.exe
For best performance, especially at 4K:
gcc -o jess standalone_jess.c -lSDL2 -lm -O3 -march=native -ffast-math
JESS automatically detects your display resolution on startup:
- 4K displays: Automatically selects 3840ร2160
- 2K displays: Automatically selects 2560ร1440
- Full HD displays: Automatically selects 1920ร1080
- Other displays: Uses default 640ร300
You can override this with command-line arguments or by pressing the resolution keys.
Key | Action |
---|---|
Q | Quit |
Space/ESC | Toggle fullscreen |
H | Show help menu |
I | Show current configuration |
Key | Resolution |
---|---|
C | 320ร180 |
V | 512ร200 |
B | 640ร480 |
N | 800ร400 |
, | 1024ร768 |
. | 1920ร1080 (Full HD) |
/ | 2560ร1440 (2K QHD) |
; | 3840ร2160 (4K UHD) |
Key | Action |
---|---|
F1-F5 | Select blur/deformation mode |
F6-F12 | Select draw mode |
Shift+F1-F5 | Enable/disable blur mode |
Shift+F6-F12 | Enable/disable draw mode |
โ/โ | Cycle through enabled draw modes |
Ctrl+โ/โ | Cycle through enabled blur modes |
Key | Action |
---|---|
P | Random color palette |
E | Toggle psychedelic colors |
A | Toggle audio analyzer display |
D | Freeze current frame |
F | Freeze mode (prevents random changes) |
- Oscilloscope (F9) - Classic dual-channel waveform with circular variant
- Twin Grids (F10) - Dual 3D frequency grids with perspective
- Burn3D (F11) - Morphing 3D particle sphere responding to audio energy
- Burn3D Delayed (F12) - Time-shifted burn effect with trails
- Spectral Balls (F8) - Frequency-based particle fountains
- Stars Morph (F7) - Morphing star field with 3D transformations
- Super Spectral (F6) - Rotating spectral analysis with circular patterns
- None (F1) - Direct pixel copy, no deformation
- Hyperbolic Radial (F2) - Multiple rotating spiral distortions
- Cosine Radial (F3) - Smooth wave-based deformation
- Hyperbolic Zoom (F4) - Centered zoom distortion
- Noise (F5) - Random pixel displacement
Settings are saved to ~/.jess/config.ini
(or %USERPROFILE%/.jess/config.ini
on Windows).
[DrawModes]
# 0=Oscilloscope, 1=Twin Grids, 2=Burn3D, 3=Burn3D Delayed
# 4=Spectral Balls, 5=Stars Morph, 6=Super Spectral
mode0_oscilloscope = 1
mode1_twin_grids = 1
mode2_burn3d = 0 # Disabled
mode3_burn3d_delayed = 1
mode4_spectral_balls = 1
mode5_stars_morph = 1
mode6_super_spectral = 0 # Disabled
[BlurModes]
# 0=None, 1=Hyperbolic, 2=Cosine, 3=Hyperbolic Zoom, 4=Noise
blur0_none = 1
blur1_hyperbolic = 1
blur2_cosine = 1
blur3_hyperbolic_zoom = 0 # Disabled
blur4_noise = 0 # Disabled
[Settings]
resolution_x = 1920
resolution_y = 1080
fullscreen = 0
psychedelic_colors = 1
- Audio Processing: Real-time FFT analysis with 256 frequency bins
- Rendering: Double-buffered SDL2 with authentic 8-bit indexed color mode
- Effects Pipeline: Deformation โ Blur โ Draw โ Fade
- Coordinate System: Mathematical (Y-up) with origin at center
Please note: Some visual effects may appear slightly different from the original JESS XMMS plugin due to differences in modern libraries, audio processing methods, and my porting skills :) .
- Original JESS: Remi Arquier (arquier@crans.org)
JESS was one of the beloved visualization plugins for XMMS (X Multimedia System), the popular Linux media player of the late 1990s and early 2000s. This standalone version preserves the original's mathematical beauty while making it accessible to modern systems without requiring XMMS.
Experience the mesmerizing world of mathematical audio visualization with JESS!