dbus 및 mpris를 사용하여 VLC 전체 화면 전환

dbus 및 mpris를 사용하여 VLC 전체 화면 전환

나는 멋진 wm을 사용하여 키보드 단축키를 작성하고 있습니다. 현재 나는 미디어 플레이어를 제어하기 위해 qdbus를 사용하고 있으며 vlc의 전체 화면을 제외하고 모두 작동합니다. 내가 사용하는 명령은 다음과 같습니다

qdbus org.mpris.MediaPlayer2.vlc /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Fullscreen

이는 전체 화면 상태에 대한 부울 값을 가져오지만 이를 설정할 수도 있어야 합니다. 제가 수행한 것은 위 명령 true/false(및 그 변형)이지만 항상 false.

CanSetFullscreen귀중한true

답변1

Awesome에는 가짜 키 이벤트를 보내는 방법이 있습니다. 이는 Awesome wm에 구성된 키와 일치하도록 vlc에서 사용하는 표준 키 누름을 재정의하는 데 사용할 수 있습니다. ~/.config/awesome/rc.lua에서 전체 화면 키를 다음과 같이 변경합니다.

enter code hereawful.key({ modkey,           }, "f",      function (c) 
    if awful.rules.match(c, {class = 'Vlc'}) then
        root.fake_input('key_release','f')
        root.fake_input('key_press','f')
        root.fake_input('key_release','f')
    else
        c.fullscreen = not c.fullscreen  
    end
end),

다른 프로그램에서 이 작업을 수행하려면 먼저 명령을 사용하여 얻을 수 있는 해당 클래스를 알아야 합니다 xprop | grep WM_CLASS.

 WM_CLASS(STRING) = "vlc", "Vlc"
                     |      |
                     |      |--- class
                     |
                     |--- instance

답변2

CanSetFullscreen은 읽기 전용 매개변수입니다. 읽기/쓰기 항목인 Fullscreen을 확인하세요. D-Bus 탐색의 경우 Ubuntu의 D-Feet이 상당히 좋습니다.

관련 정보