unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* [PATCH 0/2] vdpau and vdpauinfo
@ 2015-12-21 14:45 Efraim Flashner
  2015-12-21 14:45 ` [PATCH 1/2] gnu: Add libvdpau Efraim Flashner
                   ` (2 more replies)
  0 siblings, 3 replies; 11+ messages in thread
From: Efraim Flashner @ 2015-12-21 14:45 UTC (permalink / raw)
  To: guix-devel

2 new packages, useful for some of the video programs

Efraim Flashner (2):
  gnu: Add libvdpau.
  gnu: Add vdpauinfo.

 gnu/packages/video.scm | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 50 insertions(+)

-- 
2.6.4

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH 1/2] gnu: Add libvdpau.
  2015-12-21 14:45 [PATCH 0/2] vdpau and vdpauinfo Efraim Flashner
@ 2015-12-21 14:45 ` Efraim Flashner
  2015-12-21 14:45 ` [PATCH 2/2] gnu: Add vdpauinfo Efraim Flashner
  2015-12-26  5:51 ` [PATCH 0/2] vdpau and vdpauinfo Leo Famulari
  2 siblings, 0 replies; 11+ messages in thread
From: Efraim Flashner @ 2015-12-21 14:45 UTC (permalink / raw)
  To: guix-devel

* gnu/packages/video.scm (libvdpau): New variable.
---
 gnu/packages/video.scm | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 85b7414..5b3cccb 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -1301,3 +1301,29 @@ from many input sources such as webcams, X11 (for screencasting), PulseAudio,
 and JACK.")
     (home-page "https://obsproject.com")
     (license license:gpl2+)))
+
+(define-public libvdpau
+  (package
+    (name "libvdpau")
+    (version "1.1.1")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (string-append "https://secure.freedesktop.org/~aplattner/vdpau/"
+                            name "-" version ".tar.bz2"))
+        (sha256
+         (base32
+          "0dnpb0yh7v6rvckx82kxg045rd9rbsw25wjv7ad5n8h94s9h2yl5"))))
+    (build-system gnu-build-system)
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (inputs
+     `(("dri2proto" ,dri2proto)
+       ("libx11" ,libx11 "out")
+       ("libxext" ,libxext)))
+    (home-page "https://wiki.freedesktop.org/www/Software/VDPAU/")
+    (synopsis "Video Decode and Presentation API")
+    (description "VDPAU is the Video Decode and Presentation API for UNIX.  It
+provides an interface to video decode acceleration and presentation hardware
+present in modern GPUs.")
+    (license (license:x11-style "file://COPYING"))))
-- 
2.6.4

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH 2/2] gnu: Add vdpauinfo.
  2015-12-21 14:45 [PATCH 0/2] vdpau and vdpauinfo Efraim Flashner
  2015-12-21 14:45 ` [PATCH 1/2] gnu: Add libvdpau Efraim Flashner
@ 2015-12-21 14:45 ` Efraim Flashner
  2015-12-26  5:51 ` [PATCH 0/2] vdpau and vdpauinfo Leo Famulari
  2 siblings, 0 replies; 11+ messages in thread
From: Efraim Flashner @ 2015-12-21 14:45 UTC (permalink / raw)
  To: guix-devel

* gnu/packages/video.scm (vdpauinfo): New variable.
---
 gnu/packages/video.scm | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 5b3cccb..7cfa8d7 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -1327,3 +1327,27 @@ and JACK.")
 provides an interface to video decode acceleration and presentation hardware
 present in modern GPUs.")
     (license (license:x11-style "file://COPYING"))))
+
+(define-public vdpauinfo
+  (package
+    (name "vdpauinfo")
+    (version "1.0")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (string-append "https://secure.freedesktop.org/~aplattner/vdpau/"
+                            name "-" version ".tar.gz"))
+        (sha256
+         (base32
+          "1i2b0k9h8r0lnxlrkgqzmrjakgaw3f1ygqqwzx8w6676g85rcm20"))))
+    (build-system gnu-build-system)
+    (native-inputs
+     `(("pkg-config" ,pkg-config)
+       ("libx11" ,libx11)))
+    (propagated-inputs
+     `(("libvdpau" ,libvdpau)))
+    (home-page "https://wiki.freedesktop.org/www/Software/VDPAU/")
+    (synopsis "Tool to query the capabilities of a VDPAU implementation")
+    (description "Vdpauinfo is a tool to query the capabilities of a VDPAU
+implementation.")
+    (license (license:x11-style "file://COPYING"))))
-- 
2.6.4

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* Re: [PATCH 0/2] vdpau and vdpauinfo
  2015-12-21 14:45 [PATCH 0/2] vdpau and vdpauinfo Efraim Flashner
  2015-12-21 14:45 ` [PATCH 1/2] gnu: Add libvdpau Efraim Flashner
  2015-12-21 14:45 ` [PATCH 2/2] gnu: Add vdpauinfo Efraim Flashner
@ 2015-12-26  5:51 ` Leo Famulari
  2015-12-26 20:27   ` Efraim Flashner
  2 siblings, 1 reply; 11+ messages in thread
From: Leo Famulari @ 2015-12-26  5:51 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: guix-devel

On Mon, Dec 21, 2015 at 04:45:05PM +0200, Efraim Flashner wrote:
> 2 new packages, useful for some of the video programs
> 
> Efraim Flashner (2):
>   gnu: Add libvdpau.
>   gnu: Add vdpauinfo.

Are these useful as inputs to programs like VLC and mplayer?

> 
>  gnu/packages/video.scm | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 50 insertions(+)
> 
> -- 
> 2.6.4
> 
> 

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 0/2] vdpau and vdpauinfo
  2015-12-26  5:51 ` [PATCH 0/2] vdpau and vdpauinfo Leo Famulari
@ 2015-12-26 20:27   ` Efraim Flashner
  2015-12-28 19:59     ` Leo Famulari
  0 siblings, 1 reply; 11+ messages in thread
From: Efraim Flashner @ 2015-12-26 20:27 UTC (permalink / raw)
  To: Leo Famulari; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 744 bytes --]

