Para inverter as cores no monitor, chamo:
xcalib -invert -alter
O problema é que, na configuração do monitor duplo, ele inverte as cores apenas na primeira tela.
Não consigo usar os dispositivos Compitz para inversão de cores, pois minha configuração é
- Dois monitores girados (pivô)
A tela dupla quando ambos são Piovot não está funcionando com a composição no meu cartão.
Xorg parece apenas solução.
O xcalib é ótimo, pois eu posso mudar dependendo do aplicativo imediatamente.
Cany sugestões, soluções como inverter cores em ambas as telas com xcalib?
PS
-screen
parâmetro não funciona:
X Error of failed request: BadValue (integer parameter out of range for operation)
Major opcode of failed request: 130 (XFree86-VidModeExtension)
Minor opcode of failed request: 19 (XF86VidModeGetGammaRampSize)
Value in failed request: 0x17
Serial number of failed request: 10
Current serial number in output stream: 10
Aqui está a minha xrandr
configuração de tela:
~$ xrandr
Screen 0: minimum 320 x 200, current 2400 x 1920, maximum 3840 x 3840
DFP1 connected 1200x1920+1200+0 left (normal left inverted right x axis y axis) 518mm x 324mm
1920x1200 60.0*+
1680x1050 60.0 +
1440x900 59.9 +
1280x800 60.0 +
1920x1080 60.0 50.0 30.0 25.0 24.0
(...)
DFP2 connected 1200x1920+0+0 left (normal left inverted right x axis y axis) 518mm x 324mm
1920x1200 60.0*+
1920x1080 60.0 +
1776x1000 60.0 +
1680x1050 60.0 +
1440x900 59.9 +
1280x800 60.0 + 75.0
1152x648 60.0 +
1600x1200 60.0
1400x1050 60.0
1280x1024 75.0 60.0
(...)
CRT1 disconnected (normal left inverted right x axis y axis)
CRT2 disconnected (normal left inverted right x axis y axis)
Como você pode ver, eles são rotacionados - 1200x1920
configure em uma tela virtual com maximum 3840 x 3840
. Eu acho que é por isso que é como "uma" tela 2400x1920
dividida em ambas (portanto, o xcalib se aplica apenas à tela principal). Mas, é apenas minha hipótese, talvez a razão seja diferente.
fonte
Pode-se tentar mexer com valores gama negativos e valores de brilho <1 para gerar uma gama gama negativa em uma saída específica.
isso é suficiente para mim e funciona imediatamente, mas não leva em conta nenhuma curva gama existente para uma saída. pode valer uma chance. Saudações Konrad
fonte
Tentar
xcalib -d :0 -invert -alter
A opção -d refere-se ao dispositivo e funcionou para mim quando -s não
fonte
-d :1
->Can't open display :1
etc.-d
refere-se à tela, não ao dispositivo. BTW, encontrei o mesmo problema e gostaria de saber a solução.Eu estava enfrentando o mesmo problema que o OP. Eu fiz um
Em seguida, instalei a única dependência observada no README, construí e instalei, e funciona muito bem. Problema resolvido.
Dei uma olhada no código fonte. A maior parte do trabalho é feita com uma chamada para a biblioteca xcb para definir a rampa gama. O código basicamente percorre o número de telas anexadas, cria uma rampa gama, inverte-a e define-a nessa tela. Muito simples, e não há outro programa X que faça isso, que eu saiba.
fonte
A página de manual indica que existe um parâmetro
-screen
(curto-s
). Isso deve resolver! Basta usar doisxcalib
comandos com-s
parâmetros diferentes .fonte
xrandr
saída diz que você tem o Xorg configurado como uma tela (apenasScreen 0
na parte superior).xcalib
interage diretamente com o servidor Xorg, para que ele não possa ver mais telas. Eu acredito que você precisa configurar váriasScreen
seções no seu/etc/X11/xorg.conf
para que isso funcione corretamente.Option "Rotate"
no seuxorg.conf
? Ou você precisa girar as telas depois que o X é iniciado?Eu encontrei esse conselho:
http://ubuntuforums.org/showthread.php?t=1482995
de usar os "Efeitos da área de trabalho" (eu os tenho no KDE), existe um que permite inverter cores de todas as telas ou apenas de janelas seletivas.
Como no meu hardware atual, o Compiz ou algo semelhante funciona bem, posso tirar proveito desses "Efeitos da área de trabalho". No entanto, gostaria de saber como usá-lo em outros gerenciadores de janelas (como o fluxbox) ... mas esse é um tópico para uma pergunta separada :). (PS depois de examinar algumas fontes desse efeito: kwin /.../ invert.cpp , parece que ele está apenas adicionando ganchos para o processamento de janelas renderizadas em buffers separados, como é feito nos gerenciadores de janelas de composição , portanto, talvez apenas o KWin seja necessário, com capacidade de rodar com outras coisas além do KDE - para ser experimentado;))
fonte