gamescope icon indicating copy to clipboard operation
gamescope copied to clipboard

Modifying an already running Gamescope instance to change refresh rate/resolution?

Open LATINO-BICEPS opened this issue 7 months ago • 4 comments

The docs covers how to create a Gamescope instance but I am wondering if it is possible to change it once it's already running. I only briefly experimented with 1 idea I could think of by trying to force a new resolution with xrandr but no dice.

$ gamescope -w 896 -h 560 -W 1280 -H 800 -r 40 -U -f

After adding a custom 720p resolution:

$ DISPLAY=:1 xrandr -q
Screen 0: minimum 16 x 16, current 896 x 560, maximum 32767 x 32767
XWAYLAND0 connected 896x560+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
   896x560       39.92*+
   1280x720_60.00  59.86
$ xrandr --output XWAYLAND0 --mode "1280x720_60.00"
X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  139 (RANDR)
  Minor opcode of failed request:  21 (RRSetCrtcConfig)
  Value in failed request:  0x0
  Serial number of failed request:  22
  Current serial number in output stream:  22

Am I going about this the wrong way about this or is this simply not within the featureset of Gamescope? Cheers.

LATINO-BICEPS avatar Nov 14 '23 21:11 LATINO-BICEPS

xrandr is not supported. We have a method of changing the resolution on the fly with some mode file and config, but nothing else atm.

We should add this to the gamescope control protocol and actually get some helper app for that.

Joshua-Ashton avatar Nov 15 '23 07:11 Joshua-Ashton

@ruineka maybe you can elaborate on your work on -plus? (can that be upstreamed?)

BoukeHaarsma23 avatar Nov 15 '23 08:11 BoukeHaarsma23

We have a method of changing the resolution on the fly with some mode file and config, but nothing else atm.

If possible, could you give an idea of how your current implementation works?

I admit I am unfamiliar with how all the moving parts come together - I apologize if it's more complex than simply modifying config files or environment variables.

We should add this to the gamescope control protocol and actually get some helper app for that.

That would be great :) Definitely looking forward to it.

LATINO-BICEPS avatar Nov 15 '23 16:11 LATINO-BICEPS

Hi @Joshua-Ashton are you able to provide a simple example of changing the resolution on the command line. I'm having a hard time reversing the control protocol currently.

anthr76 avatar Mar 09 '24 20:03 anthr76