th2go performance

Nov 26, 2008 at 10:58pm

th2go performance

hi all,
im trying to setup 3 screen projection with TH2GO digital edition, but the fps is around 10… i took a look into the forum for similar issues but i dont found the answer….

here is the simple patch im using. basically a qtmovie with adapt and unique going to a videoplane…

system configuration is::

Dell Core2duo (2Ghz) // 2gb RAM // nVidia Quadro FX350M 512Mb
win xp sp3, max 5.0.5
video file quicktime // 3072×768 // photo jpeg 80%

i try with uyvy and other things but nothing seems to work..

seems like too much resolution 3072×768 for qt.movie?
because even in a small window i get poor performance, the same like in fullscreen mode..
the video files are around 400mb of size…
maybe i need edit the video files and split them in 3 1024×768 slices? no the best solution for me…

please somebody can point me in the right direction?

thanks in advance.
o

– Pasted Max Patch, click to expand. –
#41068
Nov 30, 2008 at 6:58pm

maybe you could try to loadram the movie to check if the harddisk is the bottleneck..

jan

#145883
Nov 30, 2008 at 9:39pm

3072 pixels wide is definetely a lot.
To split is the answer.
Try this out:
JS

– Pasted Max Patch, click to expand. –
#145884
Dec 2, 2008 at 1:27am

hi guys.. thanks for your answer..

i found that using uyvy or loadram dosent give better performance, but slicing the video seems the way, but i still without get a good performance… but now im in 20FPS with a 2400×600 video…

JS, i dont understand why you use three qt.movie instances, so i did one qt.movie sliced with 3 jit.submatrix (better performance than jit.scissors) of 800×600, going to a gl.texture -> gl.videplane. i post the patch.

disabling doublebuffer give me screen flickering…

one think that i dont understand is that the dest_dim attribute in texture and videoplane is 2400 600 instead of 800 600… i try to change it, but isnt possible, is this coming from gl.render?

and another question is if i can slice the video in GL.. im trying to find how but no luck… i dont find the way of use texture coordinates,a slab or something like this… :-? and dont find any example…

thanks again…
o

– Pasted Max Patch, click to expand. –
#145885
Dec 2, 2008 at 5:59am

You’ll most likely get better performance by doing the splitting on the GPU. One option for doing this is the td.resample.jxs shader. See below for details. The shader could also be written for absolute pixel dimensions instead of the normalized values.

Andrew B.

– Pasted Max Patch, click to expand. –
#145886
Dec 2, 2008 at 6:02am

#145887
Dec 2, 2008 at 11:27am

#145888
Dec 4, 2008 at 2:45am

