VLC-Kommandozeile: cvlc, Streaming & Automatisierung

Experte Zuletzt aktualisiert: Gilt für: Windows / macOS / Linux · VLC 3.0.x

Hinter der GUI steckt eine vollwertige Kommandozeilen-Medien-Engine. Der headless-Binary cvlc (oder vlc --intf dummy) ermöglicht es Ihnen, Wiedergabe zu scripten, einen Streaming-Server zu betreiben, Stapel zu konvertieren und sogar eine laufende Instanz über eine Text-Schnittstelle zu steuern. Wenn Sie Medien auf einem Server oder NAS verwalten, ist dies der Leitfaden, der VLC für Sie erschließt.

Schritt 1 — Grundlegende Wiedergabe vom Terminal

  1. Unter Linux/macOS wird cvlc mit VLC installiert. Unter Windows den vollständigen Pfad verwenden: „C:\Program Files\VideoLAN\VLC\vlc.exe" mit den unten stehenden --intf-Flags.

    Der Binary ist verfügbar.

  2. Eine Datei headless abspielen: cvlc /pfad/zu/film.mkv --intf dummy --play-and-exit

    VLC spielt die Datei ab und beendet sich ohne Fenster.

  3. Die Streams der Datei auflisten, ohne abzuspielen: cvlc film.mkv --intf dummy --play-and-exit -vvv 2>&1 | grep -i "stream 0"

    Codec- und Stream-Informationen werden ausgegeben.

Hinweis--play-and-exit ist das Arbeitspferd-Flag für Skripte: VLC beendet sich, wenn die Datei endet, sodass Cron-/systemd-Jobs sauber terminieren.

Schritt 2 — Eine Datei oder ein Gerät ins Netzwerk streamen

  1. HTTP-Stream: cvlc film.mkv --sout "#standard{access=http,mux=ts,dst=:8080}"

    VLC liefert den Stream auf Port 8080; jeder Player kann http://:8080 öffnen.

  2. Live-Webcam-/Geräte-Stream: cvlc -vvv v4l2:///dev/video0 --sout "#transcode{vcodec=h264,vb=1200}:standard{access=http,mux=ts,dst=:8090}" (Linux) oder dshow:// (Windows).

    Ein Live-H.264-Stream wird gesendet.

  3. Mit Ctrl+C stoppen — VLC räumt den Listener auf.

    Der Stream endet.

Schritt 3 — Batch-Konvertierung mit einem Befehl

  1. Einzeldatei: cvlc input.mkv --sout "#transcode{vcodec=h264,acodec=mpga,vb=2000}:standard{mux=mp4,dst=output.mp4}" --sout-keep --play-and-exit

    Die Datei ist konvertiert.

  2. Schleife über einen Ordner: for f in *.mkv; do cvlc "$f" --sout "#transcode{...}:standard{mux=mp4,dst=${f%.mkv}.mp4}" --play-and-exit; done

    Jede Datei wird der Reihe nach konvertiert.

  3. Für schwere Jobs zuerst die ffmpeg-Alternative prüfen — cvlc kodiert in Software und ist langsamer als ffmpeg mit Hardware-Encodern.

    Sie haben das richtige Werkzeug gewählt.

Schritt 4 — Die rc-Schnittstelle für Fernsteuerung

  • Mit einem Steuerkanal starten: cvlc --extraintf rc --rc-host 127.0.0.1:4212 film.mkv
  • Von einem anderen Terminal verbinden: telnet 127.0.0.1 4212 (Linux/macOS) oder unter Windows einen Telnet-Client verwenden.
  • Befehle: play, pause, stop, seek 120, volume 80, next, prev, info, playlist.
  • Per Datei scriptbar: printf "play\nvolume 60\n" | cvlc --extraintf rc --rc-fake-tty film.mkv

Häufige Fragen

Was ist der Unterschied zwischen vlc und cvlc?
cvlc ist derselbe Binary ohne geladene GUI-Schnittstellen — er existiert auf allen Plattformen, ist aber in einigen Linux-Paketen ein Wrapper. Unter Windows für denselben Effekt --intf dummy zum vlc.exe-Aufruf hinzufügen.
Kann VLC meine Webcam auf eine Webseite streamen?
Ja — das Geräte-Stream-Beispiel in Schritt 2 liefert einen HTTP-Stream, und Sie können ihn mit einem HTML5-Video-Tag einbetten, das auf die URL zeigt (TS-Mux funktioniert in den meisten Browsern).
Warum ist die CLI-Konvertierung langsamer als die GUI?
Ist sie nicht — beide nutzen denselben Software-Encoder. Die GUI sieht nur freundlicher aus. Wenn Geschwindigkeit zählt, ffmpeg mit GPU-Encodern verwenden.
Wie finde ich alle VLC-CLI-Optionen?
cvlc --longhelp ausführen (oder --help --help-verbose) und in eine Datei umleiten: cvlc --longhelp > vlc-help.txt. Die Optionen pro Modul sind unter „Stream output"-Abschnitten gelistet.