Forums > Jitter

video playback graphical interface? a la grid

May 19, 2006 | 1:28 am

hey all. i seem to remember in the archives there being posted some sort of graphical interface for video playback that used a sample frame from the video file as the visual placeholder for playback, much as i believe the grid family of software does. unfortunately i can’t for the life of me find the magic search incantation to make it appear from the archives. are there any kind souls out there that can point me in the right direction? thanks!

-mark


May 19, 2006 | 4:14 am

Hi.

Grid Pro and Grid are Max based apps, so its definitely possible. In
fact, it isnt too hard. max here is a very un-optimal implementation
- something to get you started.

you should be thinking in terms of abstractions (hint, make the
pwindows into abstractions and use # 1 for the index the pwindow will
trigger), etc etc.

max v2;
#N vpatcher 21 44 904 767;
#P window setfont "Sans Serif" 9.;
#P window linecount 4;
#P comment 422 568 80 196617 we have the same ubumenu as above…
same indices;
#P window linecount 3;
#P comment 315 262 80 196617 iterate through the ubumenus indices;
#P window linecount 1;
#P newex 180 575 60 196617 loadmess 1;
#P message 66 268 34 196617 reset;
#P newex 81 332 42 196617 r reset;
#P newex 219 332 42 196617 r reset;
#P newex 353 332 42 196617 r reset;
#P newex 487 332 42 196617 r reset;
#P newex 621 332 42 196617 r reset;
#P newex 154 142 51 196617 tosymbol;
#P newex 66 248 42 196617 r reset;
#P newex 329 181 42 196617 s reset;
#P message 328 163 30 196617 bang;
#P message 294 220 14 196617 1;
#P message 276 220 14 196617 0;
#P newex 260 200 44 196617 togedge;
#P user jit.fpsgui 347 655 60 196617 0;
#P message 610 352 57 196617 clear , bang;
#P newex 593 332 27 196617 t l b;
#P newex 593 370 55 196617 jit.matrix;
#P message 476 352 57 196617 clear , bang;
#P newex 459 332 27 196617 t l b;
#P newex 459 370 55 196617 jit.matrix;
#P message 342 352 57 196617 clear , bang;
#P newex 325 332 27 196617 t l b;
#P newex 325 370 55 196617 jit.matrix;
#P message 208 353 57 196617 clear , bang;
#P newex 191 332 27 196617 t l b;
#P newex 191 371 55 196617 jit.matrix;
#P message 70 352 57 196617 clear , bang;
#P newex 53 332 27 196617 t l b;
#P newex 53 370 55 196617 jit.matrix;
#P message 304 163 14 196617 0;
#P newex 246 592 51 196617 qmetro 2;
#P toggle 246 575 15 0;
#P newex 347 592 68 196617 prepend read;
#P newex 347 635 179 196617 jit.window "Grid Amateur" @interp 1;
#P newex 347 613 63 196617 jit.qt.movie;
#P user ubumenu 302 572 100 196617 0 1 1 0;
#X add "Montreal Footage-Seq#43D021.mov";
#X add "Montreal Footage-Seq#43D0C8.mov";
#X add "Montreal Footage-Seq#460239.mov";
#X add "Montreal Footage-Seq#460240.mov";
#X add "Montreal Footage-Seq#460234.mov";
#X add "Montreal Footage-Seq#460241.mov";
#X add Tunnel2.mov;
#X prefix_set 0 1 tokyo:/Documents/Projects/Media/Cleaned/Personal/
2006.03.30/ 0;
#P newex 53 287 79 196617 jit.cycle 5;
#P message 53 206 76 196617 frame 10 , bang;
#P newex 53 229 125 196617 jit.qt.movie @autostart 0;
#P newex 150 206 68 196617 prepend read;
#P newex 154 163 30 196617 t b s;
#N counter;
#X flags 0 0;
#P newobj 228 287 66 196617 counter;
#P message 689 517 14 196617 4;
#P newex 689 497 41 196617 sel 0 1;
#P newex 663 477 131 196617 unpack 0 0 0 0 0 0 0 0 0 0;
#P newex 663 457 112 196617 route mouse mouseidle;
#P user jit.pwindow 592 389 82 62 0 1 1 0 1 0;
#P message 556 517 14 196617 3;
#P newex 555 497 41 196617 sel 0 1;
#P newex 529 477 131 196617 unpack 0 0 0 0 0 0 0 0 0 0;
#P newex 529 457 112 196617 route mouse mouseidle;
#P user jit.pwindow 458 389 82 62 0 1 1 0 1 0;
#P message 422 517 14 196617 2;
#P newex 421 497 41 196617 sel 0 1;
#P newex 395 477 131 196617 unpack 0 0 0 0 0 0 0 0 0 0;
#P newex 395 457 112 196617 route mouse mouseidle;
#P user jit.pwindow 324 389 82 62 0 1 1 0 1 0;
#P message 288 518 14 196617 1;
#P newex 287 498 41 196617 sel 0 1;
#P newex 261 478 131 196617 unpack 0 0 0 0 0 0 0 0 0 0;
#P newex 261 458 112 196617 route mouse mouseidle;
#P user jit.pwindow 190 390 82 62 0 1 1 0 1 0;
#P window linecount 2;
#P comment 315 218 80 196617 limit to 5 items or less;
#P window linecount 1;
#P message 260 220 14 196617 5;
#P newex 228 242 29 196617 gate;
#P newex 260 180 27 196617 > 5;
#P newex 228 265 40 196617 uzi;
#P number 227 161 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 227 140 74 196617 route populate;
#P message 150 518 14 196617 0;
#P newex 149 498 41 196617 sel 0 1;
#P newex 123 478 131 196617 unpack 0 0 0 0 0 0 0 0 0 0;
#P newex 123 458 112 196617 route mouse mouseidle;
#P user ubumenu 137 121 100 196617 0 1 1 0;
#X add "Montreal Footage-Seq#43D021.mov";
#X add "Montreal Footage-Seq#43D0C8.mov";
#X add "Montreal Footage-Seq#460239.mov";
#X add "Montreal Footage-Seq#460240.mov";
#X add "Montreal Footage-Seq#460234.mov";
#X add "Montreal Footage-Seq#460241.mov";
#X add Tunnel2.mov;
#X prefix_set 0 1 tokyo:/Documents/Projects/Media/Cleaned/Personal/
2006.03.30/ 0;
#P newex 137 96 76 196617 prepend prefix;
#P user jit.pwindow 52 391 82 62 0 1 1 0 1 0;
#P window linecount 2;
#P comment 140 37 115 196617 drop a folder of movies on me…;
#P user dropfile 137 34 273 92 0;
#P user panel 137 34 136 58;
#X brgb 191 191 191;
#X frgb 0 0 0;
#X border 1;
#X rounded 0;
#X shadow 0;
#X done;
#P window linecount 1;
#P comment 656 371 203 196617 idle mouse reporting is on on the
pwindows;
#P window linecount 2;
#P comment 313 129 340 196617 # of items to parse through.. we will
only grab the first 5 as an example (only 5 pwindows).;
#P fasten 40 0 43 0 159 192 58 192;
#P fasten 41 0 42 0 155 226 58 226;
#P connect 43 0 42 0;
#P connect 80 0 44 0;
#P connect 42 0 44 0;
#P fasten 44 0 53 0 58 316 58 316;
#P connect 54 0 52 0;
#P connect 53 0 52 0;
#P connect 52 0 5 0;
#P connect 73 0 80 0;
#P connect 79 0 54 0;
#P connect 53 1 54 0;
#P connect 5 1 8 0;
#P connect 8 0 9 0;
#P connect 3 0 6 0;
#P connect 6 0 7 0;
#P fasten 39 0 7 0 233 306 483 306 483 124 483 117 142 117;
#P connect 9 2 10 0;
#P fasten 40 1 41 0 179 192 155 192;
#P connect 10 0 11 0;
#P connect 7 1 74 0;
#P connect 74 0 40 0;
#P fasten 44 1 56 0 71 316 196 316;
#P connect 56 0 55 0;
#P connect 57 0 55 0;
#P connect 55 0 19 0;
#P connect 78 0 57 0;
#P connect 56 1 57 0;
#P connect 7 2 12 0;
#P connect 12 0 13 0;
#P connect 69 0 16 0;
#P connect 70 0 16 0;
#P fasten 17 0 14 0 265 262 233 262;
#P connect 16 0 14 0;
#P connect 14 0 39 0;
#P fasten 81 0 49 0 185 594 242 594 242 570 251 570;
#P connect 49 0 50 0;
#P fasten 13 0 16 1 232 203 252 203;
#P fasten 51 0 39 2 309 285 261 285;
#P fasten 13 0 15 0 232 178 265 178;
#P connect 15 0 68 0;
#P connect 68 0 17 0;
#P connect 19 1 20 0;
#P connect 20 0 21 0;
#P connect 68 0 69 0;
#P fasten 16 0 39 4 233 262 289 262;
#P fasten 17 0 39 4 265 262 289 262;
#P connect 21 2 22 0;
#P connect 22 0 23 0;
#P connect 68 1 70 0;
#P fasten 6 0 45 0 142 117 9 117 9 561 307 561;
#P fasten 11 0 45 0 155 552 307 552;
#P fasten 23 0 45 0 293 552 307 552;
#P fasten 28 0 45 0 427 552 307 552;
#P fasten 33 0 45 0 561 552 307 552;
#P fasten 38 0 45 0 694 552 307 552;
#P fasten 12 0 51 0 232 159 309 159;
#P fasten 44 2 59 0 84 316 330 316;
#P connect 60 0 58 0;
#P connect 59 0 58 0;
#P connect 58 0 24 0;
#P fasten 12 0 71 0 232 158 333 158;
#P connect 71 0 72 0;
#P connect 77 0 60 0;
#P connect 59 1 60 0;
#P connect 45 1 48 0;
#P connect 48 0 46 0;
#P fasten 50 0 46 0 251 611 352 611;
#P connect 46 0 47 0;
#P connect 47 0 67 0;
#P connect 24 1 25 0;
#P connect 25 0 26 0;
#P connect 26 2 27 0;
#P connect 27 0 28 0;
#P fasten 44 3 62 0 97 316 464 316;
#P connect 62 0 61 0;
#P connect 63 0 61 0;
#P connect 61 0 29 0;
#P connect 76 0 63 0;
#P connect 62 1 63 0;
#P connect 29 1 30 0;
#P connect 30 0 31 0;
#P connect 31 2 32 0;
#P connect 32 0 33 0;
#P fasten 44 4 65 0 110 316 598 316;
#P connect 66 0 64 0;
#P connect 65 0 64 0;
#P connect 64 0 34 0;
#P connect 75 0 66 0;
#P connect 65 1 66 0;
#P connect 34 1 35 0;
#P connect 35 0 36 0;
#P connect 36 2 37 0;
#P connect 37 0 38 0;
#P pop;

v a d e //

http://www.vade.info
abstrakt.vade.info


May 19, 2006 | 6:04 am

note I have a subtle bug in the patch I posted which I didnt catch in
testing it.

togedge only reports *transitions* between one and 0, and im using it
to help with reporting whether or not a number is larger than, or
smaller than [> 5]. So, we can potentially get two 1s in a row or two
0′s in a row (or more). togedge wont output anything in those cases.
bad mojo.

replace togedge with [sel 1 0] and all will be well in the cosmos.

v a d e //

http://www.vade.info
abstrakt.vade.info


May 19, 2006 | 12:48 pm

thanks much for this starting point vade, i’m sure it will be most helpful!

-m


Viewing 4 posts - 1 through 4 (of 4 total)