die raven homepage
MPlayer mit Fedora Core Linux
Version 1.2
Vorbemerkungen

Diese Anleitung dient der Einrichtung von MPlayer unter Fedora Core Linux. MPlayer ist ein Multimediaplayer für Linux, der eine Vielzahl von Formaten abspielen kann.

Die Anleitung geht nicht auf die Installtion von Mplayer mit Samba, DVB und LIRC Unterstützung ein.

Die Anleitung ist so angelegt, dass MPlayer mit einem möglichst minimalen Kompilierungsaufwand eingerichtet wird und Linuxanfänger eine Liste von Schritten abarbeiten können, an deren Ende ein voll funktionsfähiger MPlayer zur Verfügung steht.

# kommando bedeutet, dass ein Kommando in der Konsole über ein Terminalprogramm ("# " steht als Platzhalter für die Konsole) wie Gnome-Terminal, xterm usw. eingegeben wird.
Wer die Kommandos nicht selbst in der Konsole eingeben möchte, kann auch kommando hier auf der Seite markieren und per Copy & Paste in der Konsole einfügen (hier durch Klick auf die mittlere Maustaste im Terminal).

Fast alle Schritte müssen mit den Rechten des root Benutzers ausgeführt werden. Deshalb öffnet man am besten direkt eine Konsole mit Gnome-Terminal, xterm etc. und wechselt mit # su root und der anschließenden Eingabe des Passwortes von root zum root Benutzer und lässt die Konsole während der gesamten Einrichtungsphase geöffnet.
Wo Schritte als normaler Benutzer ausgeführt werden, wird dies gesondert angegeben.

Müssen Dateien angelegt, bzw. editiert werden, kann man aus der root Konsole heraus die Datei mit dem Editor der Wahl öffnen, z. B. mit # gedit dateiname, # kedit dateiname, # gvim dateiname.

Wer bereits mit Yum, RPM vertraut ist und die Konfigurationsdateien für das Fedora, Fedora-Updates, Freshrpms und DAG Repository installiert hat, kann den nächsten Abschnitt Vorbereitungen überspringen.

Vorbereitungen

Zur Einrichtung von MPlayer werden vier Yum Repository Konfigurationsdateien für den Download und die Installation einer Reihe von RPM Paketen benötigt.

RPM ist die Abkürzung für RPM Paket Manager, dem Paketmanagementsystem von Fedora für die Softwarearchive im RPM Format. Yum ist die Abkürzung für Yellowdog Updater, Modified, ein Paketmanager für RPM Pakete. RPM Pakete stehen in sogenannten RPM Repositories zum Download bereit.
Man unterscheidet fertig vorkompilierte RPM Pakete (erkennbar an der Dateiendung paketname.rpm), die sofort installiert werden können und RPM Pakete, die ein Quellcodearchiv und eine Kompilieranweisung enthalten (erkennbar an der Dateiendung paketname.src.rpm), die zuerst mit RPM übersetzt und anschließend mit RPM installiert werden.

Datei Nr. 1: fedora-base.repo für das Fedora Release Repository

[base]
name=Fedora Core $releasever - $basearch - Base
mirrorlist=http://fedora.redhat.com/download/mirrors/fedora-core-$releasever
enabled=1
gpgcheck=1

Datei Nr. 2: fedora-updates.repo für das Fedora Updates Repository der Release Pakete

[updates-released]
name=Fedora Core $releasever - $basearch - Released Updates
mirrorlist=http://fedora.redhat.com/download/mirrors/updates-released-fc$releasever
enabled=1
gpgcheck=1

Datei Nr. 3: dag.repo für das DAG Repository

[dag]
name=Fedora DAG
baseurl=http://apt.sw.be/fedora/$releasever/en/$basearch/dag
enabled=1
gpgcheck=1

Datei Nr. 4: freshrpms.repo für das Freshrpms Repository

  1. freshrpms-release RPM herunterladen
  2. RPM installieren mit

    # rpm -ivh freshrpms-release-1-1.fc.fr.noarch.rpm

    Dadurch wird auch die freshrpms.repo Datei angelegt.

