nV News Forums


nV News Forums (http://www.nvnews.net/vbulletin/index.php)
-   NVIDIA Linux (http://www.nvnews.net/vbulletin/forumdisplay.php?f=14)
-   -   Possible fix for overscan issues under Ubuntu (and possibly other Linux distros) (http://www.nvnews.net/vbulletin/showthread.php?t=148662)

Fox60 03-07-10 03:56 AM

Possible fix for overscan issues under Ubuntu (and possibly other Linux distros)
I'm just going to throw this out there for those of you who have an Acer Aspire Revo or similar computer with an HDMI output that you are connecting to your TV, and your TV does NOT have the pixel-to-pixel setting or some variation thereof (I have a Sharp LC-42SB45U TV that doesn't have anything like this), and you are tired of having the top and bottom menu bars either fully or partially cut off. Oh, and the NVIDIA graphics driver either doesn't show an Overscan Compensation slider, or if it does, the slider doesn't actually do anything (I only found ONE early version of the 190 series driver, specifically 190.42, that showed the slider, and although I could move it around, it didn't change the screen size one bit).

The main thing I must emphasize is that this is experimental and if you try it, you do so at your own risk. There are spurious reports of TV's being damaged by improper settings and while I've never read any first-person accounts of that happening, I'm telling you right now that there's always that possibility. So don't do this unless you understand what's happening at each step of the way and are willing to assume any risk.

So, the first thing is to create a new xorg.conf. To do that, see this thread:
Basically you want to follow the instructions in the first post of that thread. The important part of this is that when you are finished, you will have a ModeLine that is correct for YOUR TV. Do NOT use a generic ModeLine - follow the instructions there and find the ModeLine that is right for your particular TV. There are other guides out there on how to do this but the important thing is that you get the ModeLine and other xorg.conf settings correct, and that you don't get flicker, etc. when watching fast-moving videos.

Another thing to note is that you MIGHT have to use Synaptic to remove the following packages, if they have been installed. I don't know if you have to remove all of these but I do know that when they were installed in a recent upgrade, suddenly the settings in xorg.conf were ignored. So if you make changes in xorg.conf and nothing seems to happen, remove the following (you can always reinstall them again if need be):


Be sure to reboot after removing those packages. After that your xorg.conf should be recognized. One other thread about xorg.conf that might prove helpful is this one:


In particular, if you just can't seem to get rid of flicker, backup your xorg.conf file, then download and run the nvidia.sh file from the above link as instructed, then try copying your xorg.conf (that you made using the instructions in the link a few paragraphs above) back. It's important to get rid of any flicker in video playback before proceeding.

Once you have a ModeLine that works, go into XBMC or Boxee (in XBMC you may have to switch to something other than the default skin to see the information you need - I know the Xperience skin shows it) and adjust the overscan compensation. But the important thing is, as you do, note how many pixels you are moving in on each side, and on the top and bottom. In my case, when I adjusted it so the corners match the corners of my physical display, I had moved in 50 pixels on each side (total 100) and 27 pixels top and bottom (total 54). Subtract those totals from your display size (probably 1920 x 1080, so in my case I had 1820 x 1026). You don't HAVE to do this, but it takes the guesswork out of finding the right size (otherwise you'll probably have to use good old trial-and-error).

Next, go to the Calculator for video timings v. 1.9 at http://www.epanorama.net/faq/vga2rgb/calc.html and do the following: First, copy your current, working ModeLine (that you know produces flicker-free video) into the box in Section 1 labeled "Or give Xfree86 modeline to import" - be sure to copy and paste the entire ModeLine, including the actual word "ModeLine" at the start. Then click the "Import ModeLine" button. That should fill in the blanks in Section 2. Then go to Section 3 and click the "Calculate" button. In section 4, in the box labeled "Xfree86 modeline (to be included to XConfig file):", you should see a ModeLine that is exactly the same as the one you put into it, except possibly for whitespace between values. If you don't, then something's wrong with the ModeLine you're feeding into it, so get that issue resolved before you go any further.

Next, go back to Section three and change ONLY the values in the two "Resolution" boxes. These should be changed to the width and height, in pixels, of the VISIBLE portion of your display (in my case, the values "1820" and "1026" mentioned two paragraphs above). Click on the "calculate" button again. This will give you a new ModeLine, but don't just cut and paste it into xorg.conf verbatim. For example, I got a ModeLine that read like this:

Modeline "1820x1026" 148.50 1820 1908 1952 2100 1026 1030 1035 1071 +hsync +vsync

BUT my xorg.conf wasn't looking for a ModeLine named "1820x1026", so I changed just that part back to "1920x1080". The part in quotes is just a name for that mode, and since the line is referenced elsewhere in xorg.conf (and possibly in other software) it's easier just to name the new ModeLine as "1920x1080", or whatever your original ModeLine was named. Once you have made that adjustment, replace the existing ModeLine (or comment it out and add the new one) in xorg.conf.

EDIT: I have since read on several sites that the horizontal setting must be evenly divisible by 8. Well, I don't know about that, but the above worked for me. 1820 is divisible by 4, but not 8, so I'd either have to round up to 1824 or down to 1816 to meet this requirement (and some online ModeLine calculators will enforce this). Rounding down to 1816 would give me this (again, remember to rename it):

Modeline "1816x1026" 148.50 1816 1904 1948 2096 1026 1030 1035 1071 +hsync +vsync

This gave me hardly noticeable black bands at the sides of the screen. Had I chosen round up to 1824, the generated ModeLine would have been this:

Modeline "1824x1026" 148.50 1824 1912 1956 2104 1026 1030 1035 1071 +hsync +vsync

Note that the calculator page does have buttons that allow you to move the display left, right, up, or down in case it's not centered properly.

If you have multiple ModeLines in your xorg.conf, you can do the same procedure with each, although it's highly likely that only one of them will ever be used when the desktop is displayed. I will note that I tried keeping both my modified and original ModeLines in the file, with the thought that I could select between the two, but that caused weird things to happen (in particular, Ubuntu sent its menu bars sort of north by northwest). I also note that after modifying the ModeLine as shown above, the resulting Vertical Sync Frequency and Field Rate values are no longer an even 60 Hz, but nevertheless it worked, whereas when I attempted to adjust the Pixel clock frequency (by trial and error) to give me an even 60 Hz, that worked for the desktop BUT then I had flicker in my video playback in XBMC (some days it seems you just can't win).

Now, having said all this, I would love NVIDIA to death if they would just put the Overscan Compensation slider back into the "NVIDIA X Server Settings" utility, and make it actually work. But the above procedure worked for me, and if you are brave enough to try it, it might work for you. And if anyone knows a better way to do this (other than replace the TV with one that has a 1:1 pixel setting), please let me know. Or if you know how to get into any hidden service menu on the Sharp LC-42SB45U that might have this setting, I'd love to know about that, too!

Edit: If anyone tries this, please pay attention to the quality of the displayed video in XBMC and Boxee before and after. After using this fix for a while, I began to notice that colors seemed a bit washed out… not by a huge amount, but it just seemed that some videos didn't have the nice bright colors that they'd had. It MIGHT have been just my imagination, so I'd appreciate any feedback on that if anyone else tries this (or if you know why that might happen, please comment).

Edit: This is my final xorg.conf, so you can see the options I used, in case you're having trouble making this work - but remember, unless YOU have a Sharp LC-42SB45U TV, these numbers will not be right for you. For that matter, I'm not even sure they are right for me, I just know that this seems to have solved the overscan problem (for now, anyway).


# nvidia-xconfig: X configuration file generated by nvidia-xconfig
# nvidia-xconfig:  version 1.0  (buildmeister@builder75)  Tue Dec  8 21:04:28 PST 2009

Section "ServerLayout"
    Identifier    "Layout0"
    Screen      0  "Screen0"
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"

Section "Files"

Section "InputDevice"
    # generated from default
    Identifier    "Mouse0"
    Driver        "mouse"
    Option        "Protocol" "auto"
    Option        "Device" "/dev/psaux"
    Option        "Emulate3Buttons" "no"
    Option        "ZAxisMapping" "4 5"

Section "InputDevice"
    # generated from default
    Identifier    "Keyboard0"
    Driver        "kbd"

Section "Monitor"
    Identifier    "Monitor0"
    VendorName    "Unknown"
    ModelName      "Unknown"
    HorizSync      15.0 - 75.0
    VertRefresh    55.0 - 76.0
    ModeLine      "1920x1080" 148.50 1816 1904 1948 2096 1026 1030 1035 1071 +hsync +vsync
# # # For comparison purposes, here is my original ModeLine:
#  ModeLine      "1920x1080" 148.50 1920 2008 2052 2200 1080 1084 1089 1125 +hsync +vsync
    Option        "ExactModeTimingsDVI" "TRUE"
    Option        "DPMS"

Section "Device"
    Identifier    "Device0"
    Driver        "nvidia"
    VendorName    "NVIDIA Corporation"
    Option        "ModeValidation" "NoEdidModes"
    Option        "HWCursor" "false"
    Option        "DynamicTwinView" "false"

Section "Screen"
    Identifier    "Screen0"
    Device        "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    SubSection    "Display"
        Modes      "1920x1080"
        Depth      24

Section "Extensions"
    Option        "Composite" "Disable"

tscloud 05-06-10 10:04 AM

Re: Possible fix for overscan issues under Ubuntu (and possibly other Linux distros)
Excellent work. I am experiencing similar overscan problems and will try this tonight hopefully.

Question and Comment
Question: You mention removing:


Are you using, i.e. do these instructions pertain to, a driver not either 195 or 185? In other words, do I need to remove nvidia-*-modalias for driver versions that are not the one I am using or should I remove all nvidia-*-modalias? I am thinking I want to remove all since you want to remove nvidia-common as well.

Comment: I think the reference to:


wants to be changed to:


If this is not the case I apologize. The former points to essentially what amounts to a flame war and I don't think that's what you're after.

Fox60 06-08-10 03:33 AM

Re: Possible fix for overscan issues under Ubuntu (and possibly other Linux distros)
Just noticed the comment on this. Yes, the XBMC forums seem to have moveable links - I don't know if their database got corrupted or what, but the link I posted doesn't seem to go to the article that was originally there. Anyway, for anyone that finds this thread, I found a better approach for dealing with overscan in the Sharp LC-42SB45U TV in a blog post, although as far as I know the method shown there only works with that one particular model of Sharp TV:

An overscan fix for the Sharp LC-42SB45U television set when connected to a computer with a Linux operating system (Ubuntu, etc.)

EDIT: Fixed link to point to new location. If it moves again, just search for the title of the page or just "An overscan fix for the Sharp LC-42SB45U".

I have noticed that many HDTV's have the dot by dot option, but each one seems to have its own name for that feature, and apparently some (like the Sharp model I have) don't present the option in all circumstances. With the Sharp, the timing of the signal makes a difference, and that can be adjusted using a proper ModeLine but figuring out the correct one to use must be a real pain. TV manufacturers really need to do a better job of documenting this, and a good start would be standardizing on a specific name for the feature so you don't have to guess what it's going to be called every time you have to deal with a different TV set.

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

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