Incorrect drawing on one display with a 2 display Xinerama setup

Hi,

I’m using a Debian testing system with Fluxbox and Xinerama and I have 2 17" displays to use with Ardour 2.4.

While mixing, I use one display to show the editor, the other display to show the mixer, and everything works fine.
While editing, I use both displays to show the editor. In this way I have a pretty huge view for editing regions, but when I scroll horizontally, things on the left physical display are drawed incorrectly; either they do not show up at all, or they are doubled, distorted, fragmented etc. On the right display everything is fine.

This only happens when the editor window of Ardour is stretched over both displays. I kind of feel that this might be a problem in context with Xinerama, but other applications work fine over the 2 displays, e.g. Tuxguitar 1.0-rc3.

Does anyone have experience in a 2 or more display setup with Ardour?

I do have the same kind of setup but I don’t use xinerama. I declare a virtual screen of 3360x1050 (2 x “1680x1050”) in my xorg.conf and use xrandr to use this screen appropriately. Here is the relevant part of my conf files :

xorg.conf (not all of it):

Section “ServerLayout”
Identifier “Default Layout”
Screen 0 “MainScreen” 0 0
Inputdevice “Logitech Cordless Desktop EX110 Keyboard”
Inputdevice “Logitech Cordless Desktop EX110 Mouse”
EndSection

Section “Screen”
Identifier “MainScreen”
Device “Videocard0”
Monitor “Monitor0”
Defaultdepth 24
Option “RenderAccel” “true”
SubSection “Display”
Depth 24
Virtual 3360 1050
Modes “1680x1050_60.00” “1280x800_75.00” “1280x800_60.00”
EndSubSection
EndSection

and my .kde/Autostart/screen_setup.sh (custom made, it runs at openbox-KDE startup) :
#!/bin/sh
/usr/bin/xrandr --output TMDS-1 --right-of VGA

This is highly customized, not generic. I happen to use the onboard intel graphics (G965 chip) via the VGA output + the intel SVDO extension card on the PCI express slot providing a DVI output.

But the main philosophy is that Xorg believes have only ONE screen.

Hi Thorgal,

thanks for the (as always) fast answer!

I also thought about this one big virtual screen. But I’d like to keep the Xinerama feature that you can maximize windows on one physical display (so Xorg have to know that there are 2 screens).

Even if I could work around this problem, I guess that it is interesting and important for Ardour that this problem gets fixed (if it is a general problem and not only on my computer). It is a pro DAW that should run in as many configurations as possible I guess. Nevertheless I don’t have a clue if this is a problem of Ardour or Xinerama.

Benjamin

I see what you mean. You want to maximize to the limits of both screens. In my setup, you can only do that by manually dragging the edges of the non maximized window. Not super convenient for you. Did you check that this problem only occured with ardour or does it show with other apps ?

benjamin - this is almost certainly a problem in GTK (documentation or code; docs might have led me to miss something that ardour should be handling). I would be interested to hear if the GIMP works well with your setup.

Thanks for the tip Paul.
I use the Gimp 2.4.5 and get a strange behavior:

When I stretch a picture over both screens, everything is fine including the horizontally scrolling, except that I cannot draw on my left screen. Whenever I use a brush or anything on the left screen, the brush is mirrored onto the right screen and is drawn there, while the mouse stays on my left screen.

I’ll check out if I can find some programmers of GTK and ask them about it.

Benjamin

Update: After a talk on the GTK+ irc channel, the problem might be rooted in xorg.

I really want to try out if it is no problem with MergedFB… But I just spend 2 full hours on trying to get it to work…aaahhh Xinerama worked within 5 minutes, I must be drunk or something.

Thorgal; would you be so kind to have a quick look into my xorg.conf? This would be great!
Maybe you see something I don’t see.

I uploaded it to
http://www.septimbears.de/xorg.conf-test-mergedfb
All it gives me is a clone view where every single monitor has a resolution of 2560x1024 (so you have to scroll the desktop the monitor…). I have one VGA and one DVI display connected to my Radeon 9600.

My working xorg.conf with Xinerama:
http://www.septimbears.de/xorg.conf

Benjamin,

I am not sure about this because I never had to deal with ATI cards. The main difference between your xorg.conf and mine is that I do not specify any info about a second monitor nor do I set meta-modes (ATI or nVidia standard practice). So I would suggest the following :

  • remove any reference to a second monitor but keep the big virtual screen declared
  • when X is up, fire up an app called grandr and look in the tab labelled Layout. You will see if xrandr sees both screen. If you do see two elements, you can drag and drop one of them to the location you wish. If this works as expected, you can automate this in a startup script (like I mentioned in my 1st post).

If it does not work, then I suggest you google ATI wide screen configurations since I cannot help you more than that (I am no X expert, just been lucky with my system :).

Hi,

thanks for the tips. But I’m stuck here. Google’s not my friend anymore, grandr shows only one display and let me only change the resolution of the screen (so both of my monitors are affected), and I don’t find any good documentation that is up to date. Damn, it’s frustrating, since nothing for my last 2 years with linux was so difficult.
I use fluxbox and do nearly everything adminstrational in the console, but this time I’d wish there was a complete GUI for configuring X so it automatical writes an xorg.conf for MergedFB.

So unfortunately I am not able to check out if the scrolling problem also occurs with MergedFB on my system.

Benjamin

Hi,

well, of course I went on trying to solve this problem… and finally it works, even if it’s kind of strange (see below).
Most iportant thing is that Ardour’s scrolling and Gimp’s painting over both displays works perfectly!

So it seems like a Xserver xinerama bug.

Now the solution (and new problems) to my xorg.conf problem:

I have to turn on the DDCMODE in the Device Section.
Look at
http://www.septimbears.de/xorg.conf-test-mergedfb
again to see my working file. But it’s strange… grandr still shows me only one display, and the Xinerama function with maximizing to only one screen still works! But then again DRI is working, and this only works with mergedfb and not xinerama…

  • My Fonts are very small… xdpyinfo | grep resolution gives me 75x75 (with Xinerama it was 75x76), and my desktop icons’ (idesk) fonts are pretty small, also fonts in XChat2, but fonts within Ardour, Opera, Gimp, and xterm are still the same as before (and good readable).

So I could keep this solution but I’d like to get my old fonts back.

Thanks,
Benjamin

Final posting:

I had to add
DisplaySize 339 271
to both monitor sections in my xorg.conf

Now I have 191x95 dpi, but that’s probably due to the 2 displays :wink:

Fonts are back to normal, Ardour works as expected (perfect), and mergedfb even supports maximizing to one physcial monitor, even if I don’t have clue why.

Conclusion:
As owen @ #gtk+ says, xinerama seems to be an outdated technology and it’s unlikely that this bug will be fixed in xserver; maybe it would be good to add a note to the Ardour page that people shouldn’t expect everything to work with xinerama and switch to mergedfb.

Thanks a lot Thorgal and Paul!

Benjamin

Congrats! :slight_smile:

X is a pain in the butt at times … you’re probably right about xinerama (old fashion tech). I never went that way, either used nvidia or recent intel chips, although I do not care about 3D so it’s all disabled in my conf.