VDPAU v VLC media playeru

17.12.2010 19:29

 

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 https://www.splitted-desktop.com/~gbeauchesne/libva/libva-latest.tar.gz
tar xvf libva-latest.tar.gz
wget https://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".

  • Pro zkompilování libva (vejděte do adresáře libva)

 

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

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

 

  • Pro zkompilování VDPAU backendu

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

./configure
make
sudo make install

 

  • Malá přestávka od kompilací, teď spustíte příkaz

 

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

 

  • Pro kompilaci ffmpeg následující

 

sudo cp libavcodec/vaapi.h /usr/local/include/libavcodec/vaapi.h
./configure --enable-vdpau --enable-shared --disable-static --enable-debug
make
sudo make install

 

  • A nakonec kompilace VLC playeru

 

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.

 

 

Zdroj: wiki.ubuntu.cz