Chapter 1.  Einführung

Table of Contents

Was ist das VideoLAN Projekt?
Was ist ein Codec?
Wie benutze ich VideoLAN?
Befehlszeilenbenutzung

Was ist das VideoLAN Projekt?

Überblick

VideoLAN ist eine komplette Softwarelösung für Video-Streaming, entwickelt von Studenten der Ecole Centrale Paris und Entwicklern von der ganzen Welt, unter der GNU General Public License (GPL). VideoLAN ist ausgelegt auf das Streamen von MPEG-Videos in Netzwerken mit hoher Bandbreite.

Die VideoLAN-Lösung umfasst:

  • VLS (VideoLAN Server), der MPEG-1, MPEG-2 und MPEG-4 Dateien, DVDs, digitale Satellitenkanäle, digitale terrestrische Fernsehkanäle und Live-Videos über das Netzwerk in Uni- oder Multicast streamen kann,

  • VLC (anfänglich VideoLAN Client), welches als Server zum Streamen von MPEG-1, MPEG-2 und MPEG-4 Dateien, DVDs und Live-Videos über das Netzwerk per Uni- oder Multicast und als Client zum Empfangen, Dekodieren und Anzeigen von MPEG-Streams unter multiplen Betriebssystemen benutzt werden kann.

Hier ist eine Illustration der kompletten VideoLAN-Lösung:

Figure 1.1.  Die globale VideoLAN-Lösung

Die globale VideoLAN-Lösung

Mehr Details über das Projekt können auf der VideoLAN Website gefunden werden.

VideoLAN Software

VLC

VLC läuft auf vielen Plattformen: Linux, Windows, Mac OS X, BeOS, *BSD, Solaris, Familiar Linux, Yopy/Linupy und QNX. Es kann lesen:

  • MPEG-1, MPEG-2 und MPEG-4 / DivX Dateien von einer Festplatte, einem CD-ROM-Laufwerk,...

  • DVDs und VCDs,

  • von einer Satellitenkarte (DVB-S),

  • MPEG-1, MPEG-2 und MPEG-4 Streams aus dem Netzwerk, gesendet von VLS oder VLCs Streamausgabe.

VLC kann auch als Streaming-Server benutzt werden:

  • MPEG-1, MPEG-2 und MPEG-4 / DivX-Dateien,

  • DVDs,

  • von einer MPEG-Kodierungskarte,

an:

  • einen Rechner (d.h. an eine IP-Adresse): dies wird Unicast genannt,

  • eine dynamische Gruppe von Rechner, an der Clients teilnehmen oder diese verlassen können (d.h. an eine Multicast-IP-Adresse): dies wird Multicast genannt,

per IPv4 oder IPv6.

Um die komplette Liste von VLCs Fähigkeiten auf jeder entsprechenden Plattform zu erhalten, schauen Sie auf die VLC-Features-Seite (auf Englisch).

Note

VLC läuft nicht unter Mac OS 9 und wird es wahrscheinlich nie tun.

VLS

VLS kann streamen:

  • MPEG-1, MPEG-2 oder MPEG-4 - Dateien, die auf einer Festplatte oder auf einer CD gespeichert sind,

  • DVDs in einem lokalen DVD-Laufwerk oder kopiert auf eine Festplatte,

  • Daten einer Satellitenkarte (DVB-S) oder einer digitalen terrestrischen TV-Karte (DVB-T) ,

  • Daten einer MPEG-Kodierungskarte ;

an :

  • einen Rechner (d.h. an eine IP-Adresse): dies wird Unicast genannt,

  • eine dynamische Gruppe von Rechnern, an der die Clients teilnehmen, diese aber auch wieder verlassen können (d.h. an eine Multicast-IP-Adresse): dies wird Multicast genannt,

per IPv4 oder IPv6.

Ein Rechner mit einem Pentium-Prozessor mit 100 MHz und 32 MB Arbeitsspeicher sollte ausreichend sein, um einen Stream über das Netzwerk zu versenden. Wenn viele auf einer Festplatte gespeicherte Videos gestreamt werden, ist die wirkliche Beschränkung nicht der Prozessor, sondern die Festplatte und die Netzwerkanbindung.

VLS läuft unter Linux und Windows. Um die komplette Liste von VLS' Möglichkeiten auf der jeweiligen Plattform zu erhalten, schauen Sie auf die Streaming-Features-Seite.

Mini-SAP-server

Sie können einen Kanal-Informationsdienst, basierend auf dem SAP/SDP-Standard, der VideoLAN-Lösung hinzufügen. Der mini-SAP-Server sendet Ankündigungen über die Multicast-Programme im Netzwerk in IPv4 und IPv6. VLC-Anwendungen erhalten diese Ankündigungen und fügen die Programme automatisch ihrer Wiedergabeliste hinzu.

Der mini-SAP-Server läuft unter Linux und Mac OS X.

Was ist ein Codec?

Um die VideoLAN Lösung komplett zu verstehen, müssen Sie den Unterschied zwischen einem Codec und einem Container-Format kennen.

  • Ein Codec ist ein Kompressionsalgorithmus, der zur Reduzierung der Größe eines Streams benutzt wird. Es gibt Ton- und Bildcodecs. MPEG-1, MPEG-2, MPEG-4, DivX, usw. sind Codecs.

  • Ein Container-Format enthält einen oder mehrere Streams, die bereits von einem Codec kodiert worden sind. Sehr oft gibt es einen Bild- und einen Tonstream. AVI, Ogg, MOV, ASF, usw. sind Container-Formate. Die enthaltenen Streams können mit unterschiedlichen Codecs kodiert worden sein. In einer perfekten Welt könnten Sie jeden Codec in jedes Container-Format legen. Leider gibt es einige Inkompatiblitäten. Sie können eine Matrix von möglichen Codecs und Containerformaten auf der Featuresseite finden.

