5 Tricks, um mehr aus dem VLC-Player unter Linux herauszuholen

Kurz: Dieser Artikel enthält einige VLC-Expertentipps, mit denen Sie diesen großartigen Videoplayer für wichtigere Zwecke einsetzen können.

VLC-Tipps, um mehr daraus zu machen

Kennen Sie VLC, den allgegenwärtigen Mediaplayer, das Flaggschiff des VideoLAN-Projekts? VLC ist ein plattformübergreifendes Tool und Sie können VLC problemlos auf Ubuntu oder anderen Linux-Distributionen installieren. Es gibt auch MacOS- und Windows-Versionen und sogar Versionen für Ihr Telefon / Pad / Watch mit iOS oder Android. Das ist aber später nur ein Videoplayer. Wie auch immer, das ist der Hauptanwendungsfall für VLC. Oder nicht?

Tatsächlich ist VLC für den Desktop viel mehr als nur ein Tool zum Abspielen von Videos, die auf Ihrer Festplatte gespeichert sind! Bleiben Sie also bei mir, um die weniger bekannten Funktionen dieser großartigen Software kennenzulernen.

1. Verwenden von VLC zum Importieren von Videos von einem UPnP-Gerät

Bevor wir uns mit der UPnP-Unterstützung befassen, die in VLC integriert ist, lohnt es sich vielleicht, ein wenig zu erklären, was UPnP ist.

Bei Universal Plug and Play (UPnP) handelt es sich um eine Reihe von Protokollen, mit denen angeschlossene Geräte die gegenseitige Präsenz im Netzwerk erkennen können. UPnP zielt darauf ab, Netzwerkgeräte Plug-and-Play-fähig zu machen, um die Übernahme durch nicht technisch orientierte Benutzer zu erleichtern. Der Grund, warum ich erwähne, ist, dass viele Audio-Video-Geräte für Endverbraucher UPnP unterstützen. Manchmal ist es nicht offensichtlich, dass diese Funktion in DLNA umbenannt wird - aber für unseren Zweck deckt sie meistens die gleichen Dinge ab.

Dieses Consumer-Gerät kann als DLNA / UPnP-Medienserver fungieren

VLC unterstützt UPnP. Leider kann VLC zum Zeitpunkt des Schreibens nur als UPnP-Client fungieren. Nicht als UPnP-Server. Dies ist jedoch ausreichend, wenn Sie einige auf einem externen UPnP-Server gespeicherte Inhalte von VLC wiedergeben möchten, z. B. einen kompatiblen digitalen Videorecorder oder ein kombiniertes DVD / BR / HDD-Haushaltsgerät.

Das Abspielen von Videos von einem UPnP-Netzwerkgerät ist eher intuitiv. Aber wussten Sie, dass Sie mit der rechten Maustaste auf einen Stream klicken, den Sie von einem UPnP-Gerät auf Ihr lokales Gerät kopieren ("speichern") können?

Ich muss zugeben, dass es auf meinem System nur für aufgezeichnete Videos und nicht für Live-Streams funktioniert. Ist dies ein Problem mit meinem HDD-Recorder oder einer VLC-Einschränkung? Ich kann es nicht genau sagen - übrigens, wenn Sie weitere Informationen dazu haben, zögern Sie nicht, dies mir im Kommentarbereich am Ende dieses Artikels mitzuteilen!

Da mein HDD-Rekorder HTTP als Transportschicht verwendet, finde ich es am nützlichsten, VLC zu verwenden, um die HDD-Hierarchie zu erkunden, und dann ein Befehlszeilentool zu verwenden, um den Stream tatsächlich herunterzuladen und / oder zu verarbeiten. Ich finde diesen Weg „chargenfreundlicher“:

