[jitter] Realtime video buffer with variable speed access
Thierry Fournier
thierry at thierryfournier.net
Thu Dec 20 14:37:28 MST 2007
- Previous message: [jitter] Realtime video buffer with variable speed access
- Next message: [jitter] Jitter inside Pluggo (qlim/speedlim problem)
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Thanks Wes, My apologies to answer so late, I wasn't here for 2 days. I can blend 2 consecutives frames with a floating point index. But I don't see how, in this patch, I could read the storage matrix at a different speed than the incoming video - starting from the fact that the matrix are filled circularily with the incoming frames. In fact, I guess that there is an incompatibility between the model I magine, which is linear (like a tape recording and accumulating the incoming video, which could be read at lower speeds or even stopped), and this model which is circular. Do I misunderstand a basic notion ? Thierry Fournier http://www.thierryfournier.net Le 17 déc. 07 à 23:48, Wesley Smith a écrit : > For variable speed access, all you have to do is move an index up or > down at different rates. You can play around with a floating point > index and take the 2 closest frames which you would then blend in some > fashion according to the fractional amount of the index. > > wes > > On Dec 17, 2007 11:14 AM, Thierry Fournier > <thierry at thierryfournier.net> wrote: >> Hello, >> >> A question about time. Could it be possible to record live video with >> a jit.qt.grab, and store it in real time in a variable access buffer, >> which would be read at variable speed rates ? >> >> For example we would read this buffer at the same speed than the >> incoming live video (= no delay), then we would read it slower, at >> different speeds (=> creating an increasing delay compared with the >> realtime), and then for example accelerate again the lecture speed of >> the buffer, in order to re-synchronise it with the incoming realtime >> video. >> >> I tried to make it with the "video delay" example published by >> Jonathan Lee Marcus on the list (thanks again), using matrix >> dimensions to store frames read with the srcdimstart and srcdimend >> cmds, but I didn't get it : I can't read these stored matrix at >> different speed rates. Sorry if it's obvious, I'm not very >> comfortable with this method. I post the patch again for reference. >> >> Thanks & best regards, >> >> Thierry Fournier >> >> max v2; >> #N vpatcher 31 63 1038 714; >> #P origin 66 321; >> #P user jit.pwindow 362 345 322 242 0 1 0 0 1 0; >> #P window setfont "Sans Serif" 9.; >> #P number 377 237 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0; >> #P user jit.fpsgui 64 136 60 196617 0; >> #P message 671 42 26 196617 500; >> #P newex 671 21 45 196617 loadbang; >> #P window setfont "Sans Serif" 12.; >> #P window linecount 2; >> #P comment 711 350 132 196620 simple video delay jonathan lee marcus; >> #P toggle 28 38 15 0; >> #P window setfont "Sans Serif" 9.; >> #P window linecount 1; >> #P newex 28 58 64 196617 qmetro 60; >> #P message 139 58 38 196617 close; >> #P message 96 36 124 196617 open \, framerate 60.; >> #P newex 28 96 238 196617 jit.qt.grab 320 240 @vmode 1 @unique 1; >> #P user jit.pwindow 27 348 322 242 0 1 0 0 1 0; >> #P comment 744 221 136 196617 <--less___delay___more-->; >> #P message 685 184 42 196617 size \$1; >> #P newex 377 263 129 196617 expr (($i1+$i2)-$i3)%$i4; >> #P newex 671 83 27 196617 + 1; >> #P message 379 134 81 196617 dim 320 240 \$1; >> #P message 671 129 74 196617 max \$1 \, min 0; >> #P comment 705 63 132 196617 <-maximum frames of delay; >> #P number 671 61 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0; >> #P number 671 150 35 9 0 500 3 3 0 0 0 221 221 221 222 222 222 0 0 0; >> #P comment 707 151 136 196617 <-number of frames to delay; >> #P newex 377 209 50 196617 r rtdelay; >> #P newex 363 307 262 196617 jit.matrix dave 4 char 320 240 @usesrcdim >> 1 @adapt 0; >> #P message 377 286 205 196617 srcdimstart 0 0 \$1 \, srcdimend 319 >> 239 \$1; >> #P user hslider 685 203 19 236 501 1 0 0; >> #P newex 470 132 50 196617 s rtdelay; >> #N counter 0 0 160; >> #X flags 0 0; >> #P newobj 380 87 82 196617 counter 0 0 160; >> #P message 378 166 203 196617 dstdimstart 0 0 \$1 \, dstdimend 319 >> 239 \$1; >> #P newex 363 188 283 196617 jit.matrix jack 4 char 320 240 161 >> @usedstdim 1 @interp 0; >> #P newex 363 47 27 196617 t l b; >> #P connect 24 0 23 0; >> #P fasten 22 0 20 0 144 94 33 94; >> #P fasten 21 0 20 0 101 94 33 94; >> #P fasten 23 0 20 0 33 94 33 94; >> #P connect 20 0 19 0; >> #P fasten 20 0 28 0 33 125 69 125; >> #P fasten 20 0 0 0 33 125 311 125 311 35 368 35; >> #P lcolor 13; >> #P fasten 14 0 1 0 384 154 368 154; >> #P fasten 2 0 1 0 383 185 368 185; >> #P connect 0 0 1 0; >> #P lcolor 13; >> #P connect 1 0 7 0; >> #P lcolor 13; >> #P connect 6 0 7 0; >> #P connect 7 0 30 0; >> #P connect 8 0 29 0; >> #P connect 29 0 16 0; >> #P connect 16 0 6 0; >> #P fasten 3 0 2 0 385 112 374 112 374 160 383 160; >> #P fasten 15 0 14 0 676 120 384 120; >> #P connect 0 1 3 0; >> #P fasten 15 0 16 1 676 114 663 114 663 235 421 235; >> #P fasten 11 0 3 4 676 76 457 76; >> #P fasten 10 0 16 2 676 245 460 245; >> #P fasten 3 0 4 0 385 118 475 118; >> #P fasten 15 0 16 3 676 114 660 114 660 224 499 224; >> #P connect 26 0 27 0; >> #P connect 27 0 11 0; >> #P connect 11 0 15 0; >> #P fasten 11 0 13 0 676 79 703 79 703 125 676 125; >> #P connect 13 0 10 0; >> #P fasten 5 0 10 0 690 227 667 227 667 147 676 147; >> #P fasten 15 0 17 0 676 106 850 106 850 179 690 179; >> #P connect 17 0 5 0; >> #P pop; >> >> >> _______________________________________________ >> jitter mailing list >> jitter at cycling74.com >> http://www.cycling74.com/mailman/listinfo/jitter >> > _______________________________________________ > jitter mailing list > jitter at cycling74.com > http://www.cycling74.com/mailman/listinfo/jitter >
- Previous message: [jitter] Realtime video buffer with variable speed access
- Next message: [jitter] Jitter inside Pluggo (qlim/speedlim problem)
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
