Σελίδα 1 από 4

Ενεργοποίηση vdpau σε κάρτες Intel

ΔημοσίευσηΔημοσιεύτηκε: 13 Μάιος 2014, 14:17
από Learner
Το VDPAU(Video Decode and Presentation API for Unix) είναι μια ΕΛ/ΛΑΚ βιβλιοθήκη(libvdpau) που σχεδιάστηκε αρχικά από την Nvidia για τις κάρτες της σειράς GeForce 8 και νεότερες. Η συγκεκριμένη βιβλιοθήκη επιτρέπει το λεγόμενο Hardware Acceleration μέσω της GPU(Graphics Processing Unit).

Το θέμα ανοίγεται στην ενότητα Ubuntu+1 διότι αφορά το πειραματικό πακέτο, ονόματι libvdpau-va-gl ή libvdpau-va-gl1



Για το VDPAU σε σχέση με τον nouveau, δείτε εδώ.



Το hardware που μπορεί να δουλέψει σωστά με την συγκεκριμένη βιβλιοθήκη, σύμφωνα με την σελίδα της Intel, είναι:
  • Intel® GMA X4500HD.
  • Intel® HD Graphics (in Intel® 2010 Core™ i7/i5/i3 processor family).
  • Intel® HD Graphics 2000/3000 (in 2nd Generation Intel® Core™ i7/i5/i3 Processor family).
  • Intel® HD Graphics 2500/4000 (in 3nd Generation Intel® Core™ i7/i5/i3 Processor family).

Το πακέτο αυτό στοχεύει σε κάρτες γραφικών (ή πιο συγκεκριμένα chipstets) που δεν έχουν κάποιο δικό τους τέτοιο API. Αν δούμε στην διαδρομή(για 64bit συστήματα)
Κώδικας: Επιλογή όλων
ls /usr/lib/x86_64-linux-gnu/vdpau/

θα δούμε βιβλιοθήκες για nouveau (ή και για radeon), όχι όμως για Intel.

Το libvdpau-va-gl1 είναι ένας οδηγός VDPAU με το backend OpenGL/VAAPI.
Όπως γράφει και στο descritpion του πακέτου
Many applications can use VDPAU to accelerate portions of the video
decoding process and video post-processing to the GPU video
hardware. Unfortunately, there is no such library for many graphic
chipsets. Some applications also support VA-API but many of them,
including Adobe Flash Player, don't.
This library proposes a generic VDPAU library. It uses OpenGL under
the hood to accelerate drawing and scaling and VA-API (if available)
to accelerate video decoding.


Ενεργοποίηση σε κάρτες γραφικών Intel
Εγκαθιστούμε τα παρακάτω πακέτα
Κώδικας: Επιλογή όλων
sudo apt-get install mesa-vdpau-drivers vdpauinfo vdpau-va-driver libvdpau-va-gl1 dpkg-dev libva-intel-vaapi-driver


Αφού εγκατασταθούν σωστά, πλέον έχουμε διαθέσιμες τις απαραίτητες βιβλιοθήκες, καθώς και ένα configuration αρχείο μέσα στην διαδρομή /etc/X11/Xsession.d/ ονόματι 20vdpau-va-gl. Αν διαβάσετε το αρχείο θα δείτε πως όλα είναι comment (με άλλα λόγια το αρχείο δεν είναι προς ανάγνωση από τον Χ - δεν φορτώνεται).

Όπως προαναφέραμε το πακέτο είναι ακόμη σε πειραματική μορφή. Τώρα όμως που έχουμε τα απαραίτητα εγκατεστημένα, μπορούμε να το δοκιμάσουμε.
Ανοίγουμε ένα τερματικό και δίνουμε
Κώδικας: Επιλογή όλων
export VDPAU_DRIVER=va_gl
firefox

με αυτόν τον τρόπο θα ανοίξουμε την εφαρμογή firefox με hardware acceleration και καλό θα είναι να πάμε π.χ. στο youtube να προσπαθήσουμε να δούμε ένα βίντεο. Εκεί θα παρατηρήσουμε στο τερματικό τα παρακάτω μηνύματα
Μορφοποιημένος Κώδικας: Επιλογή όλων
libva info: VA-API version 0.35.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_0_35
libva info: va_openDriver() returns 0

αυτό που μας ενδιαφέρει εδώ, είναι το: va_openDriver() returns 0 . Αν γυρίσει άλλη τιμή, π.χ -1 (va_openDriver() returns -1) , τότε κάτι δεν πήγε καλά και δεν φορτώθηκε η βιβλιοθήκη που έπρεπε ή δεν βρέθηκε...κλπ.

