Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can't specify individual monitor #23

Closed
mattspitz opened this issue Jan 16, 2014 · 12 comments
Closed

Can't specify individual monitor #23

mattspitz opened this issue Jan 16, 2014 · 12 comments
Labels

Comments

@mattspitz
Copy link

Hi! Sorry if this is an inappropriate place to ask this, but I can't seem to target a particular monitor when running Redshift.

Here's my setup:

  • HDMI-1 (in xrandr) is my main monitor. I'd like to run redshift on it.
  • DVI-I-1 (in xrandr) is my secondary monitor used for media. I'd like not to run redshift on this one, since it's for watching movies.

They're set up on the same X screen, :0. I use awesome window manager to treat the monitors as separate screens.

I can interact with the monitors using xrandr just fine. I use xrandr to set up their display resolutions and relative positions with no problem.

However, running gtk-redshift (v1.7), I can't seem to get the shift on just HDMI-1.

All of these commands turn on redshift on both monitors:

  • $ gtk-redshift -l 40.6:-74 -m randr:screen=HDMI-1
  • $ gtk-redshift -l 40.6:-74 -m randr:screen=DVI-I-1
  • $ gtk-redshift -l 40.6:-74 -m randr:screen=0

And, as one might expect, this is the output of -m randr:screen=1:

$ gtk-redshift -l 40.6:-74 -m randr:screen=1
Screen 1 could not be found.
Failed to start adjustment method randr.

Must I set up a separate X screen to run Redshift only on HDMI-1? What am I missing?

Thanks for a wonderful piece of software!

@jonls
Copy link
Owner

jonls commented Jan 17, 2014

I have marked this as a bug since the example where you set randr:screen=0 or randr:screen=1 should work as far as I can tell given your setup. What output do you get when you run xrandr? Does it mention both Screen 0 and Screen 1?

@mattspitz
Copy link
Author

It doesn't. It just mentions Screen 0, which I think is the single X screen that I have configured.

$ xrandr
Screen 0: minimum 320 x 200, current 3840 x 1080, maximum 8192 x 8192
DVI-I-1 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 597mm x 336mm
   1920x1080      60.0*+
   1600x1200      60.0  
   1680x1050      59.9  
   1400x1050      59.9  
   1280x1024      75.0     60.0  
   1440x900       59.9  
   1280x960       60.0  
   1152x864       75.0  
   1024x768       75.1     70.1     60.0  
   832x624        74.6  
   800x600        72.2     75.0     60.3     56.2  
   640x480        75.0     72.8     66.7     60.0  
   720x400        70.1  
HDMI-1 connected primary 1920x1080+1920+0 (normal left inverted right x axis y axis) 597mm x 336mm
   1920x1080      60.0*+   50.0     59.9  
   1920x1080i     60.1     50.0     60.0  
   1600x1200      60.0  
   1680x1050      59.9  
   1400x1050      59.9  
   1280x1024      75.0     60.0  
   1440x900       59.9  
   1280x960       60.0  
   1152x864       75.0  
   1280x720       60.0     50.0     59.9  
   1440x576i      50.1  
   1024x768       75.1     70.1     60.0  
   1440x480i      60.1     60.1  
   832x624        74.6  
   800x600        72.2     75.0     60.3     56.2  
   720x576        50.0  
   720x480        60.0     59.9  
   640x480        75.0     72.8     66.7     60.0     59.9  
   720x400        70.1  

@jonls
Copy link
Owner

jonls commented Jan 18, 2014

Ok, so it seems that you have one screen that spans multiple outputs. I don't really have a multidisplay setup myself so I don't know if this is the normal way of configuring the screens. Currently Redshift works by screen so it will apply the effect on all outputs associated with a screen. It's quite likely that Redshift could be changed to work by output instead because it seems that gamma ramp correction is applied by output anyway, when using randr. So, to answer your question: No, with your current setup it seems that you have to enable Redshift on both outputs. Redshift would have to be updated to only apply corrections to one randr output.

@mattspitz
Copy link
Author

jonls, thanks for your reply! Perhaps some future traffic from Google will find this conversation as helpful as I have.

Thanks again for a great piece of software.

@pgainf
Copy link

pgainf commented Mar 28, 2015

Greetings!

I have a HDTV connected to my computer and I didn't want redshift to dim the TV.

After trying many settings I found the right way:

gtk-redshift -l 38.7:9.1 -t 5700:4700 -g 0.8 -o -m vidmode:screen=0

The ' -m vidmore:screen=0 ' did the trick.
Now only my monitor is dimmed and not the TV.

I'm using Linux Maya 13.

Cheers

@legonigel
Copy link

I want to update this for future reference, in case anyone else stumbles upon it as I have. When you have two outputs on one randr screen, you can now use -m randr:crtc=HDMI-1. You can replace HDMI-1 with whatever output you want to use.

@mattspitz
Copy link
Author

Everything is the best! Thank you so much! I've confirmed that it works perfectly for me!

@JeffreyPD7
Copy link