# Download raw stream data from my HDD curl //10.129.36.11:60001/AV-0-268435456-2-0-268435503-251953200_BDY \ -o stream.raw 
 # Transcode the stream from my HDD using `ffmpeg` ffmpeg -i //10.129.36.11:60001/AV-0-268435456-2-0-268435503-251953200_BDY \ -seekable 0 \ -codec:a copy \ -codec:v libx264 -preset fast -tune film \ out.mkv 

2. Verwenden von VLC zum Transkodieren von Videos

Im vorherigen Beispiel habe ich ffmpeg verwendet, um ein Video von meinem Festplattenrekorder zu transkodieren. Tatsächlich benötigen Sie jedoch kein externes Tool. VLC kann das. Und sogar von der Kommandozeile aus:

 cvlc //10.129.36.11:60001/AV-0-268435456-2-0-268435503-251953200_BDY \ --sout-x264-preset fast --sout-x264-tune film \ --sout "#transcode{vcodec=h264, acodec=copy}:file{dst=out.mp4}" \ vlc://quit 

3. Schnittstellenloser VLC-Player

Haben Sie im obigen Befehl bemerkt, dass ich den Befehl cvlc anstelle von vlc ? Nein, cvlc ist keine Gabel. Es ist nur eine Möglichkeit, VLC ohne die grafische Benutzeroberfläche auszuführen.

Wenn Sie beispielsweise ein Video im Vollbildmodus wiedergeben möchten, ohne die Benutzeroberfläche zu beeinträchtigen, geben Sie einfach Folgendes ein:

 cvlc --play-and-exit \ --fullscreen \ stream.raw 

Ich finde cvlc besonders nützlich, wenn ich VLC für die Stapelverarbeitung verwende oder Videos im „Kiosk-Modus“ abspielen muss. Denken Sie beispielsweise an ein POS / POS-Werbedisplay im Geschäft. Für diese Aufgabe kann cvlc eine Alternative zu ffplay oder mplayer .

4. Verwenden von VLC zum Aufzeichnen von Screenshots

VLC ist ein großartiger Videoplayer. Wie wir gerade gesehen haben, können auch Videos heruntergeladen und transkodiert werden. Aber es wäre keine vollständige Videolösung, wenn es nicht auch Videos aufnehmen würde.

Und das geschah: Mit VLC können Sie Videos von verschiedenen Eingabegeräten wie einer Webcam aufnehmen. Oder eine DVB-S2 TV-Tunerkarte.

Es gibt jedoch ein Pseudo-Eingabegerät, das mich hier besonders interessieren wird: das „Desktop“ -Gerät.

Mit diesem Gerät können Sie Ihren Computerbildschirm aufzeichnen, als wäre es ein „echtes“ Eingangsvideogerät. Dies ist eine gute Option, wenn Sie Ihren Desktop beispielsweise für ein Tutorial oder einen Screencast aufzeichnen möchten. Der einzige wirkliche Nachteil von VLC ist, dass es derzeit unter Linux nicht möglich ist, den Cursor aufzuzeichnen. Daher ist es möglicherweise nicht das beste Tool für die Bildschirmaufnahme. Aber es funktioniert.

Um Ihren Desktop mit VLC aufzunehmen, öffnen Sie einfach das Dialogfeld "Aufnahmegerät", ändern Sie die Einstellungen entsprechend Ihren Anforderungen für den Eingang "Desktop" und ... drücken Sie ... "Wiedergabe".

Ich gebe zu, dass dieser Teil für mich zunächst ein wenig kontraintuitiv war. Bei Verwendung der VLC-Benutzeroberfläche müssen Sie jedoch auf "Wiedergabe" klicken, um das Gerät zu "öffnen". Und erst danach können Sie die Aufnahmetaste drücken, um den Stream aufzunehmen.

Drücken Sie die Aufnahmetaste, um den von VLC wiedergegebenen Stream aufzunehmen

Mit VLC haben Sie Zugriff auf eine Vielzahl von Aufnahmegeräten: Webcam, DVB-Karte, ...

Mit VLC können Sie sogar Ihren Desktop erfassen. Sehr nützlich für schnelle Screencasts!