Το ίδιο πείραμα μπορείτε να κάνετε και με άλλες εφαρμογές που σχετίζονται με αναπαραγωγή βίντεο.. π.χ
Κώδικας: Επιλογή όλων
export VDPAU_DRIVER=va_gl
vlc


Αν είμαστε ευχαριστημένοι από την απόδοση, τότε μπορούμε να το ενεργοποιήσουμε μόνιμα κάνοντας μια επεξεργασία στο αρχείο
Κώδικας: Επιλογή όλων
gksudo gedit /etc/X11/Xsession.d/20vdpau-va-gl

Θα πρέπει να κάνουμε uncomment δυο γραμμές εκεί μέσα και το αρχείο να γίνει όπως παρακάτω
Μορφοποιημένος Κώδικας: Επιλογή όλων
# To enable the use of libvdpau-va-gl as the default VDPAU driver,
# uncommont the following lines. See
# `/usr/share/doc/libvdpau-va-gl1/README.Debian` for more details.

[ ! -f /usr/lib/$(dpkg-architecture -qDEB_HOST_MULTIARCH)/vdpau/libvdpau_va_gl.so.1 ] || \
export VDPAU_DRIVER=va_gl

και φυσικά να το αποθηκεύσουμε.

Μπορούμε να διαβάσουμε τα περί πειραματικού πακέτου στο /usr/share/doc/libvdpau-va-gl1/README.Debian με έναν editor.

Re: Ενεργοποίηση vdpau σε κάρτες Intel - Ubuntu 14.04/14.10

ΔημοσίευσηΔημοσιεύτηκε: 13 Μάιος 2014, 16:51
από the_eye
Ποιες intel κάρτες υποστηρίζει ;

Re: Ενεργοποίηση vdpau σε κάρτες Intel - Ubuntu 14.04/14.10

ΔημοσίευσηΔημοσιεύτηκε: 13 Μάιος 2014, 17:03
από Learner
the_eye έγραψε:Ποιες intel κάρτες υποστηρίζει ;

Υποτίθεται όλες. Γι' αυτό δεν έγραψα συγκεκριμένα μοντέλα. (δεν βρήκα κάπου να γράφει κάτι για συγκεκριμένες Intel). Η βιβλιοθήκη είναι «γενικών καθηκόντων» για όσα chipstet δεν έχουν δικό τους VDPAU. Αν κοιτάξεις(για 64bit σύστημα) στο
Κώδικας: Επιλογή όλων
ls /usr/lib/x86_64-linux-gnu/vdpau/
θα δεις nouveau, radeon..αλλά όχι intel.

Re: Ενεργοποίηση vdpau σε κάρτες Intel - Ubuntu 14.04/14.10

ΔημοσίευσηΔημοσιεύτηκε: 13 Μάιος 2014, 17:09
από the_eye
Δουλεύει και σε 32bit ;

Re: Ενεργοποίηση vdpau σε κάρτες Intel - Ubuntu 14.04/14.10

ΔημοσίευσηΔημοσιεύτηκε: 13 Μάιος 2014, 17:12
από Learner
the_eye έγραψε:Δουλεύει και σε 32bit ;

Δεν το ξέρω σίγουρα.
Για να μην αναφέρει απαιτήσεις αρχιτεκτονικής το πακέτο, υποθέτω ναι. Δοκίμασε το να μας πεις εσύ που έχεις 32bit ;)

Re: Ενεργοποίηση vdpau σε κάρτες Intel - Ubuntu 14.04/14.10

ΔημοσίευσηΔημοσιεύτηκε: 13 Μάιος 2014, 17:39
από the_eye
Το δοκίμασα αλλά δεν ...
Πρέπει να ειναι για intel gpu που είναι σε i3 και πάνω.

Re: Ενεργοποίηση vdpau σε κάρτες Intel - Ubuntu 14.04/14.10

ΔημοσίευσηΔημοσιεύτηκε: 13 Μάιος 2014, 18:19
από Learner
the_eye έγραψε:Το δοκίμασα αλλά δεν ...
Πρέπει να ειναι για intel gpu που είναι σε i3 και πάνω.

Σωστά. !!
Το πρόσθεσα στο αρχικό ποστ.

Re: Ενεργοποίηση vdpau σε κάρτες Intel - Ubuntu 14.04/14.10

ΔημοσίευσηΔημοσιεύτηκε: 13 Μάιος 2014, 18:55
από the_eye
Κρίμα θα ανέβαζε τον atom κατά πολύ στο πρόβλημα HD video.
Κώδικας: Επιλογή όλων
$ vainfo
libva info: VA-API version 0.35.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/i386-linux-gnu/dri/i915_drv_video.so
libva info: va_openDriver() returns -1
vaInitialize failed with error code -1 (unknown libva error),exit