On Sat, 26 Dec 2015 00:51:34 -0500
Leo Famulari <leo@famulari.name> wrote:

> On Mon, Dec 21, 2015 at 04:45:05PM +0200, Efraim Flashner wrote:
> > 2 new packages, useful for some of the video programs
> > 
> > Efraim Flashner (2):
> >   gnu: Add libvdpau.
> >   gnu: Add vdpauinfo.  
> 
> Are these useful as inputs to programs like VLC and mplayer?
> 

I would have to double-check, but libvdpau is the upstream name for vdpau,
and I'm pretty sure it would go in as a (propagated-?)input for vlc, mplayer
and mpv.

-- 
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 #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 0/2] vdpau and vdpauinfo
  2015-12-26 20:27   ` Efraim Flashner
@ 2015-12-28 19:59     ` Leo Famulari
  2015-12-28 23:01       ` Andreas Enge
  0 siblings, 1 reply; 11+ messages in thread
From: Leo Famulari @ 2015-12-28 19:59 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: guix-devel

On Sat, Dec 26, 2015 at 10:27:24PM +0200, Efraim Flashner wrote:
> On Sat, 26 Dec 2015 00:51:34 -0500
> Leo Famulari <leo@famulari.name> wrote:
> 
> > On Mon, Dec 21, 2015 at 04:45:05PM +0200, Efraim Flashner wrote:
> > > 2 new packages, useful for some of the video programs
> > > 
> > > Efraim Flashner (2):
> > >   gnu: Add libvdpau.
> > >   gnu: Add vdpauinfo.  
> > 
> > Are these useful as inputs to programs like VLC and mplayer?
> > 
> 
> I would have to double-check, but libvdpau is the upstream name for vdpau,
> and I'm pretty sure it would go in as a (propagated-?)input for vlc, mplayer
> and mpv.

I think they would be native-inputs for vlc, mplayer, and mpv, because
those programs are written (mostly) in C and C++, and so we can provide
the path to the store directory at compile-time.

I added libvdpau as a native-input to each and they build, but I don't
know how to test if the compilation is using libvdpau and using it
correctly.

But I do know that I could not play some video the other day with my
Guix-provided vlc due to some error about VDPAU ;)

Any thoughts?

> 
> -- 
> 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

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 0/2] vdpau and vdpauinfo
  2015-12-28 19:59     ` Leo Famulari
@ 2015-12-28 23:01       ` Andreas Enge
  2015-12-29  0:04         ` Leo Famulari
  0 siblings, 1 reply; 11+ messages in thread
From: Andreas Enge @ 2015-12-28 23:01 UTC (permalink / raw)
  To: Leo Famulari; +Cc: guix-devel

On Mon, Dec 28, 2015 at 02:59:29PM -0500, Leo Famulari wrote:
> I think they would be native-inputs for vlc, mplayer, and mpv, because
> those programs are written (mostly) in C and C++, and so we can provide
> the path to the store directory at compile-time.

No, they should be normal inputs - they should be compiled for the target
architecture where the binary is supposed to be run. The binaries themselves
will link dynamically to the libraries.

> I added libvdpau as a native-input to each and they build, but I don't
> know how to test if the compilation is using libvdpau and using it
> correctly.

You could search for it in the build log, in particular during the configure
phase. And you could run "ldd" on the resulting binary and check whether
the libraries appear.

