nV News Forums

 
 

nV News Forums (http://www.nvnews.net/vbulletin/index.php)
-   NVIDIA Linux (http://www.nvnews.net/vbulletin/forumdisplay.php?f=14)
-   -   Projector Wall (http://www.nvnews.net/vbulletin/showthread.php?t=131493)

mattty 04-14-09 04:33 AM

Projector Wall
 
I am trying to build a projector wall with four Nvidia gpus at the moment and I am wondering if it is possible to use metamodes or some other technique to "trim" the video sent to the projectors. More specifically, the projectors might overlap each other in the final configuration and I am looking to be able to trim away the overlap in my X config.

I think I had it occur once, on accident, when I switched from a set of tiled 1680x1050 screens to some 1024x768 projectors, but I have not been able to reproduce it. I have been trying to adjust the metamode lines and the Xinerama layout in my xorg.conf, but at best I have only gotten duplicated screen areas.

I can post my xorg.conf tomorrow, I happen to be writing this at home and the computer in question is shut off in the lap.

Bonus question: it would be awesome if anyone had any insight on this, and I have researched it a lot -- is it very practical to do display transformation with the user tools that are out there now? The closest full on user tool seems to be xrandr 1.3 (it has a --transform option taking in a new viewport matrix), but that simply segfaults for my when I tried it. I expect Nvidia would have to add 1.3 support to their driver, and even then I would probably be SOL due to Xinerama and RANDR not playing together.

JaXXoN 04-14-09 05:09 AM

Re: Projector Wall
 
Hi all!

i would also be interested in this "bezel management" feature, but for
a different purpose: with standard LCDs in a triple or six head setup, a
scenery always looks a little bit distorted because of the LCD frames.

Any feedback is highly appreciated!

regards

Bernhard

bwheaton 04-14-09 12:12 PM

Re: Projector Wall
 
Quote:

Originally Posted by mattty (Post 1982604)
I am trying to build a projector wall with four Nvidia gpus at the moment and I am wondering if it is possible to use metamodes or some other technique to "trim" the video sent to the projectors. More specifically, the projectors might overlap each other in the final configuration and I am looking to be able to trim away the overlap in my X config.

That sounds odd. If you want to overlap the projectors, and you've set the offsets so that the material duplicates on the projected images, you want to 'blank' your projected image. Pro projectors have this feature, although you'd be better off with an edge blend. Have you tried physically masking the area you want to remove?

When I heard 'trim' in this context, to me it means removing pixels from the edge but the others filling the gap. You want an output with big black areas (or you thought you might want that)? You could try making a modeline with bigger front and back porches and less video. If you match things - remove one active pixel/line for each added porch pixel/line the projectors might thing it's still the full signal. But what you need really sounds like a step based taken after the GPU outputs.

Bruce

mattty 04-14-09 02:23 PM

Re: Projector Wall
 
Unfortunately, my projectors are cheap and don't have many controls really.

It sounds like you described what I am trying for in your second paragraph: I'd like to project blackness on one portion of the screen that may overlap the area from an adjacent projector.

It sounds like you think this can be done with custom modelines?

I know ideally this would happen AFTER the gpu sent video over a cable, but I don't have any equipment for that. I *have* found it, but it is pricey.

Experimentally, it looks like my projectors aren't too bad when they throw black pixels (i.e. black pixels from one over the top of normal pixels from a neighbor don't interfere with the image too much), and logically it would work out if I could tell X or Nvidia to not paint those particular desktop pixels on that particular gpu. Whether it can be configured that way remains to be seen..

xbobmx 04-14-09 03:12 PM

Re: Projector Wall
 
It would probably be quite a bit of work, but it should be possible to write a compositing window manager that performs arbitrary transformations when displaying the desktop.

However, composite doesn't work with Xinerama due to an X server limitation in the composite implementation, so if you wanted to use four projectors you either need to use four separate X screens or use SLI Mosaic Mode which requires a Quadro Plex.

mattty 04-14-09 03:24 PM

Re: Projector Wall
 
Right. I have considered trying to modify Compiz to perhaps draw onto a quad for each screen, and then transform those. I don't really want to dive into that though if perhaps trimming is possible in an easier place or someone has a transform idea that I have not found.

I've gotten Compiz running on my configuration using Xgl actually, but Xgl is deprecated now. I haven't really tried to coerce Xgl to run on a newer release of X.org -- is it worth my time to try, or is it too intimately concerned with the host X server?

mooninite 04-14-09 04:07 PM

Re: Projector Wall
 
Quote:

Originally Posted by mattty (Post 1983074)
I've gotten Compiz running on my configuration using Xgl actually, but Xgl is deprecated now. I haven't really tried to coerce Xgl to run on a newer release of X.org -- is it worth my time to try, or is it too intimately concerned with the host X server?

Xgl has been deleted out of the Git tree of X.org[1] and you should delete it as well. There's no reason to use Xgl anymore.

[1] http://cgit.freedesktop.org/xorg/xse...36ff6923881b63

mattty 04-14-09 04:57 PM

Re: Projector Wall
 
Yes there is. I can't run Compiz on multiple Nvidia gpus without it.

JaXXoN 04-14-09 07:10 PM

Re: Projector Wall
 
Quote:

Originally Posted by xbobmx (Post 1983060)
it should be possible to write a compositing window manager that performs arbitrary transformations when displaying the desktop.

This sounds quite interesting! I'm running six 1680x1050 displays (two rows of 3x 1680x1050)
using two Matrox TripleHead2Go video signal splitter connected to a single GPU, so my setup
is not affected by the Xinerama issues (i.e. compiz works just fine. Ok, those TH2G boxes are
quite expensive - but actually very cheap compared to QPlex). However, i'm concerned
about performance: since the scenery needs to be rendered six times, the frame rate may drop
to one sixths!?

regards

Bernhard

mattty 04-14-09 07:27 PM

Re: Projector Wall
 
What do you mean? I would think you are already observing the performance drop now; do you notice a performance drop?

JaXXoN 04-14-09 07:48 PM

Re: Projector Wall
 
Quote:

Originally Posted by mattty (Post 1983224)
What do you mean? I would think you are already observing the performance drop now; do you notice a performance drop?

Right now, i'm running a 5040x2100 setup from a single GTX 260 (six displays).
It would be interesting to do benchmarks vs. a three GTX 260 setup in
Xinerama mode (also six displays - two per GPU), but i don't have the necessary
equipment. However, i once had three LCDs connected to two 8800GTs
running in twinview+Xinerama mode (4800x1200): while i could observe
some GPU scaling under certain circumstances (i.e. with glxgears), most
of my typical 3D applications (UT2004, X-Plane) have been about 25-30%
slower than later on when forming a triple-head setup using the same LCDs,
a TH2G and a single card. In other words: throwing out one 8800GT and
splitting one video output of the remaining card for two LCDs (the third LCD
connected straight to the second output) brought 25-30% performance increase.
However, the situation may be different for six displays.

What i actually meant: right now, when i.e. playing UT2004, the scenario
needs to be only rendered once at 5040x2100. With a compiz-based
bezel management system, the scenario would need to be rendered
six time at 1680x1050. Ideally that shouldn't make any difference, but
i can imagine there is some overhead involved. Would be interesting
to do some benchmarks.

regards

Bernhard

mattty 04-14-09 08:24 PM

Re: Projector Wall
 
I would guess that the overhead in that situation would be dependent on the hit from using Compiz anyway, and then the extra hit from managing geometry for the screens. I suspect the latter is not that much. Compiz probably renders to the surface of some 3D object -- now it would just a couple instead of one. I bet the difference is pretty minor.


I was pretty impressed by Nvidia's driver in my situation. The computer I'm working on has FOUR gpus (later it will be 5 or 6). I can run a giant Quake3 or Wow session across all the screens, and the driver pulls off whatever magic it does and things work fine (great job guys!)

I STILL get good framerates -- it is four 9800 GTs right now.

To benchmark it informally.. Quake3 at 1024x768 was scoring about 550fps. Going up to to a Quake3 session at 5000x2100 straddling all four gpus drops the framerate to 350-370 fps. Not bad!

If only Xinerama + Composite [ + RANDR] worked :(

I hope one day it does. Seems like some of that business is in flux now with X.org.


All times are GMT -5. The time now is 02:39 PM.

Powered by vBulletin® Version 3.7.1
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Copyright 1998 - 2014, nV News.