RPM Pakete werden von den Erstellern mit einer Signatur versehen, die mit dem Verschlüsselungsprogramm GnuPG erstellt werden. Yum überprüft diese Signaturen, wenn die Überprüfung für Pakete eines Repository mit der Option gpgcheck=1 aktiviert wurde, wie das bei den vier Konfigurationsdateien der Fall ist.

Zur Überprüfung benötigt Yum bzw. RPM die passenden GnuPG Schlüssel, die wir noch herunterladen, bzw. in die RPM Datenbank importieren müssen.

  • # rpm --import /usr/share/rhn/RPM-GPG-KEY-fedora
    für die Fedora Repositories
  • # rpm --import http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt
    für das DAG Repository
  • # rpm --import /usr/share/doc/freshrpms-release-1/RPM-GPG-KEY-freshrpms
    für das Freshrpms Repository

Über die jetzt angelegten Konfigurationsdateien kann Yum die Repositories nach RPM Paketen befragen und die für MPlayer benötigten Pakete von dort herunterladen, installieren und die Signaturen überprüfen.

Installation der RPM Pakete / 1. Teil

Soweit nicht anders angegeben, ist mit Angabe des Paketnamens gleichzeitig auch der Download bzw. Installation des zugehörigen Entwicklerpaketes gemeint, erkennbar an paketname-devel.rpm.
Für das arts-version.rpm Paket würde also der Name des Entwicklerpakets arts-devel-version.rpm lauten.

Fedora Pakete

Folgende RPM Pakete werden aus den Fedora Core Repositories benötigt:

  • arts
  • cdparanoia
  • desktop-file-utils (kein Entwicklerpaket)
  • esound
  • flac
  • freetype
  • fribidi
  • gtk+
  • libpng
  • libjpeg
  • libungif
  • libogg
  • libvorbis
  • libdv
  • libtheora
  • SDL
  • xorg-x11
  • zlib

Um sicherzustellen, dass nur die Fedora Repositories verwendet werden und es zu keinen Überschneidungen kommt, wird in der dag.repo und freshrpms.repo Datei die Option enabled auf enabled=0 gesetzt.
Damit übergeht Yum die beiden Repositieres bei Abfrage- und Installationsoperationen.

Viele der Pakete werden bereits bei der Installation von Fedora Core installiert worden sein. Trotzdem wird zuerst mit Yum ermittelt, ob alle Pakete inklusive ihrer Entwicklerpakete installiert sind:

# yum list installed arts* cdparanoia* desktop-file-utils esound* flac* freetype* fribidi* gtk+* libpng* libjpeg* libungif* libogg* libvorbis* libdv* libtheora* SDL* xorg-x11* zlib*

Die fehlenden Pakete werden installiert mit

# yum install paketname paketname-devel

Wenn nur das Entwicklerpaket fehlt mit

# yum install paketname-devel

Freshrpms und DAG Pakete

Folgende RPM Pakete werden aus dem Freshrpms und DAG Repository benötigt:

Um sicherzustellen, dass nur das Freshrpms und DAG Repository verwendet wird und es zu keinen Überschneidungen kommt, wird in der dag.repo und freshrpms.repo Datei die Option enabled wieder auf enabled=1 und dafür in den Dateien fedora-base.repo und fedora-updates.repo die Option auf enabled=0 gesetzt.

Hat man bereits mit den beiden Repositories gearbeitet, kann ebenfalls wie bei den Fedora Paketen zuerst eine Abfrage der installierten Pakete mit # yum list installed paketname1* paketname2* … durchgeführt werden.

Die fehlenden Pakete werden installiert mit

# yum install paketname paketname-devel

Wenn nur das Entwicklerpaket fehlt mit

# yum install paketname-devel

Das RealPlayer Paket
  1. Download der RealPlayer Linuxversion als RPM.
  2. RealPlayer installieren mit

    # rpm -ivh RealPlayerVersion.rpm
  3. Symbolischen Link für die Real Codecs anlegen mit

    # ln -s /usr/local/RealPlayer/codecs/ /usr/lib/real
