aboutsummaryrefslogtreecommitdiffstats
path: root/examples/glsl-view/buffered-stream.alv
blob: 94cb81ba55e28869e81d8b9c48500c3130bbd4f8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
([1]import* glsl-view math link-time)
([2]import osc random)

([4]def *oscout* ([3]osc/connect 'localhost' 9000)
        *clock* ([8]clock true 110 60))

([7]def cam ([99]buffered-stream-source '3D' 64 '/home/s-ol/misc/WeChat_20241111172619.mp4'))

([10]draw $[5]shader"
in vec2 uv;
out vec4 outcol;

void main() {
  vec3 nuv = vec3(uv, $([6]offset cam));
  nuv.xy -= 0.5;

  nuv.y /= 16.0 / 9.0;

  vec2 bu = nuv.xy;

  nuv.z -= abs(length(nuv.xy) / 2);

  nuv.y *= 16.0 / 9.0;
  nuv.xy += 0.5;

  nuv.xy *= 480;
  nuv.xy = floor(nuv.xy);
  nuv.xy /= 480;

  vec3 color = texture($cam, nuv).rgb;
  // color.r = step(uv.x, nuv.z);
  // color.g *= 0.5 + 0.5 * step(uv.x, $([11]ramp 3));
  // color.b *= 0.5 + 0.5 * step(uv.x, $([13]ramp 2));
  // color.r *= 0.5 + 0.5 * step(1 - uv.x, $([14]ramp 2));

  outcol = vec4(color, 1);
}")