Warnung: Auf einem echten Debian Stretch / Sid-Linux-System musste ich das Zusatzpaket vlc-plugin-access-extra installieren, damit dies funktioniert, und den vlc-plugin-access-extra "VLC kann den MRL-Bildschirm nicht öffnen: //" beseitigen. "Öffnen von` screen: // 'fehlgeschlagen " .

Soweit mir bekannt ist, gibt es in der Benutzeroberfläche kein Feedback, um Sie darüber zu informieren, wo die Datei tatsächlich aufgezeichnet wurde. Auf meinem system geht es zu ~/Videos/vlc-record--.avi .

Dies kann wahrscheinlich irgendwo in den VLC-Einstellungen geändert werden. Aber wenn ich diese Funktion benötige, bevorzuge ich die Verwendung der Befehlszeile, die mir eine bessere Kontrolle bietet und sich einfach als Teil eines Skripts integrieren lässt:

 cvlc screen:// \ --screen-fps=30\ --sout-x264-preset fast --sout-x264-tune animation \ --sout "#transcode{vcodec=h264, acodec=copy}:file{dst=out.mp4}" 

Kommt dir das nicht bekannt vor? Wenn ja, ist das richtig: Es ist fast derselbe Befehl, den ich oben verwendet habe, um einen Stream von meinem HDD-Recorder zu transkodieren.

Die VLC-Befehlszeilenargumente sind ziemlich komplex, und ich werde mich hier nicht zu sehr mit diesem Thema befassen. Aber das Tolle ist, wenn Sie erst einmal ein paar grundlegende Befehle verstanden haben, können Sie sie verwenden, unabhängig davon, woher der Stream stammt.

5. Verwenden von VLC zum Streamen von Videos

Player, Transcoder, Recorder - die Liste wäre nicht vollständig, wenn ich nicht "Server" erwähnen würde. Wir haben gesehen, dass VLC als Client fungieren kann, um einen Netzwerkvideostream anzuzeigen. Und ich erwähnte, dass es nicht als DLNA-Server verwendet werden kann. Es werden jedoch einige andere Serverprotokolle unterstützt, mit denen Remoteclients eine auf Ihrem Computer gehostete Videodatei abrufen und anzeigen können.

Dies kann beispielsweise nützlich sein, um auf dem Fernseher im Wohnzimmer ein Video anzusehen, das auf Ihrem Laptop verfügbar ist. Oder um Werbung zu senden, die auf den verschiedenen Bildschirmen gezeigt wird, die an einem öffentlichen Ort verteilt sind.

VideoLAN stellte für diesen Zweck seit einiger Zeit das vls (VideoLAN Server) zur Verfügung. Aber VLS wurde auf VLC verschmolzen - und heute ist VLS veraltet und wird seit Jahren nicht mehr gewartet.

Mit VLC können Sie die grafische Benutzeroberfläche verwenden, um das Streamen von Videos zu starten. Über die „Stream“ -Schnittstelle wählen Sie die Videos aus, die Sie freigeben möchten, und wählen dann die Art der Freigabe aus, die Sie verwenden möchten.

In diesem Beispiel wollte ich Videos über das HTTP-Protokoll streamen, da es allgemein unterstützt wird.

VLC kann auch als Server fungieren

Zuerst müssen Sie die Liste der Videos auswählen, die Sie freigeben möchten

Nachdem Sie im vorherigen Schritt auf "Stream" geklickt haben

Wählen Sie die Stream-Ziele. In meinem Fall

Stellen Sie die dem gewählten Ziel entsprechenden Optionen ein. Drücken Sie dann weiter.

Wählen Sie schließlich einige Transcodierungsoptionen. Es kann nützlich sein, die Bandbreitennutzung zu reduzieren.

Alles ist bereit. Sie können jetzt mit dem Streaming beginnen.