Installation zusätzlicher Codecs und Bibliotheken

Viele Codecs / Formate wie z. B. Quicktime werden von MPlayer über Codecs / Bibliotheken eingebunden.

MPlayer Codecarchive
  1. Download folgender Codec Archive:
  2. Für die Codec Archive werden zwei Verzeichnisse angelegt:

    # mkdir /usr/lib/codecs

    # mkdir /usr/lib/win32
  3. Die drei Archive werden in die erstellten Verzeichnisse entpackt:

    # tar --no-same-owner --strip-path=1 -xjf all-version.tar.bz2 -C /usr/lib/codecs/

    # tar --no-same-owner --strip-path=1 -xjf qt5dlls-20040626.tar.bz2 -C /usr/lib/win32/

    # tar --no-same-owner --strip-path=1 -xjf qtextras-20041107.tar.bz2 -C /usr/lib/win32/
LIVE

LIVE dient dem Abspielen von RTP/RTSP Audio- und Videostreams über die Aufrufe

# mplayer rtsp://serveradresse/streamdateiname

# mplayer sdp://sdpdateiname.sdp

Download des LIVE Quellcodes

Die folgenden Schritte zur Installation von LIVE werden als normaler Benutzer in einer zweiten Konsole begonnen:

  1. Entpacken des LIVE Quellcodes mit

    # tar -xzf live-latest.tar.gz
  2. In das LIVE Quellcodeverzeichnis wechseln mit

    # cd live
  3. Mit einem Editor in der Datei config.linux die Zeile

    CPLUSPLUS_FLAGS = $(COMPILE_OPTS) -Wall -DBSD=1

    ändern in

    CPLUSPLUS_FLAGS = $(COMPILE_OPTS) -Wall -DBSD=1 -Wno-deprecated
  4. Den Quellcode kompilieren mit

    # ./genMakefiles linux

    # make
  5. Zum root Benutzer wechseln mit

    # su root
  6. Verschieben des Live Verzeichnisses nach /usr/lib/live mit

    # mv ../live/ /usr/lib/
Installation der RPM Pakete / 2. Teil
MPlayer
  1. Das MPlayer Source RPM "mplayer-version.src.rpm" herunterladen
  2. Das Source RPM entpacken mit

    # rpm -ivh mplayer-version.src.rpm
  3. In das Verzeichnis für die Kompilieranweisungen wechseln mit

    # cd /usr/src/redhat/SPECS/
  4. Mit einem Editor in der Datei mplayer.spec die Zeile (ca. Z. 185)

    --with-reallibdir=%{_libdir}/win32 \

    ersetzen durch

    --with-reallibdir=%{_libdir}/real \
    --with-xanimlibdir=%{_libdir}/codecs \
    --with-livelibdir=%{_libdir}/live \
  5. Die MPlayer RPM Pakete erstellen mit

    # rpmbuild -bb --without lirc mplayer.spec

    Die modifizierte mplayer.spec Datei kann archiviert werden, um damit zu einem späteren Zeitpunkt eine neue Version des MPlayers zu kompilieren.
  6. In das Verzeichnis mit den erstellten RPM Paketen wechseln mit

    # cd /usr/src/redhat/RPMS/plattform

    "plattform" ist eines der Unterverzeichnisse athlon, i386, i486, i586 oder i686.
  7. Die MPlayer Pakete installieren mit

    # rpm -ivh libpostproc-version.rpm

    # rpm -ivh mplayer-version.rpm
MPlayer-Skins

Das MPlayer-Skins RPM enthält eine Reihe von grafischen Programmoberflächen ("Skins") für MPlayer, mit denen man das Aussehen des MPlayers abändern kann.

  • Das MPlayer-Skins RPM installieren mit

    # yum install mplayer-skins
