현재 모니터 1개와 PC2개를 운용하며 다이소에서 3000원인가 분배기를 구매했지만......
원인모를 모니터 성능저하로 DP선을 추가 구매하여
모니터 DP - 1번 PC
모니터 HDMI - 2번PC 를 연결하였다.
근데 한성컴퓨터 ultron 3298C 는 아주아주아주 좋지만
외부입력 전환하는게 너무너무너무귀찮다.
▽ ▽ M
▽ △ M
이 세개 누르는게 너무 귀찮습니다 너무너무
심지어 버튼이 너무 잘되어있어서 우리 중고등학교 때 투표할때 찍는
그 모나미 검은색 빼버린거로 손을 찍는듯한 느낌도 듦
그래서 오늘 오후 구글링 하고 대학원 다녀온뒤로 1시간 정도 코드 두들긴 결과
간단히 파이썬 20줄로 외부입력을 손쉽게 변경하는 코드를 작성하였다
정상작동 하는것을 동영상으로 찍어서올리고싶은데
얼른작성하고 밥먹고 자야하는 관계로 코드 전문 공개!
from monitorcontrol import get_monitors
def Set_input_Source(source):
for monitor in get_monitors():
with monitor:
monitor.set_input_source(source)
while(True):
print("변경할 InputSource를 입력하세요 \nDP : 7, HDMI : 5")
source_num = input()
if(source_num.isdecimal()):
source_num = int(source_num)
if((source_num == 5) or (source_num == 7)):
Set_input_Source(source_num)
else:
print("존재하지 않는 InputSource입니다.")
else:
print("숫자만 입력해주세요.")
근데 문제점이 발견되었는데 실제 모니터 외부입력별 할당된 값과 monitorcontrol에서 지원하는 값이 달랐음.
>>> 모니터 VCP 정보의 DP 할당 값
<InputSource.DP1: 15>
>>> 실제 모니터 DP에 할당 된 값
<InputSource.SVIDEO1: 7>
>>> 모니터 VCP 정보의 HDMI 할당 값
<InputSource.HDMI1: 17>
>>> 실제 모니터 HDMI에 할당 된 값
<InputSource.COMPOSITE1: 5>
그래애서 본체 하나에 dp와 hdmi를 바꿔가며 찾은결과
내 모니터는 DP는 7번, HDMI는 5번이라는 것을 알아냄.
실제 모니터 할당값 찾는법
from monitorcontrol import get_monitors
def get_real_source():
for monitor in get_monitors():
with monitor:
return monitor.get_input_source()
//dp로 연결한 뒤
dp = get_real_source()
//hdmi 연결한뒤
hdmi = get_real_source()
print(dp)
>>> <InputSource.SVIDEO1: 7>
print(hdmi)
>>> <InputSource.COMPOSITE1: 5>
구글링 해보니
제조사마다 다르고
같은 제조사 안에서도 모니터마다 다르다고 하니까 연결할 모니터 직접 꽂아보고 하는것이 좋을듯.
그래서 맨위 코드 20줄짜리 monitor_changer.py로 작성한뒤
pc2대에 모두 복붙해주고 옮기고 싶을때마다 5 7 눌러가며 바로 모니터를 전환할수있게 되었음!


2PC, 1모니터 mouse without borders와 파이썬으로 걍 세상 편해짐
'Python' 카테고리의 다른 글
[Python] 알고리즘의 종류, 종류별 예제 _ 정렬 (4/7) (0) | 2024.09.05 |
---|---|
[Python] 알고리즘의 종류, 종류별 예제 _ DFS/BFS (3/7) (0) | 2024.09.04 |
[Python] 알고리즘의 종류, 종류별 예제 _ 구현 (2/7) (0) | 2024.09.03 |
[Python] 알고리즘의 종류, 종류별 예제 _ 그리디 (1/7) (1) | 2024.09.02 |
[Python] Itertools 총정리, 예문 (2) | 2024.08.28 |