I want to set up a multi-monitor configuration where two "landscape" oriented monitors one above the other and two "portrait" oriented monitors one right of the other combine into a single large screen.

I'm trying to create a xorg.conf file that would provide a single X screen for multiple (four) monitors attached to several (two) videocards (NVidia) on the same machine (Ubuntu 11.10).

I stumbled upon a xorg.conf manual that states that the Screen section is the binding of a Monitor and a Device. I don't understand how to provide the idea that one Screen must be composed of several Monitors.

I don't want to use Xinerama or TwinView since it don't meet my requirements for hardware acceleration. I used nvidia-settings but it doesn't honor the rotation settings.

3 Answers
3

Can you include how to actually do it?
–
Michael Mrozek♦Jan 20 '12 at 22:26

Unfortunately, nvidia-settings does NOT (sic!) include RandR control in their GUI configuration. I needed to produce a bulk xorg.conf with Option "RandRRotation" "yes" to make it active. Once activated, a control line in nvidia-settings GUI appeared allowing one of the Screens to be rotated. However, the Nvidia's utility itself doesn't honor it's own rotation settings, displaying all the monitors in the monitor layout tab in non-rotated form. Also, RandR rotation is not applied until login, which is inacceptable.
–
mbaitoffJan 22 '12 at 13:56

You can use the Screen to define the size of the total desktop to be displayed by the various monitors. It can point to one of the three monitors, each in its own section. The options in the additional monitors describe their relative positions.

Although xrandr isn't useful to you as a solution, it can be useful to try various resolutions and positions. Once you have it configured the way you want you can describe the configuration in xorg.conf and restart X. You may find a useful example here.

As you note - you can't use Xinerama or TwinView and get X-compositing on your screens. What you really want to do involves multiple Device entries in xorg.conf for the same device and/or nvidia'smosaic mode. I went through this just the other day after rearranging the living room to accomodate a projector and it is not intuitive. I wound up doing it bit by bit with several false starts, but for one video card and two displays my xorg.conf came out like this.

The one screen used to define metamodes is a sort of indirection. The nvidia driver and/or RandR extension adds together the display area of one or more physical screens and addresses that display area as a single virtual screen. Here is a link to the relevant section of nvidia's readme. And here's what mine actually look like:

As you can see the two screens are one - but the resolutions per constituent screen are not evenly matched - so while that white bar at the bottom left shows up in a screen shot, it's not on my display. My display fills both of my screens. And here's a closer look at the nvidia-settings:

If you look at my own xorg.txt file you'll likely notice it is auto-generated. I got it to work by first powering off all of the displays but one and then, at a regular console, I ran sudo nvidia-xconfig for a baseline xorg.conf and, after starting X, I opened nvidia-settings and powered on my screens. It was not a scientifically perfect process, admittedly, but the result is satisfactory.

Another problem I had that you may or may not have was the sound EDID extensions passed over the HDMI cables from my displays. I use the analog out from my computer and there was another very annnoying few hours spent trying to convince ALSA/Pulse to ignore those extra intel-hda-audio devices. So I rewrote the EDIDs to appear as DVI outputs - essentially disabling the computer's detection of the displays' audio sinks. If you do run into similar issues, I humbly recommend this little gem to automatically do the same.