VLC da Linea di Comando: cvlc, Streaming e Automazione
Dietro la GUI, VLC è un motore multimediale completo da linea di comando. Il binario headless cvlc (o vlc --intf dummy) ti permette di scriptare la riproduzione, eseguire un server di streaming, convertire batch e persino controllare un'istanza in esecuzione tramite un'interfaccia testuale. Se gestisci media su un server o NAS, questa è la guida che sblocca VLC per te.
Passo 1 — Riproduzione base dal terminale
Su Linux/macOS, cvlc è installato con VLC. Su Windows, usa il percorso completo: "C:\Program Files\VideoLAN\VLC\vlc.exe" con i flag --intf qui sotto.
Il binario è disponibile.
Riproduci un file headless:
cvlc /path/to/movie.mkv --intf dummy --play-and-exitVLC riproduce il file ed esce senza alcuna finestra.
Elenca gli stream del file senza riprodurre:
cvlc movie.mkv --intf dummy --play-and-exit -vvv 2>&1 | grep -i "stream 0"Sono stampate info codec e stream.
Passo 2 — Trasmetti un file o dispositivo in rete
Stream HTTP:
cvlc movie.mkv --sout "#standard{access=http,mux=ts,dst=:8080}"VLC serve lo stream sulla porta 8080; ogni player può aprire http://
:8080. Stream live webcam/dispositivo:
cvlc -vvv v4l2:///dev/video0 --sout "#transcode{vcodec=h264,vb=1200}:standard{access=http,mux=ts,dst=:8090}"(Linux) o dshow:// (Windows).È trasmesso uno stream H.264 live.
Ferma con Ctrl+C — VLC pulisce il listener.
Lo stream termina.
Passo 3 — Conversione batch con un comando
File singolo:
cvlc input.mkv --sout "#transcode{vcodec=h264,acodec=mpga,vb=2000}:standard{mux=mp4,dst=output.mp4}" --sout-keep --play-and-exitIl file è convertito.
Loop su una cartella:
for f in *.mkv; do cvlc "$f" --sout "#transcode{...}:standard{mux=mp4,dst=${f%.mkv}.mp4}" --play-and-exit; doneOgni file è convertito in sequenza.
Controlla prima l'alternativa ffmpeg per job pesanti — cvlc codifica in software ed è più lento di ffmpeg con encoder hardware.
Hai scelto lo strumento giusto per il lavoro.
Passo 4 — L'interfaccia rc per il controllo remoto
- Avvia con un canale di controllo:
cvlc --extraintf rc --rc-host 127.0.0.1:4212 movie.mkv - Connetti da un altro terminale:
telnet 127.0.0.1 4212(Linux/macOS) o usa un client telnet su Windows. - Comandi: play, pause, stop, seek 120, volume 80, next, prev, info, playlist.
- Scriptabile via file: printf "play\nvolume 60\n" | cvlc --extraintf rc --rc-fake-tty movie.mkv
Domande frequenti
Qual è la differenza tra vlc e cvlc?
VLC può trasmettere la mia webcam a una pagina web?
Perché la conversione CLI è più lenta della GUI?
Come trovo tutte le opzioni CLI di VLC?
cvlc --longhelp (o --help --help-verbose) e pipe a un file: cvlc --longhelp > vlc-help.txt. Le opzioni per-modulo sono sotto le sezioni "Stream output".