aboutsummaryrefslogtreecommitdiff
path: root/.config/cava/shaders
diff options
context:
space:
mode:
Diffstat (limited to '.config/cava/shaders')
-rw-r--r--.config/cava/shaders/bar_spectrum.frag79
-rw-r--r--.config/cava/shaders/northern_lights.frag34
-rw-r--r--.config/cava/shaders/pass_through.vert14
-rw-r--r--.config/cava/shaders/spectrogram.frag53
-rw-r--r--.config/cava/shaders/winamp_line_style_spectrum.frag112
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