Andreas

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 0/2] vdpau and vdpauinfo
  2015-12-28 23:01       ` Andreas Enge
@ 2015-12-29  0:04         ` Leo Famulari
  2015-12-29  2:40           ` Leo Famulari
  0 siblings, 1 reply; 11+ messages in thread
From: Leo Famulari @ 2015-12-29  0:04 UTC (permalink / raw)
  To: Andreas Enge; +Cc: guix-devel

On Tue, Dec 29, 2015 at 12:01:02AM +0100, Andreas Enge wrote:
> On Mon, Dec 28, 2015 at 02:59:29PM -0500, Leo Famulari wrote:
> > I think they would be native-inputs for vlc, mplayer, and mpv, because
> > those programs are written (mostly) in C and C++, and so we can provide
> > the path to the store directory at compile-time.
> 
> No, they should be normal inputs - they should be compiled for the target
> architecture where the binary is supposed to be run. The binaries themselves
> will link dynamically to the libraries.

Sorry, I meant to write inputs.

> 
> > I added libvdpau as a native-input to each and they build, but I don't
> > know how to test if the compilation is using libvdpau and using it
> > correctly.
> 
> You could search for it in the build log, in particular during the configure
> phase. And you could run "ldd" on the resulting binary and check whether
> the libraries appear.

Okay, I'll try that.

> 
> Andreas
> 

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 0/2] vdpau and vdpauinfo
  2015-12-29  0:04         ` Leo Famulari
@ 2015-12-29  2:40           ` Leo Famulari
  2015-12-29 12:14             ` Efraim Flashner
  0 siblings, 1 reply; 11+ messages in thread
From: Leo Famulari @ 2015-12-29  2:40 UTC (permalink / raw)
  To: Andreas Enge; +Cc: guix-devel

On Mon, Dec 28, 2015 at 07:04:11PM -0500, Leo Famulari wrote:
> On Tue, Dec 29, 2015 at 12:01:02AM +0100, Andreas Enge wrote:
> > > I added libvdpau as a native-input to each and they build, but I don't
> > > know how to test if the compilation is using libvdpau and using it
> > > correctly.
> > 
> > You could search for it in the build log, in particular during the configure
> > phase. And you could run "ldd" on the resulting binary and check whether
> > the libraries appear.
> 
> Okay, I'll try that.

I added libvdpau as an input to mpv, mplayer, and vlc. Here are the
results.

It seems to have worked for mpv, with ldd reporting a link to the VDPAU
library in the store.

It also seems to work for vlc, although it appears as a plugin in vlc's
store directory rather than a dynamic link.

The mplayer build while compiling the "mencoder" output like this:
libmpcodecs/vd_ffmpeg.o: In function `set_format_params':
vd_ffmpeg.c:(.text+0x601): undefined reference to
`av_alloc_vdpaucontext'
libmpcodecs/vd_ffmpeg.o: In function `update_configuration.isra.2':
vd_ffmpeg.c:(.text+0xcf9): undefined reference to
`av_alloc_vdpaucontext'
collect2: error: ld returned 1 exit status 
Makefile:750: recipe for target 'mencoder' failed
make: *** [mencoder] Error 1
make: *** Waiting for unfinished jobs....
libmpcodecs/vd_ffmpeg.o: In function `set_format_params':
vd_ffmpeg.c:(.text+0x601): undefined reference to
`av_alloc_vdpaucontext'
libmpcodecs/vd_ffmpeg.o: In function `update_configuration.isra.2':
vd_ffmpeg.c:(.text+0xcf9): undefined reference to
`av_alloc_vdpaucontext'
collect2: error: ld returned 1 exit status 
Makefile:750: recipe for target 'mplayer' failed
make: *** [mplayer] Error 1
phase `build' failed after 32.3 seconds

I can't truly test mpv or vlc because I don't have any hardware that
supports VDPAU. I guess the error message I read a few days wasn't
relevant.

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 0/2] vdpau and vdpauinfo
  2015-12-29  2:40           ` Leo Famulari
@ 2015-12-29 12:14             ` Efraim Flashner
  2015-12-31 10:44               ` Efraim Flashner
  0 siblings, 1 reply; 11+ messages in thread
From: Efraim Flashner @ 2015-12-29 12:14 UTC (permalink / raw)
  To: Leo Famulari; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 2551 bytes --]

On Mon, 28 Dec 2015 21:40:46 -0500
Leo Famulari <leo@famulari.name> wrote:

