linux nvidia driver and dual monitors

If you do a google search on ‘linux dual monitors’ you’ll find a lot of forum discussions about this problematic issue. The thing is having two or more monitors has really caught on. The most common setup is a laptop with an extra monitor, but video cards often come with a DVI and VGA output which makes it easy to have two displays. And LCD monitors are smaller than the old CRTs so its a bit easier to find the desk space for that extra screen.

The problem with dual monitors in linux is that there are multiple ways of doing it. Most people just want to plug in the monitor and have it work, but linux forces you to make choices about this. Here are some:

  • Cloned displays
  • Two independent X displays (so you can’t drag windows between them)
  • If you have n ATI card, do you want to use a Merged Frambuffer if you’re using the Xorg ATI driver, or the ATI BigDesktop if you use the ATI proprietary driver, or do you want to use Xinerama?
  • If you have an Nvidia card do you want to use Twinview with the Nvidia proprietary driver or Xinerama?

I have a desktop system with a Nvidia 7300 LE card in it. Two monitors are attached, and I had worked out a Twinview based xorg.conf that worked OK. I was reasonably happy. However, everytime I played some video full screen on one of the monitors I could see that it wasn’t doing it cleanly. ie. You could see redraw in progress (like horizontal cuts through a frame during high action scenes). This was rather irritating given this is a Core 2 Duo. I was running mplayer or some other player in Xvideo mode and I have much slower computers that don’t show this screen redraw problem.

After some research, I came to the conclusion that Twinview is crap.

So, now my config has two screens joined using Xinerama and my video problems seem to be solved.

NB: I’m not using beryl on this so I have no idea what the ramifications are for that.