#N canvas 109 61 758 483 10;
#X declare -lib Gem;
#X obj 29 30 gemhead;
#X obj 29 163 pix_video;
#X obj 29 100 gemframebuffer;
#X obj 29 122 translateXYZ 0 0 -4;
#X obj 559 342 pix_texture;
#X obj 559 410 rectangle 4 3;
#X obj 559 315 pix_rtx;
#X obj 29 185 pix_texture;
#X obj 29 245 square 4;
#X obj 159 365 pix_snap;
#X obj 204 322 loadbang;
#X msg 69 325 snap;
#X obj 159 434 pix_buffer_write \$0-depot;
#X obj 43 56 loadbang;
#X obj 559 262 pix_buffer_read \$0-depot;
#X obj 559 172 gemhead 51;
#X floatatom 116 193 5 0 0 0 - - -;
#X obj 29 215 rotateXYZ 0 0 0;
#X msg 306 413 0;
#X obj 362 420 pix_buffer \$0-depot 1;
#X msg 700 241 0;
#X text 43 11 render rotated video into buffer;
#X text 528 148 feed the buffer into pix_rtx;
#X obj 119 171 hsl 128 15 0 360 0 0 empty empty empty -2 -8 0 10 -262144
-1 -1 0 1;
#X obj 159 387 trigger anything bang;
#X text 117 155 rotate the video image;
#X text 111 280 this is how you write to a framebuffer (pix_buffer)
;
#N canvas 87 154 247 179 Gem.init 0;
#X obj 118 46 loadbang;
#X msg 118 81 reset;
#X obj 118 113 outlet;
#X connect 0 0 1 0;
#X connect 1 0 2 0;
#X restore 547 62 pd Gem.init;
#N canvas 340 107 682 322 gemwin 0;
#X obj 102 122 tgl 15 0 \$0-gemstart \$0-gemstart empty 17 7 0 10 -262144
-1 -1 0 1;
#X obj 102 161 r \$0-gemstart;
#X obj 102 182 select 1 0;
#X msg 102 214 create \, 1;
#X msg 177 215 destroy;
#X obj 102 239 t a;
#X obj 318 54 inlet;
#X obj 318 255 gemwin;
#X obj 318 100 t a a;
#X obj 318 287 outlet;
#X obj 350 128 route create destroy;
#X obj 350 150 t b;
#X msg 350 172 1;
#X obj 390 150 t b;
#X msg 390 172 0;
#X obj 350 195 t f;
#X msg 350 219 set \$1;
#X text 118 122 rendering;
#X connect 1 0 2 0;
#X connect 2 0 3 0;
#X connect 2 1 4 0;
#X connect 3 0 5 0;
#X connect 4 0 5 0;
#X connect 5 0 8 0;
#X connect 6 0 8 0;
#X connect 7 0 9 0;
#X connect 8 0 7 0;
#X connect 8 1 10 0;
#X connect 10 0 11 0;
#X connect 10 1 13 0;
#X connect 11 0 12 0;
#X connect 12 0 15 0;
#X connect 13 0 14 0;
#X connect 14 0 15 0;
#X connect 15 0 16 0;
#X connect 16 0 0 0;
#X coords 0 -1 1 1 85 40 1 100 100;
#X restore 546 79 pd gemwin;
#X msg 204 344 256 256;
#X msg 43 76 dimen 256 256;
#X obj 69 305 t b a;
#X obj 559 212 t a b;
#X obj 652 5 declare -lib Gem;
#X connect 0 0 2 0;
#X connect 1 0 7 0;
#X connect 2 0 3 0;
#X connect 3 0 1 0;
#X connect 4 0 5 0;
#X connect 6 0 4 0;
#X connect 7 0 17 0;
#X connect 8 0 31 0;
#X connect 9 0 24 0;
#X connect 10 0 29 0;
#X connect 11 0 9 0;
#X connect 13 0 30 0;
#X connect 14 0 6 0;
#X connect 15 0 32 0;
#X connect 16 0 17 3;
#X connect 17 0 8 0;
#X connect 18 0 12 1;
#X connect 20 0 14 1;
#X connect 23 0 16 0;
#X connect 24 0 12 0;
#X connect 24 1 18 0;
#X connect 27 0 28 0;
#X connect 29 0 9 2;
#X connect 30 0 2 0;
#X connect 31 0 11 0;
#X connect 31 1 9 0;
#X connect 32 0 14 0;
#X connect 32 1 20 0;