> On Mon, Dec 28, 2015 at 07:04:11PM -0500, Leo Famulari wrote:
>  [...]  
>  [...]  
>  [...]  
>  [...]  
> 
> I added libvdpau as an input to mpv, mplayer, and vlc. Here are the
> results.
> 
> It seems to have worked for mpv, with ldd reporting a link to the VDPAU
> library in the store.
> 
> It also seems to work for vlc, although it appears as a plugin in vlc's
> store directory rather than a dynamic link.
> 
> The mplayer build while compiling the "mencoder" output like this:
> libmpcodecs/vd_ffmpeg.o: In function `set_format_params':
> vd_ffmpeg.c:(.text+0x601): undefined reference to
> `av_alloc_vdpaucontext'
> libmpcodecs/vd_ffmpeg.o: In function `update_configuration.isra.2':
> vd_ffmpeg.c:(.text+0xcf9): undefined reference to
> `av_alloc_vdpaucontext'
> collect2: error: ld returned 1 exit status 
> Makefile:750: recipe for target 'mencoder' failed
> make: *** [mencoder] Error 1
> make: *** Waiting for unfinished jobs....
> libmpcodecs/vd_ffmpeg.o: In function `set_format_params':
> vd_ffmpeg.c:(.text+0x601): undefined reference to
> `av_alloc_vdpaucontext'
> libmpcodecs/vd_ffmpeg.o: In function `update_configuration.isra.2':
> vd_ffmpeg.c:(.text+0xcf9): undefined reference to
> `av_alloc_vdpaucontext'
> collect2: error: ld returned 1 exit status 
> Makefile:750: recipe for target 'mplayer' failed
> make: *** [mplayer] Error 1
> phase `build' failed after 32.3 seconds
> 
> I can't truly test mpv or vlc because I don't have any hardware that
> supports VDPAU. I guess the error message I read a few days wasn't
> relevant.
> 

here's what I got on mpv with vdpau as an input:
Playing: /home/efraim/Videos/Haman_Song_-_a_Purim_rap--vTLxpz9HKs.mp4
 (+) Video --vid=1 (*) (h264)
 (+) Audio --aid=1 --alang=und (*) (aac)
Failed to open VDPAU backend libvdpau_r600.so: cannot open shared object file: No such file or directory
[vo/vdpau] Error when calling vdp_device_create_x11: 1
Error opening/initializing the selected video_out (-vo) device.
Video: no video

efraim@debian-netbook:~/workspace/guix$ vdpauinfo
display: :0.0   screen: 0
Failed to open VDPAU backend libvdpau_r600.so: cannot open shared object file: No such file or directory
Error creating VDPAU device: 1

-- 
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 #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 0/2] vdpau and vdpauinfo
  2015-12-29 12:14             ` Efraim Flashner
@ 2015-12-31 10:44               ` Efraim Flashner
  0 siblings, 0 replies; 11+ messages in thread
From: Efraim Flashner @ 2015-12-31 10:44 UTC (permalink / raw)
  To: Leo Famulari; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 1316 bytes --]

On Tue, 29 Dec 2015 14:14:19 +0200
Efraim Flashner <efraim@flashner.co.il> wrote:

> On Mon, 28 Dec 2015 21:40:46 -0500
> Leo Famulari <leo@famulari.name> wrote:
> 
>  [...]  
> 
> here's what I got on mpv with vdpau as an input:
> Playing: /home/efraim/Videos/Haman_Song_-_a_Purim_rap--vTLxpz9HKs.mp4
>  (+) Video --vid=1 (*) (h264)
>  (+) Audio --aid=1 --alang=und (*) (aac)
> Failed to open VDPAU backend libvdpau_r600.so: cannot open shared object file: No such file or directory
> [vo/vdpau] Error when calling vdp_device_create_x11: 1
> Error opening/initializing the selected video_out (-vo) device.
> Video: no video

I should mention I called this as
$mpv video.mp4 --vo=vdpau, not that it was a random no-video. When I ran it
without --vo=vdpau everything ran as normal, so no regression at least on my
system with vdpau as an input.

> 
> efraim@debian-netbook:~/workspace/guix$ vdpauinfo
> display: :0.0   screen: 0
> Failed to open VDPAU backend libvdpau_r600.so: cannot open shared object file: No such file or directory
> Error creating VDPAU device: 1
> 



-- 
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 #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2015-12-31 10:44 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-12-21 14:45 [PATCH 0/2] vdpau and vdpauinfo Efraim Flashner
2015-12-21 14:45 ` [PATCH 1/2] gnu: Add libvdpau Efraim Flashner
2015-12-21 14:45 ` [PATCH 2/2] gnu: Add vdpauinfo Efraim Flashner
2015-12-26  5:51 ` [PATCH 0/2] vdpau and vdpauinfo Leo Famulari
2015-12-26 20:27   ` Efraim Flashner
2015-12-28 19:59     ` Leo Famulari
2015-12-28 23:01       ` Andreas Enge
2015-12-29  0:04         ` Leo Famulari
2015-12-29  2:40           ` Leo Famulari
2015-12-29 12:14             ` Efraim Flashner
2015-12-31 10:44               ` Efraim Flashner

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

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).