[unix] 듀얼 스크린 / 듀얼 모니터 설정에서 색상 반전?

모니터에서 색상을 반전시키기 위해 다음을 호출합니다.

xcalib -invert -alter

문제는 듀얼 모니터 설정에서 첫 번째 화면에서만 색상이 반전된다는 것입니다.

색상 반전에 Compitz 가제트를 사용할 수 없습니다.

  • 회전식 (피벗) 모니터 2 개

둘 다 Piovot 인 경우 이중 화면이 카드에서 작곡 작업을 수행하지 않습니다.

Xorg는 해결책 일뿐입니다.

xcalib은 앱에 따라 즉시 전환 할 수있는 큰 원인입니다.

xcalib을 사용하여 두 화면의 색상을 반전시키는 방법은 무엇입니까?

추신

-screen 매개 변수가 작동하지 않습니다.

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

xrandr화면 구성 은 다음과 같습니다 .

~$ 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)

보시 1200x1920다시피을 사용하여 하나의 가상 화면에서 회전 설정됩니다 maximum 3840 x 3840. 나는 그것이 하나의 화면과 같이 2400x1920두 화면으로 나뉘어 진 이유라고 생각합니다. 따라서 xcalib은 기본 화면 에만 적용됩니다. 그러나 그것은 단지 내 가설 일 뿐이며 아마도 이유가 다를 수도 있습니다.



답변

다음은 원하는 것을 수행하는 작은 유틸리티 프로그램입니다.

https://github.com/zoltanp/xrandr-invert-colors


답변

특정 출력에서 ​​음의 감마 램프를 생성하기 위해 음의 감마값 및 밝기 값 <1로 조정을 시도 할 수 있습니다.

xrandr --output [output] --gamma -0.5:-0.5:-0.5 --brightness 0.1

이것은 적어도 나에게 충분하고 즉시 작동하지만 출력에 대한 기존 감마 커브는 고려하지 않습니다. 기회가 될 수도 있습니다. 인사말 콘라드


답변

시험 xcalib -d :0 -invert -alter

-d 옵션은 장치를 나타내며 -s가 그렇지 않은 경우 나를 위해 일했습니다.


답변

OP와 동일한 문제가 발생했습니다. 나는했다

git clone https://github.com/zoltanp/xrandr-invert-colors.git

그런 다음 README에 명시된 하나의 종속성을 설치하고 설치했으며 훌륭하게 작동했습니다. 문제 해결됨.

소스 코드를 살펴 보았습니다. 대부분의 작업은 xcb 라이브러리를 호출하여 감마 램프를 설정하여 수행됩니다. 이 코드는 기본적으로 연결된 화면 수를 반복하고 감마 램프를 생성하여 반전시킨 후 해당 화면에 설정합니다. 매우 간단하며 내 지식으로는이 작업을 수행하는 다른 X 프로그램이 없습니다.


답변

맨 페이지는 -screen(short -s) 매개 변수 가 있음을 나타냅니다 . 그렇게해야합니다! 매개 변수 xcalib가 다른 두 개의 명령 만 사용하십시오 -s.


답변

그 조언을 찾았습니다.

http://ubuntuforums.org/showthread.php?t=1482995

“데스크톱 효과”(KDE에서 사용함)를 사용하면 모든 화면의 색상을 반전 시키거나 선택적인 창만 표시 할 수 있습니다.

현재 하드웨어 Compiz 또는 이와 유사한 기능이 제대로 작동하므로 이러한 “데스크탑 효과”를 활용할 수 있습니다. 그러나 플럭스 박스와 같은 다른 창 관리자에서 어떻게 사용하는지 궁금하지만 별도의 질문에 대한 주제입니다. :). (PS는 그 효과의 근원을 살펴본 후 : kwin /…/ invert.cpp 그것은 창 관리자구성 할 때 별도의 버퍼로 렌더링 된 창을 처리하기위한 후크를 추가하는 것처럼 보입니다 . 따라서 KWin 만 필요할 수 있습니다. KDE 이외의 다른 것들과 함께 실행할 수있는 능력-실험);))


답변