diff options
| author | iceyrazor <iceyrazor@mailfence.com> | 2025-05-24 04:08:28 -0500 |
|---|---|---|
| committer | iceyrazor <iceyrazor@mailfence.com> | 2025-05-24 04:08:28 -0500 |
| commit | e966d5328d6f328546db213278d1a1a6cd2f58d5 (patch) | |
| tree | f0d41635190d29623920fdf4732cea7a006632d2 /.config/cava/shaders | |
| parent | 5010e575335939597b05f8d58bdf205c693a8004 (diff) | |
install scripts. reorganization. soon to be deployable
Diffstat (limited to '.config/cava/shaders')
| -rw-r--r-- | .config/cava/shaders/bar_spectrum.frag | 79 | ||||
| -rw-r--r-- | .config/cava/shaders/northern_lights.frag | 34 | ||||
| -rw-r--r-- | .config/cava/shaders/pass_through.vert | 14 | ||||
| -rw-r--r-- | .config/cava/shaders/spectrogram.frag | 53 | ||||
| -rw-r--r-- | .config/cava/shaders/winamp_line_style_spectrum.frag | 112 |
5 files changed, 0 insertions, 292 deletions
diff --git a/.config/cava/shaders/bar_spectrum.frag b/.config/cava/shaders/bar_spectrum.frag deleted file mode 100644 index b078913..0000000 --- a/.config/cava/shaders/bar_spectrum.frag +++ /dev/null @@ -1,79 +0,0 @@ -#version 330 - -in vec2 fragCoord; -out vec4 fragColor; - -// bar values. defaults to left channels first (low to high), then right (high to low). -uniform float bars[512]; - -uniform int bars_count; // number of bars (left + right) (configurable) -uniform int bar_width; // bar width (configurable), not used here -uniform int bar_spacing; // space bewteen bars (configurable) - -uniform vec3 u_resolution; // window resolution - -//colors, configurable in cava config file (r,g,b) (0.0 - 1.0) -uniform vec3 bg_color; // background color -uniform vec3 fg_color; // foreground color - -uniform int gradient_count; -uniform vec3 gradient_colors[8]; // gradient colors - -vec3 normalize_C(float y,vec3 col_1, vec3 col_2, float y_min, float y_max) -{ - //create color based on fraction of this color and next color - float yr = (y - y_min) / (y_max - y_min); - return col_1 * (1.0 - yr) + col_2 * yr; -} - -void main() -{ - // find which bar to use based on where we are on the x axis - float x = u_resolution.x * fragCoord.x; - int bar = int(bars_count * fragCoord.x); - - //calculate a bar size - float bar_size = u_resolution.x / bars_count; - - //the y coordinate and bar values are the same - float y = bars[bar]; - - // make sure there is a thin line at bottom - if (y * u_resolution.y < 1.0) - { - y = 1.0 / u_resolution.y; - } - - //draw the bar up to current height - if (y > fragCoord.y) - { - //make some space between bars basen on settings - if (x > (bar + 1) * (bar_size) - bar_spacing) - { - fragColor = vec4(bg_color,1.0); - } - else - { - if (gradient_count == 0) - { - fragColor = vec4(fg_color,1.0); - } - else - { - //find which color in the configured gradient we are at - int color = int((gradient_count - 1) * fragCoord.y); - - //find where on y this and next color is supposed to be - float y_min = color / (gradient_count - 1.0); - float y_max = (color + 1.0) / (gradient_count - 1.0); - - //make color - fragColor = vec4(normalize_C(fragCoord.y, gradient_colors[color], gradient_colors[color + 1], y_min, y_max), 1.0); - } - } - } - else - { - fragColor = vec4(bg_color,1.0); - } -}
\ No newline at end of file diff --git a/.config/cava/shaders/northern_lights.frag b/.config/cava/shaders/northern_lights.frag deleted file mode 100644 index ecd859a..0000000 --- a/.config/cava/shaders/northern_lights.frag +++ /dev/null @@ -1,34 +0,0 @@ -#version 330 - -in vec2 fragCoord; -out vec4 fragColor; - -// bar values. defaults to left channels first (low to high), then right (high to low). -uniform float bars[512]; - -uniform int bars_count; // number of bars (left + right) (configurable) - -uniform vec3 u_resolution; // window resolution, not used here - -//colors, configurable in cava config file -uniform vec3 bg_color; // background color(r,g,b) (0.0 - 1.0), not used here -uniform vec3 fg_color; // foreground color, not used here - -void main() -{ - // find which bar to use based on where we are on the x axis - int bar = int(bars_count * fragCoord.x); - - float bar_y = 1.0 - abs((fragCoord.y - 0.5)) * 2.0; - float y = (bars[bar]) * bar_y; - - float bar_x = (fragCoord.x - float(bar) / float(bars_count)) * bars_count; - float bar_r = 1.0 - abs((bar_x - 0.5)) * 2; - - bar_r = bar_r * bar_r * 2; - - // set color - fragColor.r = fg_color.x * y * bar_r; - fragColor.g = fg_color.y * y * bar_r; - fragColor.b = fg_color.z * y * bar_r; -} diff --git a/.config/cava/shaders/pass_through.vert b/.config/cava/shaders/pass_through.vert deleted file mode 100644 index a4f20e5..0000000 --- a/.config/cava/shaders/pass_through.vert +++ /dev/null @@ -1,14 +0,0 @@ -#version 330 - - -// Input vertex data, different for all executions of this shader. -layout(location = 0) in vec3 vertexPosition_modelspace; - -// Output data ; will be interpolated for each fragment. -out vec2 fragCoord; - -void main() -{ - gl_Position = vec4(vertexPosition_modelspace,1); - fragCoord = (vertexPosition_modelspace.xy+vec2(1,1))/2.0; -} diff --git a/.config/cava/shaders/spectrogram.frag b/.config/cava/shaders/spectrogram.frag deleted file mode 100644 index ccb79ae..0000000 --- a/.config/cava/shaders/spectrogram.frag +++ /dev/null @@ -1,53 +0,0 @@ -#version 330 - -in vec2 fragCoord; -out vec4 fragColor; - -// bar values. defaults to left channels first (low to high), then right (high -// to low). -uniform float bars[512]; - -uniform int bars_count; // number of bars (left + right) (configurable) -uniform int bar_width; // bar width (configurable), not used here -uniform int bar_spacing; // space bewteen bars (configurable) - -uniform vec3 u_resolution; // window resolution - -// colors, configurable in cava config file (r,g,b) (0.0 - 1.0) -uniform vec3 bg_color; // background color -uniform vec3 fg_color; // foreground color - -uniform int gradient_count; -uniform vec3 gradient_colors[8]; // gradient colors - -uniform sampler2D inputTexture; // Texture from the first render pass - -vec3 normalize_C(float y, vec3 col_1, vec3 col_2, float y_min, float y_max) { - // create color based on fraction of this color and next color - float yr = (y - y_min) / (y_max - y_min); - return col_1 * (1.0 - yr) + col_2 * yr; -} - -void main() { - // find which bar to use based on where we are on the y axis - int bar = int(bars_count * fragCoord.y); - float y = bars[bar]; - float band_size = 1.0 / float(bars_count); - float current_band_min = bar * band_size; - float current_band_max = (bar + 1) * band_size; - - int hist_length = 512; - float win_size = 1.0 / hist_length; - - if (fragCoord.x > 1.0 - win_size) { - - if (fragCoord.y > current_band_min && fragCoord.y < current_band_max) { - - fragColor = vec4(fg_color * y, 1.0); - } - } else { - vec2 offsetCoord = fragCoord; - offsetCoord.x += float(win_size); - fragColor = texture(inputTexture, offsetCoord); - } -}
\ No newline at end of file diff --git a/.config/cava/shaders/winamp_line_style_spectrum.frag b/.config/cava/shaders/winamp_line_style_spectrum.frag deleted file mode 100644 index 375ff27..0000000 --- a/.config/cava/shaders/winamp_line_style_spectrum.frag +++ /dev/null @@ -1,112 +0,0 @@ -#version 330 - -// Emulate the "line style" spectrum analyzer from Winamp 2. -// Try this config for a demonstration: - -/* -[general] -bar_width = 2 -bar_spacing = 0 -higher_cutoff_freq = 22000 - -[output] -method = sdl_glsl -channels = mono -fragment_shader = winamp_line_style_spectrum.frag - -[color] -background = '#000000' -gradient = 1 -gradient_color_1 = '#319C08' -gradient_color_2 = '#29CE10' -gradient_color_3 = '#BDDE29' -gradient_color_4 = '#DEA518' -gradient_color_5 = '#D66600' -gradient_color_6 = '#CE2910' - -[smoothing] -noise_reduction = 10 -*/ - -in vec2 fragCoord; -out vec4 fragColor; - -// bar values. defaults to left channels first (low to high), then right (high to low). -uniform float bars[512]; - -uniform int bars_count; // number of bars (left + right) (configurable) -uniform int bar_width; // bar width (configurable), not used here -uniform int bar_spacing; // space bewteen bars (configurable) - -uniform vec3 u_resolution; // window resolution - -//colors, configurable in cava config file (r,g,b) (0.0 - 1.0) -uniform vec3 bg_color; // background color -uniform vec3 fg_color; // foreground color - -uniform int gradient_count; -uniform vec3 gradient_colors[8]; // gradient colors - -vec3 normalize_C(float y,vec3 col_1, vec3 col_2, float y_min, float y_max) -{ - //create color based on fraction of this color and next color - float yr = (y - y_min) / (y_max - y_min); - return col_1 * (1.0 - yr) + col_2 * yr; -} - -void main() -{ - // find which bar to use based on where we are on the x axis - float x = u_resolution.x * fragCoord.x; - int bar = int(bars_count * fragCoord.x); - - //calculate a bar size - float bar_size = u_resolution.x / bars_count; - - //the y coordinate is stretched by 4X to resemble Winamp - float y = min(bars[bar] * 4.0, 1.0); - - // make sure there is a thin line at bottom - if (y * u_resolution.y < 1.0) - { - y = 1.0 / u_resolution.y; - } - - vec4 bar_color; - - if (gradient_count == 0) - { - bar_color = vec4(fg_color,1.0); - } - else - { - //find color in the configured gradient for the top of the bar - int color = int((gradient_count - 1) * y); - - //find where on y this and next color is supposed to be - float y_min = float(color) / (gradient_count - 1.0); - float y_max = float(color + 1) / (gradient_count - 1.0); - - //make a solid color for the entire bar - bar_color = vec4(normalize_C(y, gradient_colors[color], gradient_colors[color + 1], y_min, y_max), 1.0); - } - - - //draw the bar up to current height - if (y > fragCoord.y) - { - //make some space between bars based on settings - if (x > (bar + 1) * (bar_size) - bar_spacing) - { - fragColor = vec4(bg_color,1.0); - } - else - { - fragColor = bar_color; - } - } - else - { - fragColor = vec4(bg_color,1.0); - } -}
\ No newline at end of file |