Abschließende Arbeiten
  • Die beiden Fedora Repositories werden wieder für Yum aktiviert, indem man in den beiden Dateien fedora-base.repo und fedora-updates.repo die Option enabled=0 auf enabled=1 zurückstellt.
  • Um als normaler Benutzer für das Timing die RTC ("Echtzeituhr") zu benutzen, wird in der root Konsole folgender Befehl ausgeführt, der einen entsprechenden Kernelparametereintrag in die /etc/sysctl.conf schreibt:

    # echo dev.rtc.max-user-freq = 1024 >> /etc/sysctl.conf

    Danach wird die root Konsole geschlossen.
  • Um für den MPlayer eine Anfangskonfiguration zu besitzen und die Konfiguration später als Benutzer anzupassen wird mit dem normalen Benutzeraccount ein .mplayer Unterverzeichnis im Heimatverzeichnis des Benutzers erstellt und die in der Dokumentation von MPlayer enthaltenen Konfigurationsdateien in das .mplayer Verzeichnis kopiert:

    # mkdir ~/.mplayer && cp /usr/share/doc/mplayer-1.0/*.conf ~/.mplayer/ && mv ~/.mplayer/example.conf ~/.mplayer/config

    Informationen zum Inhalt und zur Anpassung der Konfigurationsdateien finden sich in der MPlayer Dokumentation und in der MPlayer Manualpage, die man in der Konsole mit # man mplayer aufrufen kann.
  • Beim Abspielen von Dateien oder Streams, die mit dem Windows Media Format Version 9 codiert sind, kann es zu Problemen mit den prelink und exec-shield Funktionen von Fedora Core kommen.
    Prelink ist ein Programm, das Abhängigkeiten zwischen Bibliotheken und Programm feststellt, diese Informationen in Bibliotheken oder Programmen speichert, was den Startprozess von Programmen verkürzt. Exec-Shield ist eine Schutzfunktion, die vor bestimmten Speicherpufferüberläufen schützt, die durch schadhafte Programme bewirkt werden und so die Sicherheit erhöht.

    Beide Funktionen verhindern das korrekte Laden der Windows Media 9 Bibliotheken durch MPlayer und stören die Interaktion zwischen MPlayer und den Windows Bibliotheken.

    Will man trotzdem mit MPlayer diese Daten abspielen, muss man, bei Verzicht auf den Sicherheitsgewinn, Exec-Shield deaktivieren (die einzelnen Schritte sind u. U. zeitintensiv):
    1. Als root die Datei /etc/sysconfig/prelink mit einem Editor öffnen
    2. die Zeile

      PRELINK_OPTS=-mR

      ändern in

      PRELINK_OPTS="-m --no-exec-shield"

      für den nächsten automatischen Prelinklauf
    3. Prelink abschalten mit

      # prelink -u -a
    4. Prelink aktivieren mit

      # prelink -a -m --no-exec-shield
    5. Exec-Shield für MPlayer deaktivieren mit

      # execstack -s /usr/bin/mplayer
  • Zur Integration des MPlayers in den Webbrowser Firefox kann man entweder das mozplugger oder mplayerplug-In Plugin als RPM herunterladen und mit # rpm -ivh pluginname.rpm installieren.
The End

Der Programmname der grafischen Version des MPlayers heißt gmplayer, der Programmname der Konsoleversion mplayer.

Die grafische Version wird also über den Aufruf von gmplayer gestartet, mit dem ein Benutzermenü zur Verfügung steht, über das z. B. Dateien oder DVDs aufgerufen werden. Dateien, Internetstreams oder DVDs werden in der Konsole mit # mplayer [optionen] datei|url… abgespielt.

Nähere Informationen zur Anwendung in der Konsole finden sich in der englischsprachigen Dokumentation (die deutschsprachige Version ist total veraltet) im Kapitel Usage, Informationen zur Handhabung von CDs/VCDs/DVDs im Kapitel CD/DVD usage

Mplayer

MPlayer mit OSD Anzeige, XFce Skin, Menü und Linus Torvalds als Genie in der ARTE Dokumentation "Codename: Linux".
[ Top | Zurück ]