Das Schöne am VLC-Assistenten ist, dass Sie auf dem letzten Bildschirm über die aktuellen Befehlszeilenoptionen verfügen, mit denen Sie den Streaming-Server starten können, ohne alle Schritte erneut manuell ausführen zu müssen. Auf diese Weise können Sie die Einstellungen später wiederverwenden oder anpassen und einen VLC-Streaming-Server ohne Aufsicht des Benutzers starten.

Dies war in der Tat ein Glücksfall, als ich diese Funktion getestet habe, da ich die VLC-Codec-Option ein wenig anpassen musste, um mein Video richtig zu streamen. Genauer gesagt musste ich den MPEG 1 - Audio Layer 3 Codec (MP3) anstelle des MPEG 1 - Audio Layer 2 Codec (mpga) verwenden. Fragen Sie mich nicht warum, aber wenn Sie meine Videodatei in "MP2" umcodieren, enthielten die umcodierten Dateien bis zu 24 leere Audiotracks, während die umcodierte "MP3" -Datei nur den "richtigen" Audiotrack enthielt. Nochmals, wenn Sie eine Idee zu diesem Thema haben, können Sie diesen Artikel gerne kommentieren! Sowieso:

 cvlc /path/to/my/file.mp4 \ --sout=#transcode{vcodec=h264, acodec=mp3, ab=128, channels=2, samplerate=44100}:http{mux=ffmpeg{mux=flv}, dst=:8181/movie} \ --sout-keep 

Aber Sie müssen verstehen, dass dies einen Streaming- Server startet. Nicht nur ein Dateiserver . Das heißt, sobald der Server in Betrieb ist, beginnt VLC, den Eingabestream abzuspielen, ohne darauf zu warten, dass die Clients eine Verbindung herstellen . Mit anderen Worten, wenn Sie 5 Minuten benötigen, um den Client zu starten und eine Verbindung zum Server herzustellen, haben Sie die ersten 5 Minuten Ihres Films verpasst! Sie müssen also wahrscheinlich clientseitig bereit sein, bevor Sie den Server starten können.

 # display the video: vlc //addr.of.the.server:8181/movie ffplay //addr.of.the.server:8181/movie mplayer //addr.of.the.server:8181/movie 

Eine Liste der unterstützten Protokolle und der Stream-Kompatibilität finden Sie auf der VideoLAN-Website: //www.videolan.org/streaming-features.html. Hier habe ich das HTTP-Protokoll verwendet. Für komplexere Streaming-Anwendungen empfehle ich Ihnen jedoch, stattdessen das Real-Time Transport Protocol (RTP) zu untersuchen. Das Schöne an RTP ist, dass es Multicasting unterstützt. Ohne zu sehr ins Detail zu gehen, basiert HTTP auf dem TCP-Protokoll, das für eine zuverlässige Eins-zu-Eins-Kommunikation (Unicast) ausgelegt ist. Während RTP auf UDP basiert, das weniger zuverlässig ist, aber für eine Eins-zu-Viele-Kommunikation verwendet werden kann ([Multicast]] (// en.wikipedia.org/wiki/Multicast)).

Einfach gesagt, bei Verwendung des HTTP-Protokolls muss der Server die Daten einzeln an jeden Client senden. Das heißt, wenn Sie 100 Clients haben, die das HTTP-Protokoll verwenden, muss VLC jedes Datenpaket 100 Mal senden. Einmal für jeden verbundenen Client. Mit RTP können Sie jedoch eine Multicast-Adresse verwenden und dasselbe Paket kann gleichzeitig an mehrere Clients weitergeleitet werden. Wenn 100 Clients mit derselben Multicast-Adresse verbunden sind, muss der VLC-Server jedes Datenpaket nur einmal senden. An die Multicast-Adresse. Die LAN-Infrastruktur (Router, Switch) übernimmt die Verantwortung für den Versand dieses Pakets an alle Clients. Dies reduziert natürlich die Bandbreitennutzung und die Serverauslastung.

