[HowTo] Ubuntu 10.10 - mplayer multithreading

whirpool

New member
Themenstarter
Registriert
14 Dez. 2010
Beiträge
289
Moinmoin!

Auch wenn Totem, vlc und der mplayer schon von hausaus eine beachtliche Performance (im Vergleich zu Win7) bei 1080p Videos an den Tag bringen, so sind bei sehr aufwendigen Szenen doch nochmal Ruckler drin die ich beseitigt wissen wollte.
Da ich nur eine Intel 4500MHD an Bord habe, deren GPU-Beschleunigung (Intel Clear Video) unter Linux bisher nicht funktioniert, bleibt nur die Möglichkeit den T6570 (2x2.1GHz) mit der Dekodierung zu quälen.

Totem, vlc und mplayer nutzen standardmäßig nur einen Thread, und damit nur einen CPU-Kern, und ich wusste noch aus meiner BSD-Zeit das man den mplayer auch für multithreading kompilieren kann um das gesamte CPU-Potenzial auszuschöpfen.

Nachdem ich die letzten Tage vergeblich versucht habe eine multithreading Version des mplayers zu bekommen/kompilieren habe ich endlich eine funktionierende Variante gefunden die ich hier mit eventuellen Leidesgenossen Teilen möchte.

Multithreading mplayer:
Code:
sudo apt-get build-dep mplayer
sudo apt-get install build-essential git-core autoconf libtool
cd ~
git clone git://repo.or.cz/mplayer-build.git
cd mplayer-build
./enable-mt
./init --shallow
make -j 6
Damit liegt dann in ~/mplayer-build/mplayer/mplayer die fertige Version des mplayers mit Multithreading.

Damit der neue mplayer Systemweit durch den Befehl 'mplayer' genutzt wird kann man einen Alias in der '~/.bash_aliases' anlegen.
Code:
echo "alias mplayer=~/mplayer-build/mplayer/mplayer" >> ~/.bash_aliases

Um mplayer mit mehreren Threads zu nutzen muss man ihm entweder den Parameter '-lavdopts threads=2' beim Start mitgeben, oder den Wert in der '~/.mplayer/config' festsetzen. (das 'threads=2' jeweils nach Anzahl der Kerne anpassen)
Code:
echo "lavdopts=fast=1:threads=2" >> ~/.mplayer/config
Quelle: Linux Notes


SMPlayer anpassen:
Damit der SMPlayer mit dem neuen mplayer arbeitet sollte man noch 3 Einstellungen vornehmen um auf der sicheren Seite zu sein:
1. Einstellungen->Allgemein->Allgemein-Ausführbare MPlayer-Datei
Den Pfad auf die Position des neuen mplayers ändern: /home/username/mplayer-build/mplayer/mplayer

2. Einstellungen->Erweitert->Optionen für Mplayer->Optionen
Hier noch den Parameter angeben mit wievielen Treads mplayer gestartet werden soll(2/4/etc..): -lavdopts threads=2

3. Einstellungen->Leistungsverhalten->Leistungsverhalten->Threads zur Dekodierung(MPEG-1/2 and H.264)
Nocheinmal die Anzahl der Threads/Kerne angeben(2/4/etc..)

Ob 2+3 wirklich nötig sind kann ich nicht sagen, aber schaden tut es sicherlich nicht diese Optionen nocheinmal explizit anzugeben.

So, das wars.
Damit steht dem intensiven und ruckelfreien 1080p-Videoschaun unter Ubuntu nix mehr im weg :o)

Grüße,
whirpool
 
es gibt inzwischen unterstützung für den 4500mhd-chip unter linux. bisher hats bei mir unter ubuntu mit vlc noch nicht sonderlich gut funktioniert, aber prinzipiell gehts. dem in den normalen paketquellen angebotenen treiber fehlen aber einige codecs. im xorg-edgers-ppa gibts ne alternative version mit vollem funktionsumfang. du brauchst das paket "i965-va-driver"
 
Hey, danke für den Hinweis yatpu.
Auf diese Pakete bin ich trotz finger-wund-googelns nicht gestossen.

Leider habe ich es aber nicht hinbekommen mplayer-vaapi zum laufen zu bringen und für die edgers-ppa bin ich mir noch zu unsicher.
Zudem laufen die 1080p-Videos jetzt ja flüssig bei gesichteten max 55% CPU-Last. Ist also noch Luft :o)

Fals du aber Lust, Laune und Zeit hast ein HowTo für mplayer-vaapi unter Maverick zu schreiben soll es mir sehr willkommen sein :o)
Oder fals du ein HowTo kennst, dies bitte hier verlinken. Ich habe leider nur Schrott gefunden der mich nicht ans Ziel gebracht hat.

Gruß,
whirpool
 
  • ok1.de
  • ok2.de
  • thinkstore24.de
  • Preiswerte-IT - Gebrauchte Lenovo Notebooks kaufen

Werbung

Zurück
Oben