Um einen Stream zu dekodieren, demultiplext VLC ihn erst. Das bedeutet, dass es das Containerformat liest und Ton, Bild und Untertitel trennt, wenn welche vorhanden sind. Danach wird jeder davon durch Dekoder geleitet, die die mathematischen Vorgänge zur Dekomprimierung ausführen .

MPEG ist ein spezieller Fall:

  • MPEG ist ein Codec. Es gibt mehrere Versionen davon, genannt MPEG-1, MPEG-2, MPEG-4...

  • MPEG ist außerdem ein Containerformat, manchmal bezeichnet als MPEG System. Es gibt mehrere Typen von MPEG: ES, PS und TS

    Wenn Sie ein MPEG-Video beispielsweise von einer DVD abspielen, besteht der MPEG-Stream aus mehreren Streams ('Elementare Streams'/'ES' genannt): es gibt einen für Bild, einen für Ton, einen weiteren für Untertitel, usw. Diese unterschiedlichen Streams sind in einen einzelnen 'Program Stream' (PS) zusammengemischt. Die .VOB-Dateien, die Sie auf einer DVD finden, sind tatsächlich MPEG-PS-Dateien. Aber dieses PS-Format ist nicht für das Streamen von Videos bespielsweise über ein Netzwerk oder Satellit ausgelegt, sodass ein anderes Format, namens 'Transport Stream' (TS) für das Streamen von MPEG-Videos über solche Kanäle designed wurde.

Wie benutze ich VideoLAN?

Dokumentation

Die Benutzerdokumentation von VideoLAN besteht aus 4 Dokumenten:

  • Das VideoLAN HOWTO-Dokument ist das komplette Handbuch über die VideoLAN-Streaming-Lösung. Es enthält praktische Beispiele zur Aufsetzung Ihrer Streaming-Lösung.

  • Der VLC user guide. Dieses Dokument ist das komplette Handbuch für VLC.

  • Der VLS user guide. Dieses Dokument ist das komplette Handbuch für VLS.

  • Die VideoLAN-FAQ. Dieses Dokument enthält oft gestellte Fragen über VideoLAN.

Die neueste Version dieser Dokumente kann auf der Dokumentationseite gefunden werden.

Benutzersupport

Wenn Sie Probleme bei der Benutzung von VideoLAN haben und die Antwort auf Ihre Probleme in der Dokumentation nicht finden können, auf Sie bitte in das Onlinearchiv der Mailinglisten. Es gibt zwei englischsprachige Mailinglisten für die Benutzer:

  • vlc@videolan.org für die Fragen über VLC ,

  • streaming@videolan.org für die Fragen über VLS, mini-SAP-Server und das Netzwerk.

Wenn Sie sich bei einer dieser Listen einschreiben oder austragen möchten, gehen Sie bitte auf die Mailinglisten Seite.

Sie können auch mit VideoLAN Benutzern und Entwicklern über IRC sprechen: Server irc.freenode.net, Channel #videolan.

Wenn Sie einen Fehler finden, folgen Sie bitte der Anleitung auf der Fehlermeldeseite.

Befehlszeilenbenutzung

  • VLC hat viele unterschiedliche grafische Interfaces, die sehr unterschiedlich aufgebaut sind, um mit den Richtlinien des jeweiligen System zu entsprechen. Die Funktionalität jedes Interfaces zu dokumentieren, wäre zu aufwendig und einige Features sind nur über die Befehlszeile verfügbar. Deshalb haben wir uns entschieden, nur das Befehlszeileninterface zu dokumentieren, aber in vielen Fällen sollte es einfach zu erraten sein, wie das grafische Interface entsprechend zu benutzen ist!

  • VLS hat ein Befehlszeilen- und ein Telnet-Interface, aber keine grafische!

Alle Befehle, die in diesem Dokument auftauchen, sollten in ein Terminal eingeben werden..

Öffnen Sie ein Terminal

Windows

Klicken Sie auf Start, Ausführen und geben Sie ein:

  • cmd Enter (Windows 2000 / XP),

  • command Enter (Windows 95 / 98 / ME).

Das Terminal erscheint

Figure 1.2. Windows terminal

Windows terminal

Note

Unter Windows müssen Sie in dem Verzeichnis sein, wohin das Programm installiert wurde, um es auszuführen.

Linux / Unix

Öffnen Sie ein Terminal :

Figure 1.3. Linux X terminal

Linux X terminal

In der Dokumentation adoptieren wir die folgenden Konventionen für die Unix-Befehle:

  • Befehle, die als root eingegeben werden sollten, beginnen mit einem #:

    # 
    
    befehl_der_als_root_eingegeben_werden_soll
    
    
  • Befehle, die als normaler Benutzer eingeben werden sollten, beginnen mit einem %:

    % 
    
    befehl_der_als_normaler_benutzer_eingegeben_werden_sollte
    
    

Mac OS X

Gehen Sie in den Ordner Programme, öffnen Sie den Ordner Dienstprogramme und doppelklicken Sie auf Terminal :

Figure 1.4. Mac OS X terminal

Mac OS X terminal

Note

Unter Mac OS X müssen Sie in dem Ordner sein, in dem das Programm installiert wurde, um es auszuführen und der Befehl muss mit ./ beginnen.

BeOS

In der Schreibtischleiste gehen Sie auf Application und dann auf Terminal:

Figure 1.5. BeOS terminal

BeOS terminal

Note

Unter BeOS müssen Sie in dem Verzeichnis sein, wo das Programm installiert wurde, um es auszuführen und der Befehl muss mit ./beginnen.