Hi Andrew,,
i test your patch using resample slab and give me 15fps… :-(
using submatrix i get 20fps.. :-?
i test both patches in a faster machine (QuadCore, 4gb ram and ati radeon 4870 1gb) and give me the same results.

i have updated grpah drivers and test the cards with gpu caps utility to check the performance and the results are good…

so i dont know what to do…. any new idea?

maybe the only way is like JS said, cut the videos out of jitter and use three diferent qt.movies? but i think theres people out there doing what im trying to do and having good performance… ??

thank you very much for your help.

bests,
o

#145889
Dec 4, 2008 at 2:55am

my experience is that the quadro series is absolutely inferior for
jitter work. you’re going to want to use a geForce instead, or an ATI
radeon. it doesn’t surprise me that you’re getting such crappy
framerates. the irony is that it’s difficult to get decent
‘workstation’ computers without these CAD cards, which just don’t work
well for jitter.

a massive 8 core machine i used for an install in january limped along
with a quadro in it. i put a geforce in it and got a ~20fps fps boost.

i am not a graphics tech, but my understanding is this: the gaming
cards are designed not so much to get it right as to get it fast. the
CAD cards want to make sure every vertex is in the right place, and if
framerate suffers, so be it.

jitter is better suited to the ‘get it fast’ cards- the gaming line.

i know this sounds… wrong… but it’s been my experience over the
last year.

On Nov 26, 2008, at 5:58 PM, oscar wrote:

>
> hi all,
> im trying to setup 3 screen projection with TH2GO digital edition,
> but the fps is around 10… i took a look into the forum for similar
> issues but i dont found the answer….
>
> here is the simple patch im using. basically a qtmovie with adapt
> and unique going to a videoplane…
>
> system configuration is::
>
> Dell Core2duo (2Ghz) // 2gb RAM // nVidia Quadro FX350M 512Mb
> win xp sp3, max 5.0.5
> video file quicktime // 3072×768 // photo jpeg 80%
>
> i try with uyvy and other things but nothing seems to work..
>
> seems like too much resolution 3072×768 for qt.movie?
> because even in a small window i get poor performance, the same like
> in fullscreen mode..
> the video files are around 400mb of size…
> maybe i need edit the video files and split them in 3 1024×768
> slices? no the best solution for me…
>
> please somebody can point me in the right direction?
>
> thanks in advance.
> o
>
>

– Pasted Max Patch, click to expand. –

>

#145890
Dec 4, 2008 at 4:38am

Yeah, what Josh said is what has been explained to me as well. Workstation = CAD/architectural/Medical/Engineering = accurate or people die…

Gaming = fast and dirty which is how we all like it here.. just ask Phyllis Tushman…

#145891
Dec 4, 2008 at 11:01am

Hi Oscar,
for a similar task I convert my video files into something strange with
patch 1 (you will see what it does). Then I play the resulting file
with patch 2. let me know if this gives you some better results. works
very fine for me.

John.

Patch 1:

max v2;
#N vpatcher 885 504 1485 904;
#P window setfont “Sans Serif” 9.;
#P window linecount 1;
#P message 176 100 40 196617 getdim;
#P button 110 99 15 0;
#P newex 371 270 64 196617 prepend dim;
#P window linecount 0;
#P message 439 291 64 196617;
#P window linecount 1;
#P message 218 100 60 196617 framedump;
#P message 294 289 29 196617 stop;
#P message 137 289 154 196617 write 30. animation normal 600;
#P newex 439 270 62 196617 prepend set;
#P newex 371 241 30 196617 pack;
#P newex 371 212 27 196617 / 2;
#P newex 371 188 40 196617 unpack;
#P newex 310 206 32 196617 sel 1;
#P newex 269 183 51 196617 zl slice 1;
#P newex 269 157 76 196617 route read dim;
#P newex 110 317 172 196617 jit.qt.record 1920 720 @realtime 0;
#P newex 110 245 73 196617 jit.argb2uyvy;
#P user jit.pwindow 128 165 82 62 0 1 0 0 1 0;
#P message 141 100 30 196617 read;
#P newex 110 135 155 196617 jit.qt.movie @adapt 1 @unique 1;
#P fasten 18 0 0 0 181 127 115 127;
#P connect 17 0 0 0;
#P fasten 14 0 0 0 223 130 115 130;
#P fasten 1 0 0 0 146 125 115 125;
#P connect 0 0 3 0;
#P fasten 16 0 4 0 376 314 115 314;
#P connect 3 0 4 0;
#P fasten 12 0 4 0 142 313 115 313;
#P fasten 13 0 4 0 299 309 115 309;
#P fasten 0 0 2 0 115 159 134 159;
#P fasten 7 0 18 0 315 232 413 232 413 81 181 81;
#P connect 0 1 5 0;
#P connect 5 0 6 0;
#P connect 6 1 7 0;
#P fasten 5 1 8 0 307 178 376 178;
#P connect 8 0 9 0;
#P connect 9 0 10 0;
#P connect 10 0 16 0;
#P connect 8 1 10 1;
#P connect 10 0 11 0;
#P connect 11 0 15 0;
#P pop;

and Patch 2:

max v2;
#N vpatcher 54 48 754 714;
#P window setfont “Sans Serif” 9.;
#P window linecount 1;
#P message 377 278 90 196617 color $1 $1 $1 1.;
#P flonum 377 257 35 9 0. 1. 3 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 180 308 272 196617 jit.gl.gridshape content @shape plane
@transform_reset 2;
#P user jit.fpsgui 31 133 60 196617 0;
#P toggle 442 76 15 0;
#P message 442 98 53 196617 unique $1;
#P toggle 320 383 15 0;
#P message 320 406 46 196617 sync $1;
#P newex 180 277 188 196617 jit.gl.texture content @colormode uyvy;
#N vpatcher 20 74 620 474;
#P outlet 119 233 15 0;
#P window setfont “Sans Serif” 9.;
#P newex 119 209 67 196617 prepend rect;
#P newex 78 186 51 196617 zl slice 2;
#P message 173 139 107 196617 rect 100 10 420 340;
#P newex 78 108 41 196617 sel 1 0;
#P toggle 78 83 15 0;
#P newex 78 59 44 196617 sel 102;
#P newex 78 32 40 196617 key;
#P message 78 140 49 196617 coords 1;
#P newex 78 162 61 196617 jit.displays;
#P connect 2 0 3 0;
#P connect 3 0 4 0;
#P connect 4 0 5 0;
#P connect 5 0 1 0;
#P connect 1 0 0 0;
#P connect 0 0 7 0;
#P connect 7 1 8 0;
#P connect 8 0 9 0;
#P fasten 6 0 9 0 178 230 124 230;
#P fasten 5 1 6 0 98 133 178 133;
#P pop;
#P newobj 250 404 63 196617 p fullscreen;
#P newex 250 432 177 196617 jit.window content @colormode uyvy;
#P newex 132 433 101 196617 jit.gl.render content;
#P newex 132 166 74 196617 t b b b s erase;
#P message 394 98 44 196617 window;
#P message 348 98 43 196617 dispose;
#P message 265 98 80 196617 window content;
#P user jit.fpsgui 60 203 60 196617 0;
#P message 227 96 30 196617 read;
#P newex 162 125 155 196617 jit.qt.movie @adapt 1 @unique 1;
#P toggle 88 54 15 0;
#P newex 88 74 57 196617 qmetro 30;
#P connect 0 0 17 0;
#P connect 2 0 4 0;
#P connect 1 0 0 0;
#P connect 2 0 8 0;
#P connect 8 0 9 0;
#P connect 0 0 2 0;
#P fasten 7 0 2 0 399 123 167 123;
#P fasten 6 0 2 0 353 121 167 121;
#P fasten 5 0 2 0 270 121 167 121;
#P fasten 3 0 2 0 232 121 167 121;
#P fasten 15 0 2 0 447 119 167 119;
#P connect 8 3 12 0;
#P connect 12 0 18 0;
#P fasten 20 0 18 0 382 302 185 302;
#P fasten 13 0 10 0 325 427 255 427;
#P connect 11 0 10 0;
#P connect 14 0 13 0;
#P connect 19 0 20 0;
#P connect 16 0 15 0;
#P pop;

oscar schrieb:
> Hi Andrew,,
> i test your patch using resample slab and give me 15fps… :-(
> using submatrix i get 20fps.. :-?
> i test both patches in a faster machine (QuadCore, 4gb ram and ati radeon 4870 1gb) and give me the same results.
>
> i have updated grpah drivers and test the cards with gpu caps utility to check the performance and the results are good…
>
> so i dont know what to do…. any new idea?
>
> maybe the only way is like JS said, cut the videos out of jitter and use three diferent qt.movies? but i think theres people out there doing what im trying to do and having good performance… ??
>
> thank you very much for your help.
>
> bests,
> o
>
>
>

#145892
Dec 5, 2008 at 2:24pm

eeii josh…

let me share some fustration… :) i test the patch in these computers:

A: Core2Duo 2Ghz / 2Gb RAM / Quadro FX350M
win xp sp3, max 5.0.5 / QT 7.5.5

B: QuadCore 3Ghz / 4Gb RAM / ATI Radeon 4870 1Gb!
xp 64 pro, sp2, max 5.0.5 / QT 7.5.5

and TH2GO digital ed. with 3 screens. total resolution 2400×600 video file in QT format codec photojpeg size > 144Kb

results of the patch posted by Andrew: 16FPS in both machines
just playing the video and slicing with resample slab

results slicing with jit.submatrix: 20FPS in both machines

why im getting the same performance betwen those diferent machines? being computer B 2,3,4,6 or more times faster?

and the big question,,
why i can play this video with KMplayer or BSPlayer at full framerate? and in jitter im getting poor performance?

i think 2400×600 isnt too much… which are the movie resolution limits in jitter? i need to tweak somegthing in jitter configuration?

this afternoon i will give a try to the patch posted by John…lets see…

bests!
o

ps: greetings to the robots!! i think we meet in lemur year ago.. we been there dancing with the bots, using the wireless miditron and PD the time you did the residency… at the end i made the step to max :)

