unofficial mirror of help-guix@gnu.org 
 help / color / mirror / Atom feed
From: Efraim Flashner <efraim@flashner.co.il>
To: "Ludovic Courtès" <ludo@gnu.org>
Cc: help-guix@gnu.org
Subject: Re: libvdpau: cannot open shared object
Date: Tue, 12 Dec 2017 21:58:26 +0200	[thread overview]
Message-ID: <20171212195826.GC1873@macbook41> (raw)
In-Reply-To: <87mv2nopz8.fsf@gnu.org>


[-- Attachment #1.1: Type: text/plain, Size: 1319 bytes --]

On Tue, Dec 12, 2017 at 05:44:43PM +0100, Ludovic Courtès wrote:
> Hi!
> 
> Efraim Flashner <efraim@flashner.co.il> skribis:
> 
> > I just want to add that I ran:
> > 'guix environment --ad-hoc vdpauinfo -- vdpauinfo'
> > on my x86_64 GuixSD machine and I got the following:
> >
> > display: :0.0   screen: 0
> > Failed to open VDPAU backend libvdpau_i965.so: cannot open shared object file: No such file or directory
> > Error creating VDPAU device: 1
> 
> Same here.
> 
> I searched for “libvdpau_i965.so” on the intertubes and it seems to be a
> problem “everyone has.”  For instance:
> 
>   https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=869815
> 
> So it seems that we lack a driver package.
> 
> Ludo’.

here's a patch for libvdpau-va-gl. after setting 'VDPAU_DRIVER=va_gl'
and running 'guix environment --ad-hoc libvdpau-va-gl vdpauinfo -- vdpauinfo'
I get:
display: :0.0   screen: 0
Failed to open VDPAU backend libvdpau_va_gl.so: cannot open shared object file: No such file or directory
Error creating VDPAU device: 1
so it still needs some more work

-- 
Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

[-- Attachment #1.2: 0001-gnu-Add-libvdpau-va-gl.patch --]
[-- Type: text/plain, Size: 4571 bytes --]

From da659401a0116d0810f003769c933253f5b18f4c Mon Sep 17 00:00:00 2001
From: Efraim Flashner <efraim@flashner.co.il>
Date: Tue, 12 Dec 2017 21:44:49 +0200
Subject: [PATCH] gnu: Add libvdpau-va-gl.

* gnu/packages/video.scm (libvdpau-va-gl): New variable.
* gnu/packages/patches/libvdpau-va-gl-unbundle.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
---
 gnu/local.mk                                       |  1 +
 gnu/packages/patches/libvdpau-va-gl-unbundle.patch | 35 ++++++++++++++++++++++
 gnu/packages/video.scm                             | 35 ++++++++++++++++++++++
 3 files changed, 71 insertions(+)
 create mode 100644 gnu/packages/patches/libvdpau-va-gl-unbundle.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 46829756b..2cfd35cd8 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -834,6 +834,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/libunistring-gnulib-multi-core.patch	\
   %D%/packages/patches/libusb-0.1-disable-tests.patch		\
   %D%/packages/patches/libusb-for-axoloti.patch			\
+  %D%/packages/patches/libvdpau-va-gl-unbundle.patch		\
   %D%/packages/patches/libvpx-CVE-2016-2818.patch		\
   %D%/packages/patches/libxcb-python-3.5-compat.patch		\
   %D%/packages/patches/libxml2-CVE-2016-4658.patch		\
diff --git a/gnu/packages/patches/libvdpau-va-gl-unbundle.patch b/gnu/packages/patches/libvdpau-va-gl-unbundle.patch
new file mode 100644
index 000000000..b15e15c2a
--- /dev/null
+++ b/gnu/packages/patches/libvdpau-va-gl-unbundle.patch
@@ -0,0 +1,35 @@
+From 18e3ff648356cf06a39372aa4a4bbf2732d9d0f4 Mon Sep 17 00:00:00 2001
+From: Efraim Flashner <efraim@flashner.co.il>
+Date: Tue, 12 Dec 2017 21:36:44 +0200
+Subject: [PATCH] don't use bundled libvdpau headers
+
+---
+ CMakeLists.txt | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 0484179..e950707 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -9,16 +9,17 @@ find_package(PkgConfig REQUIRED)
+ find_package(X11 REQUIRED)
+ pkg_check_modules(LIBVA      libva-x11  REQUIRED)
+ pkg_check_modules(LIBGL      gl         REQUIRED)
++pkg_check_modules(LIBVDPAU   vdpau      REQUIRED)
+ 
+ set(DRIVER_NAME "vdpau_va_gl" CACHE STRING "driver name")
+ set(LIB_SUFFIX "" CACHE STRING "library path suffix (if needed)")
+ set(LIB_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}/vdpau" CACHE PATH "library installation path")
+ 
+ include_directories (
+-    3rdparty
+     ${X11_INCLUDE_DIRS}
+     ${LIBVA_INCLUDE_DIRS}
+     ${LIBGL_INCLUDE_DIRS}
++    ${LIBVDPAU_INCLUDE_DIRS}
+     ${GENERATED_INCLUDE_DIRS}
+     ${CMAKE_BINARY_DIR}
+ )
+-- 
+2.15.1
+
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 0bd1be6e6..d8f8081fe 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -1864,6 +1864,41 @@ present in modern GPUs.")
 implementation.")
     (license (license:x11-style "file://COPYING"))))
 