αν και τρέχει opengl ο driver
Κώδικας: Επιλογή όλων
$ glxinfo | grep OpenGL
OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) IGD x86/MMX/SSE2
OpenGL version string: 1.4 Mesa 10.1.0
OpenGL extensions:

Re: Ενεργοποίηση vdpau σε κάρτες Intel - Ubuntu 14.04/14.10

ΔημοσίευσηΔημοσιεύτηκε: 13 Μάιος 2014, 19:46
από sotos21
the_eye
Σε εμένα που έχω radeon και ενώ η vdpauinfo ήταν σωστή, η vainfo έβγαζε σφάλμα όπως σε εσένα αλλά σε διαφορετική βιβλιοθήκη, συγκεκριμένα στην
r600_drv_video.so.
Βρήκα λοιπόν την βιβλιοθήκη, την έβαλα στην διαδρομή που την έψαχνε και τέλος το σφάλμα
Κώδικας: Επιλογή όλων
sotiris@ubuntu:~$ DRI_PRIME=1 vainfo
libva info: VA-API version 0.35.1
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/r600_drv_video.so
libva info: Found init function __vaDriverInit_0_32
libva info: va_openDriver() returns 0
vainfo: VA-API version: 0.35 (libva 1.3.1)
vainfo: Driver version: Splitted-Desktop Systems VDPAU backend for VA-API - 0.7.3
vainfo: Supported profile and entrypoints
      VAProfileMPEG2Simple            :   VAEntrypointVLD
      VAProfileMPEG2Main              :   VAEntrypointVLD
      VAProfileH264Baseline           :   VAEntrypointVLD
      VAProfileH264Main               :   VAEntrypointVLD
      VAProfileH264High               :   VAEntrypointVLD
      VAProfileVC1Simple              :   VAEntrypointVLD
      VAProfileVC1Main                :   VAEntrypointVLD
      VAProfileVC1Advanced            :   VAEntrypointVLD
sotiris@ubuntu:~$

Με λίγα λόγια προτείνω να εγκαταστήσεις τα πακέτα που λέει ο επίτιμος, μετά να σου ανεβάσει κάπου την βιβλιοθήκη και να την βάλεις στο
/usr/lib/i386-linux-gnu/dri/
Δείξε μας και την vdpauinfo.

Re: Ενεργοποίηση vdpau σε κάρτες Intel - Ubuntu 14.04/14.10

ΔημοσίευσηΔημοσιεύτηκε: 13 Μάιος 2014, 19:52
από the_eye
Κώδικας: Επιλογή όλων
$ vdpauinfo
display: :0.0   screen: 0
Failed to open VDPAU backend libvdpau_i915.so: cannot open shared object file: No such file or directory
Error creating VDPAU device: 1


Κώδικας: Επιλογή όλων
$ ls -l /usr/lib/i386-linux-gnu/dri
σύνολο 49872
-rw-r--r-- 1 root root   17776 Απρ  15 18:32 dummy_drv_video.so
-rw-r--r-- 5 root root 5468924 Απρ  14 10:13 i915_dri.so
-rw-r--r-- 5 root root 5468924 Απρ  14 10:13 i965_dri.so
-rw-r--r-- 1 root root 1527496 Απρ  17 00:51 i965_drv_video.so
-rw-r--r-- 1 root root 4262808 Απρ  14 10:13 nouveau_dri.so
-rw-r--r-- 5 root root 5468924 Απρ  14 10:13 nouveau_vieux_dri.so
lrwxrwxrwx 1 root root      18 Απρ  13  2013 nvidia_drv_video.so -> vdpau_drv_video.so
-rw-r--r-- 5 root root 5468924 Απρ  14 10:13 r200_dri.so
-rw-r--r-- 1 root root 3496756 Απρ  14 10:13 r300_dri.so
-rw-r--r-- 1 root root 4029260 Απρ  14 10:13 r600_dri.so
-rw-r--r-- 5 root root 5468924 Απρ  14 10:13 radeon_dri.so
-rw-r--r-- 1 root root 3369168 Απρ  14 10:13 radeonsi_dri.so
lrwxrwxrwx 1 root root      18 Απρ  13  2013 s3g_drv_video.so -> vdpau_drv_video.so
-rw-r--r-- 1 root root 3516588 Απρ  14 10:13 swrast_dri.so
-rw-r--r-- 1 root root  100192 Απρ  13  2013 vdpau_drv_video.so
-rw-r--r-- 1 root root 3374200 Απρ  14 10:13 vmwgfx_dri.so


Λες να βάλω το /usr/lib/i386-linux-gnu/dri/i915_drv_video.so από τον Learner ;