본문 바로가기
개발/Python

특정 키보드 입력과 동시에 다른 키 입력하는 기능(바인딩)

by 비트-바이트 2024. 4. 22.
반응형

출처 : Madmapper 사이트

 

Madmapper가 설치된 환경에서 원격으로 영상을 컨트롤하고 싶다는 클라이언트의 요청이 있었다.

보통 Scene/Cue로 플레이리스트를 관리할 수 있긴하지만, 단축키 설정으로 키보드로 컨트롤이 가능하긴 하다.

 

전시현장에서 99% 납품되는 로지텍 k400 - 리시버 송수신거리도 안정적이고, 무엇보다 트랙패드 내장이라 관리가 편하다.(현장 담당자는 힘듬) / 단점:fn키 사용

 

이 키보드를 들고 다니면서 흡사 멜로디언 들고 다니는 어린이 마냥 돌아다녀야 한다...

한손에 들거나..바닥에 앉아 어두운 전시장에서 희미한 불빛을 찾아 키를 누르는...

 

 

그러다가 생각난 게

"프리젠터"

R500 사용해본 프리젠터 중에 제일 깔끔함(디자인)

 

보통은 프리젠터의 좌/우 키는 [좌 방향키]/[우 방향키] or [페이지 업]/[페이지 다운] 둘 중에 하나이다.

 

R500은 방향키로 적용되어 있는 모델이었다.

 

Madmapper에서 단축키 설정하면 방향키는 등록이 안된다........

그래서 야매로 [좌]/[우] 키를 눌렀을 때, OS 백그라운드에서 다른 키가 눌리도록 하는 작은 프로그램 하나 만들어주었다.

 

import keyboard

def send_left():
    keyboard.write('1')
def send_right():
    keyboard.write('2')

keyboard.add_hotkey('left', send_left)
keyboard.add_hotkey('right', send_right)

# 스크립트가 바로 종료되지 않도록 루프를 돌며 대기
while True:
    keyboard.wait('esc')  # esc 키를 누르면 프로그램이 종료되도록 설정

 

테스트 결과 : 왼쪽키 누르면 1도 눌리고, 오른쪽 키 누르면 2도 눌림.

 

pyinstaller --onefile --noconsole keycut.py

 

exe 파일로 추출 후 사용하였고, Madmapper의 Cue와 키보드 1, 2를 매칭해 준 뒤에 원하는 영상을 재생할 수 있도록 꼼수를 부렸다.

 

 

하루뒤...

 

역시나 문제는 발생한다....

 

현장 근처 알파문구에서 

프리젠터 아무거나 샀는데...

 

얘....는 키가  페이지 다운/업.....

 

안 먹어.....

 

는... 그냥 Madmapper 키보드 단축키를 [페이지 다운/업]으로 매핑하고 끝.

반응형