It worked for me using 0 for the first screen and 1 for the second "redshift -m randr:crtc=1 -O 5000"

@Dougga
Copy link

Dougga commented Sep 23, 2016

This is working fairly well for me. I'm using a configuration file and appreciate the intricate options.
I do have a question. I have an Nvidia video card with three monitors. I'd like to be able to set each monitor differently via the configuration file. Could I get a tip or two?

Here's my xrandr output...
xrandr
Screen 0: minimum 320 x 200, current 5520 x 1080, maximum 16384 x 16384
DVI-I-1 connected 1680x1050+0+0 (normal left inverted right x axis y axis) 474mm x 296mm
1680x1050 59.88_+
1280x1024 75.02 60.02
1280x960 60.00
1152x864 75.00
1024x768 75.08 70.07 60.00
832x624 74.55
800x600 72.19 75.00 60.32 56.25
640x480 75.00 72.81 66.67 60.00
720x400 70.08
DVI-D-1 connected primary 1920x1080+1680+0 (normal left inverted right x axis y axis) 476mm x 268mm
1920x1080 60.00_+
1600x1200 60.00
1680x1050 59.88
1400x1050 59.95
1600x900 60.00
1280x1024 75.02 60.02
1440x900 59.90
1280x960 60.00
1280x800 59.91
1152x864 75.00
1024x768 75.08 70.07 60.00
832x624 74.55
800x600 72.19 75.00 60.32 56.25
640x480 75.00 72.81 66.67 60.00
720x400 70.08
DP-1 disconnected (normal left inverted right x axis y axis)
DVI-I-1-2 connected 1920x1080+3600+0 476mm x 268mm
1920x1080 60.00*+
1600x1200 60.00
1680x1050 59.88
1400x1050 59.95
1600x900 60.00
1280x1024 75.02 60.02
1440x900 59.90
1280x960 60.00
1280x800 59.91
1152x864 75.00
1024x768 75.08 70.07 60.00
832x624 74.55
800x600 72.19 75.00 60.32 56.25
640x480 75.00 72.81 66.67 60.00
720x400 70.08

@mrinaldhillon
Copy link

mrinaldhillon commented Nov 12, 2017

I am using i3. Screen 0 with 3 monitors i.e. LVDS, DisplayPort-1, DVI-I-1-1. Redshift only affects LVDS and DisplayPort, leaving DVI-I-1-1 as is. Also randr:crtc=output affects only LVDS does not matter whichever output I specify.

$ xrandr
Screen 0: minimum 320 x 200, current 4984 x 1680, maximum 16384 x 16384
LVDS connected primary 1920x1200+3064+0 (normal left inverted right x axis y axis) 367mm x 230mm
1920x1200 59.95*+
1920x1080 60.00
1600x1200 59.95
1680x1050 60.00
1400x1050 60.00
1280x1024 59.95
1440x900 59.99
1280x960 59.99
1280x854 59.95
1280x800 59.96
1280x720 59.97
1152x768 59.95
1024x768 59.95
800x600 59.96
848x480 59.94
720x480 59.94
640x480 59.94
DisplayPort-0 disconnected (normal left inverted right x axis y axis)
DisplayPort-1 connected 1920x1080+1096+0 (normal left inverted right x axis y axis) 510mm x 287mm
1920x1080 60.00*+
1280x1024 75.02 60.02
1152x864 75.00
1024x768 75.03 60.00
800x600 75.00 60.32
640x480 75.00 59.94
720x400 70.08
DisplayPort-2 disconnected (normal left inverted right x axis y axis)
DVI-I-1-1 connected 1050x1680+0+0 left (normal left inverted right x axis y axis) 433mm x 270mm
1680x1050 59.95*+
1280x1024 75.02 60.02
1440x900 59.90
1280x800 59.91
1152x864 75.00
1280x720 60.00
1024x768 75.03 70.07 60.00
832x624 74.55
800x600 72.19 75.00 60.32 56.25
848x480 60.00
640x480 75.00 72.81 66.67 59.94
720x400 70.08

@OdinVex
Copy link

OdinVex commented Dec 26, 2020

The ability to specify individual monitors at any time via menu option would be nice. Sometimes I want my second or third monitor's to shift, sometimes I don't (code on middle monitor and want shift, movie on either side and may not want shift, reference resources on either side and may not want shift)... Configuring via menu options would allow changing shift on the fly.

@plungepool
Copy link

The ability to specify individual monitors at any time via menu option would be nice. Sometimes I want my second or third monitor's to shift, sometimes I don't (code on middle monitor and want shift, movie on either side and may not want shift, reference resources on either side and may not want shift)... Configuring via menu options would allow changing shift on the fly.

Agree with this, also would be happy if I could even just set this in the config file! One of my monitors is a TV that looks very bad with the temperature adjustments, on Windows with f.lux I'm able to just disable it on that monitor only very easily, but using a command like redshift -m randr:crtc=2 -0 25000 in the terminal for redshift something happens for a second but the change doesn't seem to want to stick.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

9 participants