Como posso usar a versão CLI do VLC no OSX?
Depois de instalar o VLC no OSX, ele funciona bem no processo normal da GUI, no foco, etc. Além disso, eu sei que é possível fazer
open bla.avi -a vlc
No entanto, quando eu emito um vlc
comando no shell, ele não funciona. which vlc
no shell também não retorna nada.
A versão CLI do VLC é muito útil para transcodificação, streaming, etc. Portanto, seria bom tê-lo funcionando.
vlc
no terminal, ele diz paracvlc
eu usar , acho que seria o mesmo no OSX.Respostas:
O comando
open bla.avi -a vlc
funciona porque o OS X está usando seu banco de dados do Launch Services para abrir o aplicativo VLC. Isso não tem nada a ver com um binário de linha de comando com o mesmo nome, que não é instalado por padrão.O binário que você procura está no
VLC.app
pacote, para que você possa digitá-lo em um terminal:Isso abrirá o VLC da linha de comando interativa. Ou execute o seguinte para ter a linha acima registrada como um alias para
vlc
:Depois de adicionar isso, você precisa reiniciar o seu Terminal. Agora digite
vlc
e você chegará à linha de comando.Se você não gosta da interface interativa ou gostaria de usá-la
VLC
com outras opções, é necessário editá-la~/.bash_profile
adequadamente, por exemplo, atravésopen -e ~/.bash_profile
.fonte
-I rc
do comando se você realmente deseja que a GUI seja aberta por meio do comando vlc da linha de comando.open -a VLC
. Isso funciona com qualquer aplicativo no OS X.cvlc
para deixar claro que é a linha de comando VLC (e também para ser consistente com a versão linux).Os aplicativos OS X geralmente não instalam nenhum executável de programa fora do pacote de aplicativos. Como você não costuma interagir com eles na linha de comando, eles não são colocados em nenhuma pasta do seu
PATH
.Se você instalou o VLC para
/Applications
, o executável real é/Applications/VLC.app/Contents/MacOS/VLC
./Applications/VLC.app/Contents/MacOS/VLC -h
mostrará alguma ajuda e/Applications/VLC.app/Contents/MacOS/VLC --intf ncurses
iniciará a interface do usuário ncurses.fonte
--intf ncurses
bandeira é legalPara acessar
vlc
pela linha de comando, você pode criar um link simbólico local como abaixo:Para ter esse comando disponível para todos os usuários, convém vinculá-lo
/usr/local/bin
.Verifique se seu
~/bin
(ou/usr/local/bin
) está em suaPATH
variável ambiental , ou seja, se seu~/.profile
arquivo contém algo como:O código acima é o comportamento padrão no Linux.
fonte
A interface fictícia permite operação em lote na linha de comando. Eu uso um script de shell como este salvo em / usr / local / bin / vlc:
fonte
FYI e / ou uma dica.
Aqui estão duas maneiras de descobrir o caminho real do aplicativo que é iniciado com o
open
comando.Útil, caso o VLC seja colocado em outro diretório em vez de
/Applications
, como/Users/<user>/Applications
(~/Applications
) ou outros diretórios.Via AppleScript
Simples, mas lança o aplicativo.
Via comando lsregister
Um pouco complicado, mas não inicia o aplicativo.
Testado em: macOS HighSierra (OSX 10.13.6)
fonte
Primeiro, você precisa localizar o executável binário real no pacote de aplicativos do VLC Mac. Abra
Finder
, vá para aApplications
pasta, clique com o botão direito do mouse no aplicativo VLC e clique emShow Package Contents
. Agora você pode procurar o que realmente está dentro.Nesse caso, o binário do VLC está localizado na
Contents/MacOS
pasta como arquivoVLC
. AbrirTerminal
e digite o caminho do arquivo exato para isso, e você vai encontrar as executa binários VLC:/Applications/VLC.app/Contents/MacOS/VLC
. Se você não quiser usar todo esse caminho todas as vezes, faça um link simbólico e edite seu Bash PATH para apontar para isso.Agora que você pode chamar o binário diretamente da CLI, provavelmente desejará escolher uma interface para não ter a GUI usual aparecendo. Uma lista completa de interfaces disponíveis está na página wiki do VLC Interfaces .
Depois de encontrar o conjunto de comandos de trabalho para suas chamadas de CLI do VLC que produz a saída pretendida, você provavelmente desejará usar a
dummy
interface ao chamar o VLC no processamento de seu programa / lote. Adummy
interface é basicamente nada além de saída no Terminal, como a maioria dos programas CLI não interativos.Resultado final:
/Applications/VLC.app/Contents/MacOS/VLC -I dummy [further parameters here]
Eu recomendo usar o
-vvv
parâmetro para que você obtenha uma extensa saída de log para ajudá-lo a testar diferentes comandos.fonte