You are not logged in.

#1 2015-01-19 00:51:51

LucetLux
Member
Registered: 2013-08-16
Posts: 165

Xrandr "scaling mode" not working as expected.

I've been trying to enable GPU scaling in the Opensource driver, this is in order to get proper aspect rations in my display, when running older games which usually have a 4:3 aspect ratio I get an image that it stretched to the whole screen, I don't want that, and since my monitor has limited scaling options (it has none), I want the GPU to put black bars on each side of a 4:3 image, like you can easily do in catalyst by, well, enabling GPU scaling, all that I could find points to using xrandr to get the same effect with the oss driver, in my particular case:

xrandr --output DVI-0 --set "scaling mode" "Full aspect"

Should do the job, always outputting and image in my native resolution (1366x768), while any lower resolution image is scaled to fit the screen, but only expanding the diagonal without distorting the image.
The thing is, in theory this should just work, yet it doesn't, when I run the aforementioned command, the scaling mode in randr is effectively changed:

$ xrandr --prop                                         
Screen 0: minimum 320 x 200, current 1366 x 768, maximum 8192 x 8192
{snip}
DVI-0 connected primary 1366x768+0+0 (normal left inverted right x axis y axis) 410mm x 230mm
        EDID: 
                00ffffffffffff0004726a00c7494083
                2212010368291778ca3d85a6564a9a24
                125054bf6f80714f8140818081c08100
                010101010101662156aa51001e30468f
                33009ae61000001e000000fd00374c1f
                500e000a202020202020000000fc0058
                313833480a0a0a0a0a0a0a0a000000ff
                004c454c3044303031383530300a00da
        load detection: 1 
                range: (0, 1)
        audio: auto 
                supported: off, on, auto
        scaling mode: Full aspect
                supported: None, Full, Center, Full aspect
        dither: off 
                supported: off, on
        underscan vborder: 0 
                range: (0, 128)
        underscan hborder: 0 
                range: (0, 128)
        underscan: off 
                supported: off, on, auto
        coherent: 1 
                range: (0, 1)
   1366x768      59.79*+
   1280x1024     75.02    60.02  
   1280x960      60.00  
   1280x800      59.81  
   1152x864      75.00  
   1280x720      59.97  
   1024x768      75.08    70.07    60.00  
   832x624       74.55  
   800x600       75.00    60.32    56.25  
   640x480       75.00    72.81    66.67    60.00  
   720x400       70.08  
{snip}

But even though it is set as expected, it seems that xrandr doesn't respect this, if I set the resolution with "xrandr --output DVI-0 --mode 1024x768" or "xrandr -s 1024x768" as an example, the raw 1024x768 image is sent to my screen instead of the 1366x768 one with black bars applied to the sides.
The same thing happens with any other scaling mode, be it "Center", "Full", or "Full aspect", it always acts as if it were set to "none".

I don't know why this isn't doing what it's meant to be doing, maybe I'm missing something, any information you can provide would be appreciated as always.
Thanks in advance.

Last edited by LucetLux (2015-01-19 00:54:25)

Offline

Board footer

Powered by FluxBB