+(define-public libvdpau-va-gl
+  (package
+    (name "libvdpau-va-gl")
+    (version "0.4.2")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (string-append "https://github.com/i-rinat/libvdpau-va-gl/"
+                            "releases/download/v" version "/libvdpau-va-gl-"
+                            version ".tar.gz"))
+        (sha256
+         (base32
+          "1x2ag1f2fwa4yh1g5spv99w9x1m33hbxlqwyhm205ssq0ra234bx"))
+        (patches (search-patches "libvdpau-va-gl-unbundle.patch"))
+        (modules '((guix build utils)))
+        (snippet '(delete-file-recursively "3rdparty"))))
+    (build-system cmake-build-system)
+    (arguments
+     '(#:tests? #f)) ; Tests require a running X11 server, with VA-API support.
+    (native-inputs
+     `(("libvdpau" ,libvdpau)
+       ("pkg-config" ,pkg-config)))
+    (inputs
+     `(("libva" ,libva)
+       ("mesa" ,mesa)))
+    (home-page "https://github.com/i-rinat/libvdpau-va-gl")
+    (synopsis "VDPAU driver with VA-API/OpenGL backend")
+    (description
+     "Many applications can use VDPAU to accelerate portions of the video
+decoding process and video post-processing to the GPU video hardware.  Since
+there is no VDPAU available on Intel chips, they fall back to different drawing
+techniques.  This driver uses OpenGL under the hood to accelerate drawing and
+scaling and VA-API (if available) to accelerate video decoding.")
+    (license license:expat)))
+
 (define-public recordmydesktop
   (package
     (name "recordmydesktop")
-- 
2.15.1


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

  reply	other threads:[~2017-12-12 19:58 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-12-10 14:14 libvdpau: cannot open shared object Marco van Hulten
2017-12-10 14:30 ` ng0
2017-12-10 15:04   ` Marco van Hulten
2017-12-10 20:08 ` Efraim Flashner
2017-12-12 16:44   ` Ludovic Courtès
2017-12-12 19:58     ` Efraim Flashner [this message]
2017-12-14  9:07       ` Ludovic Courtès
2017-12-15  6:38         ` Efraim Flashner
2017-12-15 11:02           ` Ludovic Courtès
2017-12-15 12:18             ` Efraim Flashner
2017-12-15 14:31               ` Ludovic Courtès
2017-12-16  8:08                 ` Marco van Hulten
2017-12-16 19:00                   ` Ricardo Wurmus
2017-12-16 17:05                 ` Efraim Flashner
2017-12-18 20:40                   ` Ludovic Courtès

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20171212195826.GC1873@macbook41 \
    --to=efraim@flashner.co.il \
    --cc=help-guix@gnu.org \
    --cc=ludo@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).