Overscanning picture problem using HDMI with Intel Graphics

Solution 1:

Okay, if you haven't already tried these, check it out

xrandr --output HDMI-1 --set underscan on
xrandr --output HDMI-1 --set "underscan hborder" 40 --set "underscan vborder" 25

Another one I came across was this:

xrandr --output HDMI1 --transform 1.05,0,-35,0,1.05,-19,0,0,1

Solution 2:

I ran into this issue and used a combination of shrinking the framebuffer and then realigning the top left corner. The other answers depended on specific features provided by the display which some older displays don't have. (like mine)

xrandr --output HDMI2 --fb 1240x700 --transform 1,0,-20,0,1,-10,0,0,1

So, to read this, my TV overscans the picture by 20 pixels on the sides and 10 pixels on the top and bottom. So "shrinking" the picture, but not the resolution, by 40 width and 20 height, then realigning the top left corner did the trick for me.

You'll probably have to play around with the numbers since it seems different manufacturers' overscan varies in pixel loss. My TV seems to overscan less than many of the examples I found googling the subject.

Also, when playing with the numbers, doing a --transform none resets any change you make back... which might help.

Solution 3:

I struggled with this for a while until I found this blog post.

Basically, check the properties on your display using:

xrandr --prop

I didn't have the underscan options some people have mentioned, but what I did have was the 'force-dvi' property under 'audio'.

xrandr --output HDMI-2 --set audio force-dvi --mode 1920x1080

This worked perfectly, and disabled the overscan. One slight downside - this fix stops audio from coming through your HDMI cable, but I use external speakers so not really a problem.

Solution 4:

/etc/rc.local:

intel_panel_fitter -p A -x 1200 -y 670

~/.xprofile:

xrandr --output HDMI1 --transform 1.0,0,+1,0,1.0,+2,0,0,1

Solution 5:

The original answer xrandr --output HDMI-1 --set underscan on works!

It might not work on the first try if you just copy and paste this. The reason is that you might not be on HDMI-1 on your system. I tried this and I got error of failed request bad output (invalid parameter). I typed xrandr by itself and it gave me a bunch of display data and I noticed my device is HDMI-0. I then typed the command as xrandr --output HDMI-0 --set underscan on and whoop there it was fitting perfectly. I hope this helps someone.