#145893
Dec 5, 2008 at 2:48pm

of course i remember you, oscar. i’ll never forget your dancer making
the frets on the guitar bot rise. amazing tableau.

On Dec 5, 2008, at 9:24 AM, oscar wrote:

>
> eeii josh…
>
> let me share some fustration… :) i test the patch in these
> computers:
>
> A: Core2Duo 2Ghz / 2Gb RAM / Quadro FX350M
> win xp sp3, max 5.0.5 / QT 7.5.5
>
> B: QuadCore 3Ghz / 4Gb RAM / ATI Radeon 4870 1Gb!
> xp 64 pro, sp2, max 5.0.5 / QT 7.5.5
>
> and TH2GO digital ed. with 3 screens. total resolution 2400×600
> video file in QT format codec photojpeg size > 144Kb
>
> results of the patch posted by Andrew: 16FPS in both machines
> just playing the video and slicing with resample slab
>
> results slicing with jit.submatrix: 20FPS in both machines
>
> why im getting the same performance betwen those diferent machines?
> being computer B 2,3,4,6 or more times faster?
>
> and the big question,,
> why i can play this video with KMplayer or BSPlayer at full
> framerate? and in jitter im getting poor performance?
>
> i think 2400×600 isnt too much… which are the movie resolution
> limits in jitter? i need to tweak somegthing in jitter configuration?
>
> this afternoon i will give a try to the patch posted by John…lets
> see…
>
> bests!
> o
>
> ps: greetings to the robots!! i think we meet in lemur year ago.. we
> been there dancing with the bots, using the wireless miditron and PD
> the time you did the residency… at the end i made the step to max :)