HTTP, RTP-Unicast und RTP-Multicast sind derzeit die einzigen drei von VLC unterstützten Streaming-Protokolle.

 # Start VLC as a multicast RTP server cvlc -vvv ~/some-video.avi \ --sout='#transcode{vcodec=h264, acodec=mp3, ab=128, channels=2, samplerate=44100}:rtp{mux=ts, dst=224.0.0.10, port=1234}'\ --sout-keep 

VLC-Streaming-Funktionen sind ausgereift und durch Transcodierung können Sie nahezu jede Videodatei streamen. Wenn Sie jedoch vorhaben, die Streaming-Funktion regelmäßig zu verwenden, sollten Sie auf jeden Fall überlegen, Ihre Dateien im Voraus zu verarbeiten und eventuell ein spezialisierteres Tool wie ffmpeg . Dies reduziert nicht nur die Belastung des Servers im Vergleich zum Live-Transcodieren, sondern auch das Transcodieren von Dateien mit mehreren Audio- oder Videospuren mit VLC kann eine Herausforderung darstellen.

5. Hilfe zu VLC erhalten

Du hast vielleicht bemerkt, dass ich mehrmals ffmpeg . Ein Grund, warum ich dieses Tool besonders mag, ist die großartige Dokumentation, die mit diesem Projekt verbunden ist.

Es ist kein Vergehen zu behaupten, die VLC-Dokumentation sei viel weniger… ähm… „erschöpfend“ als das Gegenstück zu ffmpeg . Eine Funktion, die ich beim Schreiben dieses Artikels entdeckt (und verwendet!) Habe, ist die Inline-Hilfe, die für die verschiedenen VLC-Module verfügbar ist. Beispielsweise haben wir zuvor unter anderem die Transcode- und HTTP-Module verwendet. Mit den folgenden Befehlen erhalten Sie (einige) Hilfe zu den verschiedenen Optionen, die von diesen Modulen unterstützt werden:

 vlc -p transcode --advanced vlc -p http --advanced 

Diese Inline-Hilfe ist ebenfalls nicht sehr detailliert. Aber zumindest, nachdem Sie das verwendet haben, haben Sie einige Hinweise zu den Schlüsselwörtern, die Sie in Ihre Lieblingssuchmaschine eingeben müssen!

Wetterwachs, Rincewind und die anderen

Mein letzter VLC-Trick ist eigentlich kein Trick. Aber ich würde diesen Artikel nicht abschließen, ohne die VLC-Release-Namen zu erwähnen.

Ich benutze jetzt VLC “Weatherwax” (v2.2.x). Und meine erste VLC-Erfahrung stammt wahrscheinlich aus „The Luggage“ (v1.1.x). Wenn Sie sich jemals fragen, woher diese ausgefallenen Veröffentlichungsnamen stammen, sind sie tatsächlich Namen von Kultfiguren aus der Discworld-Reihe von Büchern von Terry Pratchett († 2015). Als erste nach seinem Tod veröffentlichte Version wurde VLC 2.2.1 als Hommage mit dem Codenamen „Terry Pratchett“ versehen.

Wie Sie bemerkt haben, sind wir durch die Erforschung von VLC über die grundlegendsten Fähigkeiten hinaus in eine Zone mit einem hohen magischen Index geraten . Und wir haben kaum an der Oberfläche gekratzt. Zu diesem Tool gibt es noch eine Menge zu sagen. Wenn Sie ein paar coole VLC-Tricks kennen oder auf originelle Anwendungsfälle gestoßen sind, teilen Sie uns dies bitte im Kommentarbereich unten mit. Es ist genau für diesen Zweck da!

Empfohlen

Behebung des Problems mit Adobe Flash Player in Chromium in Ubuntu 14.04
2019
Weitere italienische Städte wechseln zu Open Source
2019
Ubuntu über die Linux-Befehlszeile herunterfahren oder neu starten
2019