unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
From: John Kehayias via Bug reports for GNU Guix <bug-guix@gnu.org>
To: 62313@debbugs.gnu.org
Subject: bug#62313: VDPAU can't find backends
Date: Tue, 21 Mar 2023 01:39:34 +0000	[thread overview]
Message-ID: <87bkkmc27g.fsf@protonmail.com> (raw)

Hi Guix,

Currently VDPAU, through libvdpau, can't find backends as they are not part of where it will search:

<https://vdpau.pages.freedesktop.org/libvdpau/group__api__winsys__x11.html>

Namely, it will search where it is configured to at build time via pkg-config, but for us our backends will be somewhere in the store unknown unless we include e.g. mesa as an input. Rather than increasing the closure to include any VDPAU backends (I know of mesa and libvdpau-va-gl), an environment variable can be specified at runtime, VDPAU_DRIVER_PATH.

However, I'm not sure how we can use that as a search path unless we require users to install libvdpau and a backend, like mesa, in their profile. This doesn't seem like the cleanest option.

Any other options?

For testing, here is mpv not finding a VDPAU backend (trying with vaapi or hwdec auto will use vaapi successfully):

--8<---------------cut here---------------start------------->8---
❯ guix shell mpv -- mpv -vo=vdpau ~/test.mkv
 (+) Video --vid=1 (*) (h264 1920x1080 30.000fps)
 (+) Audio --aid=1 (*) 'Track1' (aac 2ch 48000Hz)
Failed to open VDPAU backend libvdpau_radeonsi.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

Exiting... (Errors when loading file)
--8<---------------cut here---------------end--------------->8---

but we can specify mesa explicitly:

--8<---------------cut here---------------start------------->8---
❯ VDPAU_DRIVER_PATH=$(guix build mesa | tail -n1)/lib/vdpau guix shell mpv -- mpv -vo=vdpau ~/test.mkv
 (+) Video --vid=1 (*) (h264 1920x1080 30.000fps)
 (+) Audio --aid=1 (*) 'Track1' (aac 2ch 48000Hz)
[vo/vdpau] Warning: this compatibility VO is low quality and may have issues with OSD, scaling, screenshots and more.
[vo/vdpau] vo=gpu is the preferred choice in any case and includes VDPAU support via hwdec=vdpau or vdpau-copy.
AO: [pulse] 48000Hz stereo 2ch float
VO: [vdpau] 1920x1080 yuv420p
[vo/vdpau] Compositing window manager detected. Assuming timing info is inaccurate.
AV: 00:00:00 / 00:20:25 (0%) A-V:  0.005 DS: 2.067/0

Exiting... (Quit)
--8<---------------cut here---------------end--------------->8---

Or, of course, using vdpauinfo:

--8<---------------cut here---------------start------------->8---
❯ guix shell vdpauinfo -- vdpauinfo
display: :0.0   screen: 0
Failed to open VDPAU backend libvdpau_radeonsi.so: cannot open shared object file: No such file or directory
Error creating VDPAU device: 1
❯ VDPAU_DRIVER_PATH=$(guix build mesa | tail -n1)/lib/vdpau guix shell vdpauinfo -- vdpauinfo
display: :0.0   screen: 0
API version: 1
Information string: G3DVL VDPAU Driver Shared Library version 1.0

Video surface:

name   width height types
------------------------------------------------------------------------
420    16384 16384  NV12 YV12
422    16384 16384  UYVY YUYV
444    16384 16384  Y8U8V8A8 V8U8Y8A8
420_16 16384 16384
422_16 16384 16384
444_16 16384 16384

[...]
--8<---------------cut here---------------end--------------->8---

John

PS: I didn't check in detail, but I would guess <https://issues.guix.gnu.org/48868> is related; though there at least mesa is an input for VLC (including libvdpau-va-gl wouldn't be much for a 1.6 gig package already).





             reply	other threads:[~2023-03-21  1:40 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-03-21  1:39 John Kehayias via Bug reports for GNU Guix [this message]
2023-05-09  4:41 ` bug#62313: VDPAU can't find backends John Kehayias via Bug reports for GNU Guix

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=87bkkmc27g.fsf@protonmail.com \
    --to=bug-guix@gnu.org \
    --cc=62313@debbugs.gnu.org \
    --cc=john.kehayias@protonmail.com \
    /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.
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).