Obsah

VDPAU v VLC media playeru

Předem bych chtěl upozornit, že návod jsem vytvářel pod Ubuntu 9.10 KK, takže nevím, jestli postup bude stejný u nových či starších distribucí. Takže než začnete, zkontrolujte, jestli vaše karta podporuje tuto technologii a sice na Wikipedii pro VDPAU. Pokud vlastníte jeden z čipů ze seznamu, tak stačí nahrát poslední verzi ovladače grafické karty ze stránek NVIDIA

Potřebný software

v terminálu spustíte tyto příkazy:

sudo apt-get update
sudo apt-get build-dep ffmpeg vlc

To druhé nemusí projít a uvidíte dál, jestli to nebude vadit.

sudo apt-get install build-essential libtool automake git-core xcb libdrm-dev

a ještě:

sudo apt-get install xorg-dev

Získáte zdrojové kódy

Po přípravě systému doplníte potřebné zdrojové kódy touto sekvencí

mkdir ~/vdpau_proj
cd ~/vdpau_proj
wget http://www.splitted-desktop.com/~gbeauchesne/libva/libva-latest.tar.gz
tar xvf libva-latest.tar.gz
wget http://www.splitted-desktop.com/~gbeauchesne/vdpau-video/vdpau-video-latest.tar.gz
tar xvf vdpau-video-latest.tar.gz
git clone git://git.ffmpeg.org/ffmpeg/
cd ffmpeg
git clone git://git.ffmpeg.org/libswscale/
cd ..
git clone git://git.videolan.org/vlc.git

Kompilace

Nyní máte potřebné zdroje pohromadě a můžete zkompilovat jednotlivé projekty a to sekvencí. Typ: Pokud máme vícejádrový processor, můžeme kompilaci urychlit změnou příkazu „make“ na „make -j pocetjader+1“, což u dvoujádra znamená „make -j 3“.

for file in debian/patches/*.patch;do patch -p1 < $file;done

autoreconf -f -i
./configure
make
sudo make install

Pokud nevíte,stáhněte balíček z adresy http://www.splitted-desktop.com/~gbeauchesne/vdpau-video/ a v jeho adresáři po rozbalení pokračujte:

./configure
make
sudo make install
vainfo

Pokud výstup vypadá zhruba takto, tak je to dobré. Pokud nikoliv, tak pečlivě projdeme kompilační log a podíváme se jestli nebyly v průběhu překladu nějaké chyby a kompilační postup opakujeme.

libva: libva version 0.31.0-sds3
Xlib:  extension "XFree86-DRI" missing on display ":0.0".
libva: va_getDriverName() returns 0
libva: Trying to open /home/thresh/sandbox/lib/va/nvidia_drv_video.so
libva: va_openDriver() returns 0
vainfo: VA API version: 0.31
vainfo: Driver version: Splitted-Desktop Systems VDPAU backend for VA API - 0.5.2
vainfo: Supported profile and entrypoints
      VAProfileMPEG2Simple            : VAEntrypointVLD
      VAProfileMPEG2Main              : VAEntrypointVLD
      VAProfileH264Main               : VAEntrypointVLD
      VAProfileH264High               : VAEntrypointVLD
      VAProfileVC1Simple              : VAEntrypointVLD
      VAProfileVC1Main                : VAEntrypointVLD
      VAProfileVC1Advanced            : VAEntrypointVLD
sudo cp libavcodec/vaapi.h /usr/local/include/libavcodec/vaapi.h
./configure --enable-vdpau --enable-shared --disable-static --enable-debug
make
sudo make install
mkdir build
cd build
./configure --enable-libva
make
sudo make install

Spuštění

Po spuštění nějakého 720p či 1080p ve VLC playeru by mělo jít vidět značné odlehčení procesoru.

Odkazy