Ether is the project-wide shared library for Synesthesia, defining the physical constants, visualization standards, and metaphysical mappings used by all agents (Shield, Sword, Dorothy).
Ether defines the canonical mapping between Audio Frequencies (Hz) and the Visual Spectrum (RGB). This ensures that a specific musical note always produces the same color across all interfaces (LEDs, GUI, Analysis).
Mapping Logic:
- Based on Chromatic Octaves.
- C = Red
- G = Blue
- Hue scales linearly across the 12 semitones of an octave.
use chakra::Synesthesia;
// Convert 440Hz (A4) to an RGB color
let color = Synesthesia::freq_to_rgb(440.0);
println!("Red: {}, Green: {}, Blue: {}", color.red, color.green, color.blue);palette: Used for robust color space transformations (Hsv -> Srgb).