VLC e tecla de atalho automático

VLC e tecla de atalho automático

Alguém teve sucesso em fazer o Autohotkey funcionar com o VLC?

^numpad6::
DetectHiddenWindows , On
ControlSend , ahk_parent, !{right}, VLC Media Player
DetectHiddenWindows , Off
return

^numpad4::    
DetectHiddenWindows , On
ControlSend , ahk_parent, !{left}, VLC Media Player ahk_class QWidget
DetectHiddenWindows , Off  
return

^#space:: 
DetectHiddenWindows , On
ControlSend , ahk_parent, {space}, ahk_class QWidget
DetectHiddenWindows , Off
return

Usei estes (um método diferente para cada um) e eles não estão funcionando. Os scripts funcionam com o Itunes, aliás.

Responder1

Tente usar a biblioteca de interface HTTP do VLC, espero que possa ajudá-lo... Esta é uma biblioteca de comandos de interface http para o VLC Media Player.

Aqui estão algumas vantagens de usar VLCHTTP e VLC Media Player:

  • O VLC NÃO precisa ser a janela ativa para usar funções HTTP e, portanto, não interfere em outras janelas.

  • As funções HTTP podem ser usadas pela Internet, redes locais ou em um computador.

  • O VLC pode reproduzir tela inteira em qualquer monitor, não apenas no monitor padrão.

  • O VLC abrirá a tela inteira em qualquer monitor em que o link de mídia foi clicado.

  • O VLC não sai da tela inteira quando perde o foco. Reproduza um filme em um monitor e trabalhe no outro.

Exemplo:

Gui, Add, Button, gButton1, Play/Pause
Gui, Add, Button, gButton2, Volume Up
Gui, Show
Return

Button1:
VLCHTTP_Pause() ; Use pause instead of play to toggle play/pause mode.
Return

Button2:
VLCHTTP_VolumeUp(1) ; Turns the volume up 1 step.
Return

Mais informações podem ser encontradas emesse link.

Responder2

Seu comando ControlSend provavelmente deve ter parâmetros diferentes (leia o arquivo de ajuda para obter mais informações). Isso funciona no meu PC (Win7 32):

^#Space::
SetTitleMatchMode, 2
ControlSend, , {space}, VLC media player
Return

Acontece que você não precisa de nenhum ID de controle: o VLC aceitará espaço em qualquer controle (ou pelo menos no controle superior). O problema com o seu código foi, eu acho, que você usou a classe da janela e o texto do título para identificar a janela: você deveria usar apenas um ou outro, não ambos.

Eu sempre defino o modo de correspondência de título como 2 (= as palavras podem estar em qualquer lugar do título) porque isso captura a maioria dos títulos e funciona de forma mais intuitiva (estou com preguiça de testar se funciona com um modo de correspondência diferente).

Responder3

Você também pode fazer isso com IfWinExist para que você só precise especificar o nome pai do VLC uma vez. Aqui está o código que eu uso.

#IfWinExist ahk_class QWidget
Media_Next::
    ControlSend, ahk_parent, n  ; Next
    return

Media_Prev::
    ControlSend, ahk_parent, p  ; Previous
    return

Media_Play_Pause::
    ControlSend, ahk_parent, {Space}  ; Play/Pause
    return

Media_Stop::
    ControlSend, ahk_parent, s  ; Stop
    return

#IfWinExist

informação relacionada