#145894
Dec 8, 2008 at 11:23pm

What codec did you use to encoder your movie? I found that this had a huge impact on performance.

I am doing something very similar, except that I am reading a 3500 x 437 movie and splitting it into two outputs, each connected to a TripleHead2Go. (So I’m driving 6 monitors in total.)

Mac OS X doesn’t seem to allow for monitor spanning (ie treat the two separate outputs as a single monitor), so I ended up writing up a simple patch much like yours.

Initially performance on a quad-core Mac Pro was terrible, about 5fps. (In Jitter – it played back fine in QuickTime Player.) The movie was 3500 x 437 encoded using H.264, and was about 40MB in size. I re-encoded the movie at the same resolution, using QuickTime PhotoJPEG at 80% quality. The result was about 400MB in size.

The PhotoJPEG movie played back at 30fps – on my lightweight laptop, Core 2 Duo 1.8Ghz and Intel 965 integrated graphics! On the Mac Pro, as expected, it just cruised.

I believe that H.264 decoding is particularly hampered in Jitter, probably because the playback mechanism involves repeated seeks to position. PhotoJPEG is much better at allowing random seeks, hence dramatically improved performance!

– Pasted Max Patch, click to expand. –
#145895
Dec 12, 2008 at 2:54pm

Hi John!
thanks, thanks, thanks very much for your guideline!
ir works perfect using QT Animation codec with UYVY,
but a 10 seconds and 200Mb video becomes 600Mb, so i need to experiment with my video partner diferent QT codecs and see if we find a balance between framerate and file size, because maybe we need to play 20 minutes video and with those numbers maybe we speak about 25Gb video file in QT animation…. seems like too much…

thanks again i will inform you if i find the middle way using diferent QT codecs.

bests,
o

#145896
Dec 12, 2008 at 2:56pm

yes i was using QT photojpeg as you, i test using diferent ji.windows and give me same performance, the best i get is using the patches posted by John give them a try…

thanks!
o

#145897
Dec 12, 2008 at 2:57pm

Glad that worked!

See if in your encoding program there is an option to encode H.264, but making every frame a keyframe.

That should be smaller than using Animation codec.

#145898
Dec 12, 2008 at 5:49pm

Hi Oscar,
great that this works for you! I did some experiments on different
codecs already. The only useful codecs I know of that hold an alpha
channel is animation and png. png is much smaller than animation but I
had a really hard time with unexpected crashes and bad performance
using png. Do you experience problems with files of 25GB of size? If so
you might want to split the big animation movie and play one after the
other?

Yes, please let me know what you find out! Even some bad experience is
useful.

Thanks. John.

oscar schrieb:
> Hi John!
> thanks, thanks, thanks very much for your guideline!
> ir works perfect using QT Animation codec with UYVY,
> but a 10 seconds and 200Mb video becomes 600Mb, so i need to experiment with my video partner diferent QT codecs and see if we find a balance between framerate and file size, because maybe we need to play 20 minutes video and with those numbers maybe we speak about 25Gb video file in QT animation…. seems like too much…
>
> thanks again i will inform you if i find the middle way using diferent QT codecs.
>
> bests,
> o
>
>
>

#145899

You must be logged in to reply to this topic.