From 0f93a69d5e1beee1a72b3f4c87fe13c35fe9421a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Santi=20Nore=C3=B1a?= Date: Mon, 15 Jul 2013 19:08:01 +0200 Subject: [PATCH] Color and Alpha in glsl shader instead Gem object Deleted old audio files --- puredata/glsl/gain.ctl.pd | 20 ++ puredata/glsl/gain.frag | 21 ++ puredata/glsl/gain.vert | 6 + puredata/glsl_loader.pd | 85 ++++++++ puredata/layer.pd | 409 +++++++++++++++++++++----------------- puredata/layer_audio.pd | 184 ----------------- puredata/lms-audio.pd | 233 ---------------------- puredata/lms-video.pd | 10 +- todo.txt | 14 +- 9 files changed, 369 insertions(+), 613 deletions(-) create mode 100755 puredata/glsl/gain.ctl.pd create mode 100755 puredata/glsl/gain.frag create mode 100755 puredata/glsl/gain.vert create mode 100644 puredata/glsl_loader.pd delete mode 100644 puredata/layer_audio.pd delete mode 100644 puredata/lms-audio.pd diff --git a/puredata/glsl/gain.ctl.pd b/puredata/glsl/gain.ctl.pd new file mode 100755 index 0000000..5d7d7ff --- /dev/null +++ b/puredata/glsl/gain.ctl.pd @@ -0,0 +1,20 @@ +#N canvas 360 217 685 451 10; +#X obj 30 65 t b; +#X obj 30 43 inlet shader_init; +#X obj 152 278 outlet shader_data; +#X obj 152 43 inlet shader_control; +#X text 325 263 (c)2011 Marian Weger; +#X obj 152 236 list trim; +#X obj 152 164 list prepend gain; +#X obj 152 65 route gain; +#X obj 152 133 list 1 1 1 1; +#X obj 152 97 t b a; +#X connect 0 0 8 0; +#X connect 1 0 0 0; +#X connect 3 0 7 0; +#X connect 5 0 2 0; +#X connect 6 0 5 0; +#X connect 7 0 9 0; +#X connect 8 0 6 0; +#X connect 9 0 8 0; +#X connect 9 1 8 1; diff --git a/puredata/glsl/gain.frag b/puredata/glsl/gain.frag new file mode 100755 index 0000000..1661c82 --- /dev/null +++ b/puredata/glsl/gain.frag @@ -0,0 +1,21 @@ +#extension GL_ARB_texture_rectangle : enable + +uniform sampler2DRect MyTex; + +uniform vec4 gain; + +void main(void) +{ + +vec2 pos = (gl_TextureMatrix[0] * gl_TexCoord[0]).st; +vec4 color_old = texture2DRect(MyTex, vec2(pos.x, pos.y)); +vec4 color_new = color_old; + +color_new.r = clamp(gain.r * color_old.r, 0., 1.); +color_new.g = clamp(gain.g * color_old.g, 0., 1.); +color_new.b = clamp(gain.b * color_old.b, 0., 1.); +color_new.a = clamp(gain.a * color_old.a, 0., 1.); + +gl_FragColor = color_new; + +} diff --git a/puredata/glsl/gain.vert b/puredata/glsl/gain.vert new file mode 100755 index 0000000..db2d70b --- /dev/null +++ b/puredata/glsl/gain.vert @@ -0,0 +1,6 @@ +void main() +{ + gl_TexCoord[0] = gl_MultiTexCoord0; + gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex; + +} diff --git a/puredata/glsl_loader.pd b/puredata/glsl_loader.pd new file mode 100644 index 0000000..9819883 --- /dev/null +++ b/puredata/glsl_loader.pd @@ -0,0 +1,85 @@ +#N canvas 604 90 796 614 10; +#X obj 188 289 glsl_vertex; +#X msg 90 272 print; +#X obj 188 576 glsl_program; +#X obj 293 515 pack 0 0; +#X msg 90 423 print; +#X obj 293 471 change; +#X obj 338 316 change; +#X msg 293 539 link \$1 \$2; +#X msg 90 559 print; +#X obj 188 440 glsl_fragment; +#X floatatom 293 495 2 0 0 0 ID - -; +#X floatatom 338 369 2 0 0 0 ID - -; +#X obj 51 34 route bang; +#X obj 188 131 gemhead 1; +#X msg 188 153 1; +#X obj 188 177 change; +#X obj 188 201 t b; +#X obj 434 627 change; +#X obj 434 648 t b; +#X obj 458 368 symbol; +#X obj 458 343 t b; +#X msg 434 579 0; +#X obj 51 55 t b b b; +#X msg 513 395 open glsl/gain.frag; +#X obj 481 132 loadbang; +#X obj 434 132 t b; +#X obj 51 11 inlet gemlist; +#X obj 188 670 outlet gemlist; +#X obj 149 12 inlet shader-data; +#X obj 434 670 outlet shader-init; +#X obj 293 567 print [glsl] \$1; +#X msg 234 259 open glsl/gain.vert; +#X obj 74 458 t b; +#X obj 97 210 t b; +#X msg 234 226 set open glsl/\$1.vert; +#X msg 513 368 set open glsl/\$1.frag; +#X obj 481 175 t l l; +#X obj 481 154 list append \$1; +#X obj 212 62 print; +#X connect 0 0 9 0; +#X connect 0 1 6 0; +#X connect 1 0 0 0; +#X connect 2 0 27 0; +#X connect 2 1 17 0; +#X connect 3 0 7 0; +#X connect 4 0 9 0; +#X connect 5 0 10 0; +#X connect 6 0 11 0; +#X connect 6 0 20 0; +#X connect 7 0 2 0; +#X connect 7 0 30 0; +#X connect 8 0 2 0; +#X connect 9 0 2 0; +#X connect 9 1 5 0; +#X connect 10 0 3 0; +#X connect 11 0 3 1; +#X connect 12 0 22 0; +#X connect 12 1 0 0; +#X connect 13 0 14 0; +#X connect 14 0 15 0; +#X connect 15 0 16 0; +#X connect 16 0 31 0; +#X connect 17 0 18 0; +#X connect 18 0 29 0; +#X connect 19 0 23 0; +#X connect 20 0 19 0; +#X connect 21 0 17 0; +#X connect 22 0 25 0; +#X connect 22 1 32 0; +#X connect 22 2 33 0; +#X connect 23 0 9 0; +#X connect 24 0 37 0; +#X connect 25 0 21 0; +#X connect 26 0 12 0; +#X connect 28 0 2 0; +#X connect 28 0 38 0; +#X connect 31 0 0 0; +#X connect 32 0 10 0; +#X connect 33 0 31 0; +#X connect 34 0 31 0; +#X connect 35 0 23 0; +#X connect 36 0 34 0; +#X connect 36 1 35 0; +#X connect 37 0 36 0; diff --git a/puredata/layer.pd b/puredata/layer.pd index a43ecfa..81bce79 100644 --- a/puredata/layer.pd +++ b/puredata/layer.pd @@ -1,4 +1,4 @@ -#N canvas 122 135 1221 604 10; +#N canvas 112 135 1221 604 10; #X obj 391 283 << 8; #X obj 391 325 +; #X obj 469 285 << 8; @@ -175,10 +175,6 @@ #X obj 758 166 s \$0-play; #X obj 675 202 expr $f1 > 244 && $f1 < 250; #X obj 119 80 select 0; -#X obj 417 149 spigot; -#X floatatom 417 186 5 0 0 0 - - -; -#X msg 386 106 1; -#X msg 465 109 1; #X connect 0 0 116 0; #X connect 1 0 116 0; #X connect 2 0 1 0; @@ -367,15 +363,12 @@ #X connect 133 0 131 0; #X connect 135 0 56 0; #X connect 136 0 113 0; -#X connect 137 0 138 0; -#X connect 139 0 137 0; -#X connect 140 0 137 1; #X restore 469 -163 pd video; -#N canvas 1 90 701 649 video_render 0; +#N canvas 820 90 701 649 video_render 1; #X obj 232 95 inlet; -#X text 336 319 Green; -#X text 255 317 Red; -#X text 418 317 Blue; +#X text 309 316 Green; +#X text 223 318 Red; +#X text 395 317 Blue; #X msg 255 772 1; #X obj 255 725 loadbang; #X obj 231 694 translateXYZ; @@ -384,23 +377,19 @@ #X obj 233 287 pix_alpha; #X obj 351 625 - 32768; #X obj 254 627 - 32768; -#X msg 310 211 0; -#X msg 252 211 1; +#X msg 295 207 0; +#X msg 257 207 1; #X obj 280 170 loadbang; #X msg 647 981 set 1 1 \$1 \$2 \$3; #X msg 375 1011 set 1 0 \$1 \$2 \$3; #X msg 872 966 set 0 1 \$1 \$2 \$3; #X obj 230 933 pix_texture; -#X obj 464 951 t b; -#X obj 673 906 t b; -#X obj 876 903 t b; #X msg 1074 1023 set 0 0 \$1 \$2 \$3; -#X obj 1083 920 t b; #X obj 647 957 pack f f 5; #X obj 869 940 pack f f 5; #X obj 1074 986 pack f f 5; #X obj 438 985 pack f f 5; -#N canvas 261 90 528 649 fx 0; +#N canvas 259 90 528 649 fx 0; #X obj 284 -71 inlet; #X obj 228 614 outlet; #X msg 23 -19 BackDropKeyVFX; @@ -1420,16 +1409,12 @@ #X connect 63 0 1 0; #X connect 63 1 62 0; #X restore 231 870 pd fx; -#X obj 508 265 pack f f f; -#X obj 508 190 t b; -#X obj 508 224 delay 10; -#X obj 703 270 pack f f f; -#X obj 711 197 t b; -#X obj 711 232 delay 10; -#X obj 247 338 r \$0-c2; -#X obj 338 338 r \$0-c3; -#X obj 414 337 r \$0-c4; -#X obj 509 334 r \$0-c1; +#X obj 462 198 pack f f f; +#X obj 754 221 pack f f f; +#X obj 212 332 r \$0-c2; +#X obj 303 330 r \$0-c3; +#X obj 389 332 r \$0-c4; +#X obj 475 335 r \$0-c1; #X obj 254 597 r \$0-c18; #X obj 351 597 r \$0-c19; #X obj 371 693 r \$0-c15; @@ -1438,9 +1423,9 @@ #X obj 505 829 r \$0-c33; #X obj 649 776 r \$0-c34; #X obj 711 776 r \$0-c35; -#X obj 247 378 * 0.0078125; -#X obj 338 380 * 0.0078125; -#X obj 414 381 * 0.0078125; +#X obj 212 365 * 0.0078125; +#X obj 303 365 * 0.0078125; +#X obj 389 365 * 0.0078125; #X obj 254 655 * 0.000244141; #X obj 351 664 * 0.000244141; #X obj 411 922 * 0.0625; @@ -1450,32 +1435,31 @@ #X obj 927 851 * 0.0625; #X obj 1053 861 * 0.0625; #X obj 1116 861 * 0.0625; -#X obj 509 379 * 0.00392157; -#X obj 458 153 * 0.00392157; -#X obj 543 153 * 0.00392157; -#X obj 621 154 * 0.00392157; -#X obj 705 150 * 0.00392157; -#X obj 789 151 * 0.00392157; -#X obj 862 151 * 0.00392157; +#X obj 475 365 * 0.00392157; +#X obj 368 152 * 0.00392157; +#X obj 462 152 * 0.00392157; +#X obj 556 152 * 0.00392157; +#X obj 666 153 * 0.00392157; +#X obj 763 153 * 0.00392157; +#X obj 858 153 * 0.00392157; #X obj 450 663 - 8; #X obj 371 719 * 0.0078125; #X obj 451 718 * 0.0078125; -#X obj 231 429 colorRGB 1 1 1; #X obj 450 580 r \$0-c17; #X obj 450 608 - 128; #X obj 450 636 * 0.125; -#X obj 459 123 r \$0-c22; -#X obj 544 122 r \$0-c23; -#X obj 619 121 r \$0-c24; -#X obj 708 117 r \$0-c25; -#X obj 788 118 r \$0-c26; +#X obj 368 129 r \$0-c22; +#X obj 462 129 r \$0-c23; +#X obj 556 129 r \$0-c24; +#X obj 666 130 r \$0-c25; +#X obj 763 130 r \$0-c26; #X obj 1056 765 r \$0-c28; #X obj 1118 765 r \$0-c29; #X obj 866 723 r \$0-c30; #X obj 933 726 r \$0-c31; #X obj 387 795 pack f f 1; #X obj 231 835 scale XYZ; -#X obj 858 121 r \$0-c27; +#X obj 858 130 r \$0-c27; #X obj 230 1080 curve3d; #X obj 484 770 delay 10; #X obj 931 804 - 127; @@ -1487,161 +1471,214 @@ #X obj 1117 824 - 127; #X obj 866 799 - 127; #X obj 862 851 * 0.0625; -#X floatatom 875 827 5 0 0 0 - - -; #X obj 758 596 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; -#X obj 78 937 t b; -#X obj 78 983 spigot; -#X obj 143 867 loadbang; -#X msg 142 901 1; -#X msg 167 998 0; +#X obj 65 958 loadbang; +#X msg 65 985 1; #X obj 301 63 r \$0-c46; -#X obj 756 656 delay 10; #X obj 231 537 rotateXYZ; #X obj 325 503 - 128; -#X obj 385 507 - 128; -#X obj 444 507 - 128; +#X obj 385 503 - 128; +#X obj 444 503 - 128; #X obj 325 467 r \$0-c12; -#X obj 385 465 r \$0-c13; +#X obj 385 467 r \$0-c13; #X obj 444 467 r \$0-c14; #X obj 230 1185 outlet; -#X obj 167 971 delay 10; -#X obj 363 928 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 --1 -1; -#X connect 0 0 8 0; -#X connect 4 0 83 1; +#X obj 21 468 glsl_loader gain; +#N canvas 110 360 450 300 pack4 0; +#X obj 30 39 inlet; +#X obj 85 36 inlet; +#X obj 139 38 inlet; +#X obj 194 35 inlet; +#X obj 29 159 pack f f f f; +#X obj 135 73 t b f; +#X obj 193 75 t b f; +#X obj 64 72 t b f; +#X obj 34 198 outlet; +#X connect 0 0 4 0; +#X connect 1 0 7 0; +#X connect 2 0 5 0; +#X connect 3 0 6 0; +#X connect 4 0 8 0; #X connect 5 0 4 0; -#X connect 6 0 83 0; -#X connect 7 0 86 0; +#X connect 5 1 4 2; +#X connect 6 0 4 0; +#X connect 6 1 4 3; +#X connect 7 0 4 0; +#X connect 7 1 4 1; +#X restore 222 413 pd pack4; +#X text 482 319 Alpha; +#X obj 87 181 vradio 15 1 0 2 empty empty empty 0 -8 0 10 -262144 -1 +-1 1; +#X obj 48 352 spigot; +#X obj 106 353 spigot; +#X obj 109 288 - 1; +#X obj 462 175 t b f; +#X obj 556 175 t b f; +#X obj 858 178 t b f; +#X obj 763 179 t b f; +#X obj 65 1019 change; +#X obj 172 961 t b a; +#X msg 172 983 0; +#X obj 65 1046 t b; +#X obj 65 1078 s \$0-init; +#X obj 758 561 r \$0-init; +#X obj 673 906 t b f; +#X obj 887 905 t b f; +#X obj 464 951 t b f; +#X obj 1083 920 t b f; +#X obj 21 588 pix_texture; +#X obj 21 690 rectangle 4 3; +#X msg 95 622 \$3 \$2; +#X obj 95 644 /; +#X obj 95 666 * 4; +#X msg 38 564 rectangle 1; +#X obj 38 542 loadbang; +#X msg 222 437 gain \$1 \$2 \$3 \$4; +#X text 145 628; +#X text 117 566; +#X connect 0 0 8 0; +#X connect 4 0 74 1; +#X connect 5 0 4 0; +#X connect 6 0 74 0; +#X connect 7 0 77 0; #X connect 8 0 9 0; -#X connect 9 0 69 0; -#X connect 9 0 105 0; -#X connect 10 0 51 0; -#X connect 11 0 50 0; +#X connect 9 0 104 0; +#X connect 9 0 103 0; +#X connect 10 0 43 0; +#X connect 11 0 42 0; #X connect 12 0 9 2; #X connect 13 0 9 1; #X connect 14 0 13 0; #X connect 14 0 12 0; -#X connect 15 0 85 0; -#X connect 16 0 85 0; -#X connect 17 0 85 0; -#X connect 18 0 98 0; -#X connect 18 0 85 0; -#X connect 19 0 27 0; -#X connect 20 0 24 0; -#X connect 21 0 25 0; -#X connect 22 0 85 0; -#X connect 23 0 26 0; -#X connect 24 0 15 0; -#X connect 25 0 17 0; -#X connect 26 0 22 0; -#X connect 27 0 16 0; -#X connect 28 0 18 0; -#X connect 29 0 9 3; -#X connect 30 0 31 0; -#X connect 31 0 29 0; -#X connect 32 0 9 4; -#X connect 33 0 34 0; -#X connect 34 0 32 0; -#X connect 35 0 47 0; -#X connect 36 0 48 0; -#X connect 37 0 49 0; -#X connect 38 0 59 0; -#X connect 39 0 11 0; -#X connect 40 0 10 0; -#X connect 41 0 67 0; -#X connect 42 0 68 0; -#X connect 43 0 91 0; -#X connect 43 0 114 0; -#X connect 44 0 90 0; -#X connect 45 0 89 0; -#X connect 46 0 88 0; -#X connect 47 0 69 1; -#X connect 48 0 69 2; -#X connect 49 0 69 3; -#X connect 50 0 6 1; -#X connect 51 0 6 2; -#X connect 52 0 27 0; -#X connect 53 0 19 0; -#X connect 53 0 27 1; -#X connect 54 0 24 0; -#X connect 55 0 20 0; -#X connect 55 0 24 1; -#X connect 56 0 21 0; -#X connect 56 0 25 1; -#X connect 57 0 26 0; -#X connect 58 0 23 0; -#X connect 58 0 26 1; -#X connect 59 0 69 4; -#X connect 60 0 29 0; -#X connect 61 0 30 0; -#X connect 61 0 29 1; -#X connect 62 0 30 0; -#X connect 62 0 29 2; -#X connect 63 0 32 0; -#X connect 64 0 33 0; -#X connect 64 0 32 1; -#X connect 65 0 33 0; -#X connect 65 0 32 2; -#X connect 66 0 6 3; -#X connect 67 0 82 0; -#X connect 68 0 82 1; -#X connect 68 0 7 0; -#X connect 70 0 71 0; -#X connect 71 0 72 0; -#X connect 72 0 66 0; -#X connect 73 0 60 0; -#X connect 74 0 61 0; -#X connect 75 0 62 0; -#X connect 76 0 63 0; -#X connect 77 0 64 0; -#X connect 78 0 92 0; -#X connect 79 0 93 0; -#X connect 80 0 94 0; -#X connect 81 0 87 0; -#X connect 82 0 83 2; -#X connect 83 0 28 0; -#X connect 84 0 65 0; -#X connect 85 0 112 0; -#X connect 86 0 82 0; -#X connect 87 0 56 0; -#X connect 88 0 55 0; -#X connect 89 0 54 0; -#X connect 90 0 53 0; -#X connect 91 0 52 0; -#X connect 92 0 57 0; -#X connect 93 0 58 0; -#X connect 94 0 95 0; -#X connect 94 0 96 0; -#X connect 95 0 25 0; +#X connect 15 0 76 0; +#X connect 16 0 76 0; +#X connect 17 0 76 0; +#X connect 18 0 76 0; +#X connect 18 0 111 0; +#X connect 19 0 76 0; +#X connect 20 0 15 0; +#X connect 21 0 17 0; +#X connect 22 0 19 0; +#X connect 23 0 16 0; +#X connect 24 0 18 0; +#X connect 25 0 9 3; +#X connect 26 0 9 4; +#X connect 27 0 39 0; +#X connect 28 0 40 0; +#X connect 29 0 41 0; +#X connect 30 0 51 0; +#X connect 31 0 11 0; +#X connect 32 0 10 0; +#X connect 33 0 59 0; +#X connect 34 0 60 0; +#X connect 35 0 82 0; +#X connect 36 0 81 0; +#X connect 37 0 80 0; +#X connect 38 0 79 0; +#X connect 39 0 100 0; +#X connect 40 0 100 1; +#X connect 41 0 100 2; +#X connect 42 0 6 1; +#X connect 43 0 6 2; +#X connect 44 0 23 0; +#X connect 45 0 118 0; +#X connect 46 0 20 0; +#X connect 47 0 116 0; +#X connect 48 0 117 0; +#X connect 49 0 22 0; +#X connect 50 0 119 0; +#X connect 51 0 100 3; +#X connect 52 0 25 0; +#X connect 53 0 106 0; +#X connect 54 0 107 0; +#X connect 55 0 26 0; +#X connect 56 0 109 0; +#X connect 57 0 108 0; +#X connect 58 0 6 3; +#X connect 59 0 73 0; +#X connect 60 0 73 1; +#X connect 60 0 7 0; +#X connect 61 0 62 0; +#X connect 62 0 63 0; +#X connect 63 0 58 0; +#X connect 64 0 52 0; +#X connect 65 0 53 0; +#X connect 66 0 54 0; +#X connect 67 0 55 0; +#X connect 68 0 56 0; +#X connect 69 0 83 0; +#X connect 70 0 84 0; +#X connect 71 0 85 0; +#X connect 72 0 78 0; +#X connect 73 0 74 2; +#X connect 74 0 24 0; +#X connect 75 0 57 0; +#X connect 76 0 98 0; +#X connect 77 0 73 0; +#X connect 78 0 48 0; +#X connect 79 0 47 0; +#X connect 80 0 46 0; +#X connect 81 0 45 0; +#X connect 82 0 44 0; +#X connect 83 0 49 0; +#X connect 84 0 50 0; +#X connect 85 0 86 0; +#X connect 86 0 21 0; +#X connect 87 0 85 0; +#X connect 87 0 83 0; +#X connect 87 0 84 0; +#X connect 87 0 78 0; +#X connect 87 0 79 0; +#X connect 87 0 80 0; +#X connect 87 0 81 0; +#X connect 87 0 82 0; +#X connect 88 0 89 0; +#X connect 89 0 110 0; +#X connect 90 0 8 1; +#X connect 91 0 6 0; +#X connect 92 0 91 1; +#X connect 93 0 91 2; +#X connect 94 0 91 3; +#X connect 95 0 92 0; +#X connect 96 0 93 0; #X connect 97 0 94 0; -#X connect 97 0 92 0; -#X connect 97 0 93 0; -#X connect 97 0 87 0; -#X connect 97 0 88 0; -#X connect 97 0 89 0; -#X connect 97 0 90 0; -#X connect 97 0 91 0; -#X connect 97 0 104 0; -#X connect 98 0 99 0; -#X connect 99 0 97 0; -#X connect 99 0 113 0; -#X connect 100 0 101 0; -#X connect 101 0 99 1; -#X connect 102 0 99 1; -#X connect 103 0 8 1; -#X connect 104 0 26 0; -#X connect 104 0 25 0; -#X connect 104 0 24 0; -#X connect 104 0 27 0; -#X connect 105 0 6 0; -#X connect 106 0 105 1; -#X connect 107 0 105 2; -#X connect 108 0 105 3; -#X connect 109 0 106 0; -#X connect 110 0 107 0; -#X connect 111 0 108 0; -#X connect 113 0 102 0; +#X connect 99 0 120 0; +#X connect 100 0 127 0; +#X connect 102 0 103 1; +#X connect 102 0 105 0; +#X connect 103 0 99 0; +#X connect 104 0 91 0; +#X connect 105 0 104 1; +#X connect 106 0 25 0; +#X connect 106 1 25 1; +#X connect 107 0 25 0; +#X connect 107 1 25 2; +#X connect 108 0 26 0; +#X connect 108 1 26 2; +#X connect 109 0 26 0; +#X connect 109 1 26 1; +#X connect 110 0 113 0; +#X connect 111 0 112 0; +#X connect 112 0 110 0; +#X connect 113 0 114 0; +#X connect 115 0 87 0; +#X connect 116 0 20 0; +#X connect 116 1 20 1; +#X connect 117 0 21 0; +#X connect 117 1 21 1; +#X connect 118 0 23 0; +#X connect 118 1 23 1; +#X connect 119 0 22 0; +#X connect 119 1 22 1; +#X connect 120 0 121 0; +#X connect 120 1 122 0; +#X connect 122 0 123 0; +#X connect 123 0 124 0; +#X connect 124 0 121 2; +#X connect 125 0 120 0; +#X connect 126 0 125 0; +#X connect 127 0 99 1; #X restore 586 -125 pd video_render; #N canvas 595 90 769 649 texto 0; #X obj 190 -398 gemhead; diff --git a/puredata/layer_audio.pd b/puredata/layer_audio.pd deleted file mode 100644 index 5e36292..0000000 --- a/puredata/layer_audio.pd +++ /dev/null @@ -1,184 +0,0 @@ -#N canvas 718 93 904 417 10; -#N canvas 389 113 497 527 audio_player 0; -#X msg 22 33 open \$1; -#X msg 203 93 start; -#X msg 242 94 stop; -#X obj 119 140 oggread~; -#X msg 274 94 resume; -#X obj 22 9 inlet; -#X obj 219 31 / 25; -#X obj 219 51 int; -#X obj 219 10 r \$0-c5; -#X obj 100 191 *~ 0; -#X obj 157 191 *~ 0; -#X obj 276 135 dbtorms; -#X obj 219 135 dbtorms; -#X obj 150 419 dac~; -#X obj 363 66 r \$0-c1; -#X obj 212 226 r \$0-c2; -#X text 361 49 Volumen; -#X text 224 210 Pan; -#X obj 212 266 * 0.00392157; -#X obj 219 71 select 0 1 2; -#X msg 119 101 seek \$1; -#X obj 119 36 r \$0-c8; -#X obj 363 102 * 0.0015308; -#X obj 119 67 * 0.01; -#X obj 200 193 s \$0-position; -#X obj 117 309 expr 1-$f1; -#X obj 210 358 line~; -#X msg 210 337 \$1 1; -#X obj 117 350 line~; -#X msg 117 329 \$1 1; -#X obj 194 378 *~; -#X obj 101 375 *~; -#X connect 0 0 3 0; -#X connect 1 0 3 0; -#X connect 2 0 3 0; -#X connect 3 0 9 0; -#X connect 3 1 10 0; -#X connect 3 2 24 0; -#X connect 4 0 3 0; -#X connect 5 0 0 0; -#X connect 6 0 7 0; -#X connect 7 0 19 0; -#X connect 8 0 6 0; -#X connect 9 0 31 0; -#X connect 10 0 30 0; -#X connect 11 0 10 1; -#X connect 12 0 9 1; -#X connect 14 0 22 0; -#X connect 15 0 18 0; -#X connect 18 0 25 0; -#X connect 18 0 27 0; -#X connect 19 0 1 0; -#X connect 19 1 2 0; -#X connect 19 2 4 0; -#X connect 20 0 3 0; -#X connect 21 0 23 0; -#X connect 22 0 12 0; -#X connect 22 0 11 0; -#X connect 23 0 20 0; -#X connect 23 0 24 0; -#X connect 25 0 29 0; -#X connect 26 0 30 1; -#X connect 27 0 26 0; -#X connect 28 0 31 1; -#X connect 29 0 28 0; -#X connect 30 0 13 1; -#X connect 31 0 13 0; -#X restore 37 -282 pd audio_player; -#X obj 437 -92 change; -#X obj 490 -92 change; -#X obj 540 -92 change; -#X obj 596 -92 change; -#X obj 653 -92 change; -#X obj 708 -92 change; -#X obj 763 -92 change; -#X obj 825 -92 change; -#X obj 42 -92 change; -#X obj 90 -92 change; -#X obj 135 -92 change; -#X obj 180 -92 change; -#X obj 233 -92 change; -#X obj 284 -92 change; -#X obj 330 -92 change; -#X obj 383 -92 change; -#X obj 184 -302 inlet; -#X obj 42 35 s \$0-c1; -#X obj 90 -67 s \$0-c2; -#X obj 135 -67 s \$0-c3; -#X obj 180 -67 s \$0-c4; -#X obj 233 -67 s \$0-c5; -#X obj 284 -67 s \$0-c6; -#X obj 383 41 s \$0-c8; -#X obj 490 -67 s \$0-c10; -#X obj 540 -67 s \$0-c11; -#X obj 596 -67 s \$0-c12; -#X obj 653 -67 s \$0-c13; -#X obj 708 -67 s \$0-c14; -#X obj 763 -67 s \$0-c15; -#X obj 825 -67 s \$0-c16; -#N canvas 687 100 412 197 selector 0; -#X obj 193 -66 outlet; -#X text 99 -210 folder; -#X obj 95 -193 r \$0-c3; -#X obj 175 -193 r \$0-c4; -#X obj 340 -194 r path; -#X text 186 -209 File; -#X obj 193 -99 fileselector; -#X msg 95 -160 folder \$1; -#X msg 175 -159 file \$1; -#X msg 250 -160 type 256; -#X msg 340 -158 set \$1; -#X obj 250 -192 loadbang; -#X obj 95 -132 b; -#X symbolatom 77 -52 10 0 0 0 - - -; -#X connect 2 0 7 0; -#X connect 3 0 8 0; -#X connect 4 0 10 0; -#X connect 6 0 0 0; -#X connect 6 0 13 0; -#X connect 7 0 6 0; -#X connect 7 0 12 0; -#X connect 8 0 6 0; -#X connect 8 0 12 0; -#X connect 9 0 6 0; -#X connect 10 0 6 0; -#X connect 11 0 9 0; -#X connect 12 0 6 0; -#X restore 37 -342 pd selector; -#X obj 184 -252 unpack f f f f f f f f f f f f f f f f; -#X obj 42 -36 << 8; -#X obj 42 5 +; -#X obj 88 -29 t b f; -#X obj 383 -45 << 8; -#X obj 383 -4 +; -#X obj 437 -45 t b f; -#X text 184 -336 c1 Vol c2 pan c3 folder c4 file c5 playback c6 Control -c7 Volumen fino 8 Entry point Coarse 9 Entry point fine; -#X obj 5 -199 outlet; -#X connect 1 0 39 0; -#X connect 2 0 25 0; -#X connect 3 0 26 0; -#X connect 4 0 27 0; -#X connect 5 0 28 0; -#X connect 6 0 29 0; -#X connect 7 0 30 0; -#X connect 8 0 31 0; -#X connect 9 0 34 0; -#X connect 10 0 19 0; -#X connect 11 0 20 0; -#X connect 12 0 21 0; -#X connect 13 0 22 0; -#X connect 14 0 23 0; -#X connect 15 0 36 0; -#X connect 16 0 37 0; -#X connect 17 0 33 0; -#X connect 32 0 0 0; -#X connect 32 0 41 0; -#X connect 33 0 9 0; -#X connect 33 1 10 0; -#X connect 33 2 11 0; -#X connect 33 3 12 0; -#X connect 33 4 13 0; -#X connect 33 5 14 0; -#X connect 33 6 15 0; -#X connect 33 7 16 0; -#X connect 33 8 1 0; -#X connect 33 9 2 0; -#X connect 33 10 3 0; -#X connect 33 11 4 0; -#X connect 33 12 5 0; -#X connect 33 13 6 0; -#X connect 33 14 7 0; -#X connect 33 15 8 0; -#X connect 34 0 35 0; -#X connect 35 0 18 0; -#X connect 36 0 35 0; -#X connect 36 1 35 1; -#X connect 37 0 38 0; -#X connect 38 0 24 0; -#X connect 39 0 38 0; -#X connect 39 1 38 1; -#X coords 0 417 1 416 0 0 0; diff --git a/puredata/lms-audio.pd b/puredata/lms-audio.pd deleted file mode 100644 index 035a4d9..0000000 --- a/puredata/lms-audio.pd +++ /dev/null @@ -1,233 +0,0 @@ -#N canvas 355 236 838 411 10; -#N canvas 347 121 1016 356 dmx 0; -#X obj -7 -49 list split; -#X obj 99 -57 list split; -#X obj 50 -79 - 1; -#X obj 156 -78 - 1; -#X msg 552 -264 close; -#X obj 202 -53 list split; -#X obj 259 -74 - 1; -#X obj 308 -76 list split; -#X obj 365 -97 - 1; -#X obj 469 -213 ola2pd; -#X msg 420 -263 universe \$1; -#X msg 507 -265 open; -#X obj 21 -1 outlet; -#X obj 127 2 outlet; -#X obj 230 3 outlet; -#X obj 336 -32 outlet; -#X obj 427 -46 list split; -#X obj 484 -86 - 1; -#X obj 455 2 outlet; -#X obj 558 -38 list split; -#X obj 615 -95 - 1; -#X obj 586 6 outlet; -#X obj 675 -37 list split; -#X obj 744 -111 - 1; -#X obj 703 7 outlet; -#X obj 800 -41 list split; -#X obj 857 -98 - 1; -#X obj 828 3 outlet; -#X obj -7 -80 spigot; -#X obj 99 -79 spigot; -#X obj 202 -73 spigot; -#X obj 308 -96 spigot; -#X obj 427 -69 spigot; -#X obj 558 -59 spigot; -#X obj 675 -57 spigot; -#X obj 800 -70 spigot; -#X obj 50 -228 r layer1; -#X obj 420 -285 r universe; -#X obj 156 -223 r layer2; -#X obj 507 -305 r ola; -#X obj 259 -224 r layer3; -#X obj 365 -224 r layer4; -#X obj 484 -152 r layer5; -#X obj 615 -173 r layer6; -#X obj 744 -170 r layer7; -#X obj 833 -183 r layer8; -#X obj 127 -19 list split 32; -#X obj 230 -18 list split 32; -#X obj 336 -53 list split 32; -#X obj 455 -20 list split 32; -#X obj 586 -15 list split 32; -#X obj 703 -14 list split 32; -#X obj 828 -18 list split 32; -#X obj 507 -285 select 1; -#X obj 21 -22 list split 16; -#X connect 0 1 54 0; -#X connect 1 1 46 0; -#X connect 2 0 0 1; -#X connect 3 0 1 1; -#X connect 4 0 9 0; -#X connect 5 1 47 0; -#X connect 6 0 5 1; -#X connect 7 1 48 0; -#X connect 8 0 7 1; -#X connect 9 0 28 0; -#X connect 9 0 29 0; -#X connect 9 0 30 0; -#X connect 9 0 31 0; -#X connect 9 0 32 0; -#X connect 9 0 33 0; -#X connect 9 0 34 0; -#X connect 9 0 35 0; -#X connect 10 0 9 0; -#X connect 11 0 9 0; -#X connect 16 1 49 0; -#X connect 17 0 16 1; -#X connect 19 1 50 0; -#X connect 20 0 19 1; -#X connect 22 1 51 0; -#X connect 23 0 22 1; -#X connect 25 1 52 0; -#X connect 26 0 25 1; -#X connect 28 0 0 0; -#X connect 29 0 1 0; -#X connect 30 0 5 0; -#X connect 31 0 7 0; -#X connect 32 0 16 0; -#X connect 33 0 19 0; -#X connect 34 0 22 0; -#X connect 35 0 25 0; -#X connect 36 0 2 0; -#X connect 36 0 28 1; -#X connect 37 0 10 0; -#X connect 38 0 29 1; -#X connect 38 0 3 0; -#X connect 39 0 53 0; -#X connect 40 0 6 0; -#X connect 40 0 30 1; -#X connect 41 0 8 0; -#X connect 41 0 31 1; -#X connect 42 0 32 1; -#X connect 42 0 17 0; -#X connect 43 0 33 1; -#X connect 43 0 20 0; -#X connect 44 0 34 1; -#X connect 44 0 23 0; -#X connect 45 0 26 0; -#X connect 45 0 35 1; -#X connect 46 0 13 0; -#X connect 47 0 14 0; -#X connect 48 0 15 0; -#X connect 49 0 18 0; -#X connect 50 0 21 0; -#X connect 51 0 24 0; -#X connect 52 0 27 0; -#X connect 53 0 11 0; -#X connect 53 1 4 0; -#X connect 54 0 12 0; -#X coords 0 356 1 355 1 1 0; -#X restore -23 190 pd dmx; -#X obj -297 249 layer_audio; -#X msg 422 182 \; pd dsp 1; -#X obj 422 137 loadbang; -#X msg -297 267 send 1 \$1; -#X obj -16 330 netsend; -#X msg -216 266 send 2 \$1; -#X msg -136 268 send 3 \$1; -#X msg -56 267 send 4 \$1; -#X msg 24 267 send 5 \$1; -#X msg 104 267 send 6 \$1; -#X msg 184 269 send 7 \$1; -#X msg 267 267 send 8 \$1; -#X obj 506 265 delay 50; -#X msg 506 287 send 0; -#X msg 341 266 connect localhost 9198; -#X obj 81 -30 netreceive 9197; -#X obj 81 3 unpack f f s; -#X obj -280 139 float; -#X obj -280 159 s layer1; -#X obj -220 139 float; -#X obj -160 140 float; -#X obj -100 140 float; -#X obj -40 139 float; -#X obj 20 139 float; -#X obj 81 139 float; -#X obj 140 139 float; -#X obj 200 139 float; -#X obj 262 139 float; -#X obj -220 159 s layer2; -#X obj -160 159 s layer3; -#X obj -100 159 s layer4; -#X obj -40 159 s layer5; -#X obj 20 159 s layer6; -#X obj 81 159 s layer7; -#X obj 140 159 s layer8; -#X obj 200 159 s ola; -#X obj 262 159 s universe; -#X obj 162 23 s path; -#X obj -247 75 select 11 12 13 14 15 16 17 18 20 21; -#X obj 422 160 delay 500; -#X obj -136 247 layer_audio; -#X obj -56 247 layer_audio; -#X obj 24 247 layer_audio; -#X obj -216 247 layer_audio; -#X obj 104 247 layer_audio; -#X obj 184 247 layer_audio; -#X obj 265 247 layer_audio; -#X connect 0 0 1 0; -#X connect 0 1 44 0; -#X connect 0 2 41 0; -#X connect 0 3 42 0; -#X connect 0 4 43 0; -#X connect 0 5 45 0; -#X connect 0 6 46 0; -#X connect 0 7 47 0; -#X connect 1 0 4 0; -#X connect 3 0 40 0; -#X connect 3 0 15 0; -#X connect 3 0 13 0; -#X connect 4 0 5 0; -#X connect 6 0 5 0; -#X connect 7 0 5 0; -#X connect 8 0 5 0; -#X connect 9 0 5 0; -#X connect 10 0 5 0; -#X connect 11 0 5 0; -#X connect 12 0 5 0; -#X connect 13 0 14 0; -#X connect 14 0 5 0; -#X connect 15 0 5 0; -#X connect 16 0 17 0; -#X connect 17 0 39 0; -#X connect 17 1 18 1; -#X connect 17 1 20 1; -#X connect 17 1 21 1; -#X connect 17 1 22 1; -#X connect 17 1 23 1; -#X connect 17 1 24 1; -#X connect 17 1 25 1; -#X connect 17 1 26 1; -#X connect 17 1 27 1; -#X connect 17 1 28 1; -#X connect 17 2 38 0; -#X connect 18 0 19 0; -#X connect 20 0 29 0; -#X connect 21 0 30 0; -#X connect 22 0 31 0; -#X connect 23 0 32 0; -#X connect 24 0 33 0; -#X connect 25 0 34 0; -#X connect 26 0 35 0; -#X connect 27 0 36 0; -#X connect 28 0 37 0; -#X connect 39 0 18 0; -#X connect 39 1 20 0; -#X connect 39 2 21 0; -#X connect 39 3 22 0; -#X connect 39 4 23 0; -#X connect 39 5 24 0; -#X connect 39 6 25 0; -#X connect 39 7 26 0; -#X connect 39 8 27 0; -#X connect 39 9 28 0; -#X connect 40 0 2 0; -#X connect 41 0 7 0; -#X connect 42 0 8 0; -#X connect 43 0 9 0; -#X connect 44 0 6 0; -#X connect 45 0 10 0; -#X connect 46 0 11 0; -#X connect 47 0 12 0; diff --git a/puredata/lms-video.pd b/puredata/lms-video.pd index d27433e..5386115 100644 --- a/puredata/lms-video.pd +++ b/puredata/lms-video.pd @@ -1,4 +1,5 @@ -#N canvas 718 220 611 350 10; +#N canvas 548 180 611 438 10; +#X declare -path . -path externals; #N canvas 57 385 240 272 fondo 0; #X obj -452 -118 color 0 0 0; #X obj -452 -150 alpha; @@ -350,7 +351,7 @@ #X connect 13 0 14 1; #X connect 14 0 3 0; #X restore -323 -379 pd layer_3; -#N canvas 881 227 450 300 layer_2 0; +#N canvas 879 237 450 300 layer_2 0; #X msg -86 -22 1; #X msg -139 -23 0; #X obj -139 -45 select 0; @@ -365,7 +366,7 @@ #X msg -197 122 layerimage 12; #X msg -65 -86 delay 100; #X obj -177 -80 r file2; -#X obj -253 -28 layer; +#X obj -252 -29 layer; #X connect 0 0 3 1; #X connect 1 0 3 1; #X connect 2 0 1 0; @@ -385,7 +386,7 @@ #X connect 13 0 14 1; #X connect 14 0 3 0; #X restore -396 -379 pd layer_2; -#N canvas 905 279 450 300 layer_1 1; +#N canvas 899 309 450 300 layer_1 0; #X obj -253 -28 layer; #X msg -61 -33 1; #X msg -114 -34 0; @@ -465,6 +466,7 @@ GPL License; #X restore -107 -438 pd fps; #X text -474 -219 This patch can not be run alone \, needs the libremediaserver GUI http://libremediaserver.googlecode.com; +#X obj -388 -164 declare -path . -path externals; #X connect 4 0 15 0; #X connect 4 0 18 0; #X connect 13 0 14 0; diff --git a/todo.txt b/todo.txt index 092079d..ce2e4c4 100644 --- a/todo.txt +++ b/todo.txt @@ -15,14 +15,16 @@ v0.05 video: Necesarios: -- ¿Cómo transmitir el dmx a Pure Data? --> Unix Domain Socket parece lo mejor. Habría que hacer external en PD? -- Mover ola2pd a la parte C++ (importar de glmixer-dmx) -- Mover fileselector a la parte C++ (importar de glmixer-dmx) -- Crear base de datos al inicio en vez de leer ficheros del disco. Generar thumbs --> Importar de glmixer-dmx ++ ¿Cómo transmitir el dmx a Pure Data? --> Unix Domain Socket parece lo mejor. Habría que hacer external en PD? ++ Mover ola2pd a la parte C++ (importar de glmixer-dmx) ++ Mover fileselector a la parte C++ (importar de glmixer-dmx) ++ Crear base de datos al inicio en vez de leer ficheros del disco. Generar thumbs --> Importar de glmixer-dmx ++ Cambiar archivo de configuracion a xml (importar de glmixer-dmx) - Añadir shaders, cambiar objetos Gem por uniform glsl. Alpha, chroma, ... +- Añadir la configuración de la ventana al archivo de configuración xlm - Documentación en inglés - Incluir archivos pd en el ejecutable como recursos Qt -- Cambiar archivo de configuracion a xml (importar de glmixer-dmx) +- Añadir opciones en el GUI para cambiar las preferencias - Optimizar CITP/MSEx a la forma QT --> QDataStream - patchear universos OLA directamente en vez de usar el servidor web de olad @@ -31,7 +33,7 @@ Quizás: - On air button - Generación de fractales visuales (Iteración en Gem) - Algoritmos de generación visuales de glmixer -- Homografía real, cambiar curve3d +- Homografía real, cambiar curve3d --> Extended VIew Toolkit - Blending - máscaras? --> estilo glmixer - Efectos