¿Cómo puedo usar la versión CLI de VLC en OSX?
Después de instalar VLC en OSX, funciona bien a través del proceso normal de GUI, Spotlight, etc. Además, sé que es posible hacerlo
open bla.avi -a vlc
Sin embargo, cuando emito un vlc
comando en el shell, no funciona. which vlc
in shell tampoco devuelve nada.
La versión CLI de VLC es muy útil para transcodificar, transmitir, etc. Por lo tanto, sería bueno que funcionara.
vlc
en la terminal, me dice que usecvlc
, supongo que sería lo mismo en OSX.Respuestas:
El comando
open bla.avi -a vlc
funciona porque OS X está utilizando su base de datos Launch Services para abrir la aplicación VLC. Esto no tiene nada que ver con una línea de comandos binaria del mismo nombre, que no está instalada de manera predeterminada.El binario que busca está en el
VLC.app
paquete, por lo que puede escribirlo en un terminal:Esto abrirá la línea de comandos interactiva VLC. O ejecute lo siguiente para que la línea anterior se registre como un alias para
vlc
:Una vez que haya agregado esto, debe reiniciar su Terminal. Ahora escribe
vlc
y llegarás a la línea de comando.Si no le gusta la interfaz interactiva o le gustaría usarla
VLC
con otras opciones, debe editarla en~/.bash_profile
consecuencia, por ejemplo, a través deopen -e ~/.bash_profile
.fuente
-I rc
del comando si realmente desea que la GUI se abra a través del comando vlc de la línea de comando.open -a VLC
. Esto funciona con cualquier aplicación en OS X.cvlc
para dejar en claro que es la línea de comandos VLC (y también para ser coherente con la versión de Linux).Las aplicaciones de OS X no suelen instalar ningún ejecutable de programa fuera de su paquete de aplicaciones. Como generalmente no interactúa con ellos desde la línea de comandos, no se colocan en ninguna carpeta en su
PATH
.Si instaló VLC en
/Applications
, el ejecutable real es/Applications/VLC.app/Contents/MacOS/VLC
./Applications/VLC.app/Contents/MacOS/VLC -h
mostrará algo de ayuda y/Applications/VLC.app/Contents/MacOS/VLC --intf ncurses
lanzará la interfaz de usuario ncurses.fuente
--intf ncurses
bandera es genialPara acceder
vlc
desde la línea de comando, puede crear un enlace simbólico local como se muestra a continuación:Para tener este comando disponible para todos los usuarios, es posible que desee vincularlo en su
/usr/local/bin
lugar.Asegúrese de que su
~/bin
(o/usr/local/bin
) esté en suPATH
variable de entorno , en otras palabras, que su~/.profile
archivo contenga algo como:El código anterior es el comportamiento predeterminado en Linux.
fuente
La interfaz ficticia permite la operación por lotes en la línea de comando. Utilizo un script de shell como este guardado en / usr / local / bin / vlc:
fuente
FYI y / o una propina.
Aquí hay 2 formas de averiguar la ruta real de la aplicación que se inicia con el
open
comando.Útil, en caso de que el VLC se coloque en otro directorio en lugar de
/Applications
, como/Users/<user>/Applications
(~/Applications
) u otros directorios.Vía AppleScript
Simple pero lanza la aplicación.
A través del comando lsregister
Poco complicado pero no iniciará la aplicación.
Probado en: macOS HighSierra (OSX 10.13.6)
fuente
Primero, necesita ubicar el ejecutable binario real en el paquete de aplicación VLC Mac. Abra
Finder
, vaya a laApplications
carpeta, haga clic derecho en la aplicación VLC y luego haga clicShow Package Contents
. Ahora puedes navegar por lo que realmente hay dentro.En este caso, el binario VLC se encuentra en la
Contents/MacOS
carpeta como archivoVLC
. AbrirTerminal
e introduzca la ruta del archivo exacto de esto, y usted encontrará los binarios ejecuta VLC:/Applications/VLC.app/Contents/MacOS/VLC
. Si no desea utilizar esta ruta completa cada vez, puede hacer un enlace simbólico y editar su Bash PATH para señalar esto.Ahora que puede llamar al binario directamente desde la CLI, es probable que desee elegir una interfaz para que no aparezca la GUI emergente habitual. Una lista completa de las interfaces disponibles se encuentra en la página wiki VLC Interfaces .
Una vez que encuentre el conjunto de comandos de trabajo para sus llamadas CLI de VLC que produce su salida deseada, probablemente desee utilizar la
dummy
interfaz cuando llame a VLC en su programa / procesamiento por lotes. Ladummy
interfaz básicamente no es más que salida en la Terminal como la mayoría de los programas CLI no interactivos.Resultado final:
/Applications/VLC.app/Contents/MacOS/VLC -I dummy [further parameters here]
Recomiendo usar el
-vvv
parámetro para obtener una salida de registro extensa para ayudar mientras prueba diferentes comandos.fuente