답변:
이 VLC 확장 기능은 화면을 한 번 클릭하여 일시 중지 / 재생합니다. 버전 2.1, 2.2 및 3.0에서 작동합니다.
원하는대로 정확하게 루아 확장을 만들었습니다. github 또는 videolan addons 페이지 에서 프로젝트를 확인 하십시오
vlc.var.add_callback
방법은 루아 API에서 제거되었습니다. 루아 확장 기능을 키에 바인딩하는 다른 방법을 알지 못합니다.
지시 된 바와 같이, 왼쪽 단추를 클릭 할 수있는 재미 대안은 마우스 제스처 것 여기 :
- enable mouse gestures in VLC
- select left mouse button
- left-click & a quick left-right (or right-left) movement to play/pause.
결과는 실제입니다 ...하지만 다른 두 가지 유사한 제스처를 피해야합니다.
Move left: Navigate 10 seconds backward
Move right: Navigate 10 seconds forward
세부 사항 :
도구> 환경 설정 [CTRL + P]로 이동하십시오.
설정 표시 아래의 모두를 클릭 하여 고급 설정 으로 이동하십시오 .
인터페이스> 제어 인터페이스로 이동하십시오 .
마우스 동작 제어 인터페이스 옵션을 확인하십시오.
추가로 인터페이스> 제어 인터페이스> 제스처로 이동하십시오.
재생 또는 일시 정지를 전환하려면 : 선택한 마우스 버튼을 클릭하고 왼쪽 및 오른쪽으로 이동하십시오 (오른쪽 및 왼쪽으로 이동해도 작동 함)
그러나 마우스 제스처는 사용자 정의 할 수 없으며 필요하지 않은 일부 제스처는 비활성화 할 수 없습니다. 따라서 다른 제스처를 피하고 아래로 이동 한 다음 왼쪽으로 이동하여 플레이어를 종료 시키는 다른 동작을 위아래로 피 하십시오
참고로 모든 제스처 목록 :
Move left: Navigate 10 seconds backward
Move right: Navigate 10 seconds forward
Move up: Increase volume
Move down: Decrease volume
Move left and then right: Toggle play or pause (Also works if you move right and then left)
Move up and then down: Mute volume (Also works if you move down and then up)
Move left and then up: Slow down playing speed
Move right and then up: Increase playing speed
Move left and then down: Play previous track of playlist
Move right and then down: Play next track in playlist
Move up and then right: Switch the audio track
Move down and then right: Switch the subtitle track
Move up and then left: Enables full screen
Move down and then left: Exit VLC media player
분명히 질문은 여전히 유효합니다.
내 해결 방법 - 간단하고 작업이 -를 사용하여 하나 xdotool
하고 xinput
.
다음 myVlc
과 같이 스크립트 (또는 별명 vlc) 를 작성해야합니다 .
#!/bin/bash
xinput set-button-map DEV_ID 1 2 10 4 5 6 7 8 9
vlc "$@"
xinput set-button-map DEV_ID 1 2 3 4 5 6 7 8 9
right_mouse_button을로 바인드 Button10
합니다. 중간 버튼의 경우 1 10 3 4…를 사용하십시오. 로 다시 확인하십시오 xev
.
DEV_ID를 마우스 ID로 바꿔야합니다. 참조하십시오 xinput
.
또는 당신도 grep
그것을 할 수 있습니다 :
xinput | grep -i mouse -m 1 | sed -E 's/.*id=([0-9]*).*/\1/'
따라서 스크립트는 다음과 같습니다.
#!/bin/bash
xinput set-button-map $(xinput | grep -i mouse -m 1 | sed -E 's/.*id=([0-9]*).*/\1/') 1 2 10 4 5 6 7 8 9
vlc "$@"
xinput set-button-map $(xinput | grep -i mouse -m 1 | sed -E 's/.*id=([0-9]*).*/\1/') 1 2 3 4 5 6 7 8 9
그런 다음 WM의 Button10을로 바인드하십시오 space
. Openbox의 경우 다음과 같습니다 (rc.xml).
<context name="Client">
<mousebind button="Button10" action="Click">
<action name="Execute">
<command>xdotool key space</command>
</action>
</mousebind>
</context>
실제로 RMB 또는 MMB를 공간에 직접 리 바인드 할 수 있지만 기본 RMB / MMB 동작과 충돌합니다. 그리고 보통 우리는 그것을 원하지 않습니다.
myVlc
RMB / MMB 사용 은 vlc를 실행하는 동안에 만 리바운드됩니다.
이 솔루션은 VLC 3을 사용하여 Ubuntu 18.04에서 개발하고 테스트했습니다.
마우스 버튼으로 VLC 플레이어를 일시 정지 / 재생할 수 있도록 스크립트 파일을 만들었습니다. 관련 마우스 버튼을 클릭 할 때마다 실행됩니다. 스크립트는 활성 창 제목에 "VLC 미디어 플레이어"가 포함되어 있는지 확인합니다. true 인 경우 "space"키를 보냅니다.
스크립트 파일 내용 :
wintitle=$(xdotool getwindowfocus getwindowname);
p=" - VLC media player$" ;
if [[ $wintitle =~ $p ]]; then
xte 'key space'
fi
마우스 이벤트를 포착하고 구성하려면 xbindkeys를 설치해야합니다. ~ / .xbindkeysrc 파일을 편집하고 다음과 같은 코드를 추가했습니다.
"bash /home/user/test/control_by_mouse.sh"
b:8 #mouse back button
그 후 다음 명령을 실행해야합니다
xbindkeys
따라서 마우스에서 뒤로 버튼을 누를 때마다 지정된 스크립트 파일이 실행됩니다.
마우스 버튼 번호를 얻으려면 :
xev
내 우분투 시스템 에서이 작업에 필요한 다음 패키지가 필요합니다.
sudo apt install xbindkeys xautomation xev xdotool
이전에는 https://mim.mbirgin.com/?c=posts&id=105 에이 메모를 게시했습니다.
글쎄, 내 사이트에서 Test VLC Player 가 제대로 작동하고 있습니다. 당신은 VLC 미디어 플레이어를 업데이트해야합니다