summaryrefslogtreecommitdiff
path: root/multimedia/libva
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--multimedia/libva-nvidia-driver/Makefile1
-rw-r--r--multimedia/libva-nvidia-driver/pkg-descr5
-rw-r--r--multimedia/libva-nvidia-driver/pkg-message20
-rw-r--r--multimedia/libva/Makefile1
-rw-r--r--multimedia/libva/files/patch-nvidia-drm12
5 files changed, 34 insertions, 5 deletions
diff --git a/multimedia/libva-nvidia-driver/Makefile b/multimedia/libva-nvidia-driver/Makefile
index 4649c82759f2..70c88522f136 100644
--- a/multimedia/libva-nvidia-driver/Makefile
+++ b/multimedia/libva-nvidia-driver/Makefile
@@ -1,6 +1,7 @@
PORTNAME= libva-nvidia-driver
DISTVERSIONPREFIX= v
DISTVERSION= 0.0.14
+PORTREVISION= 2
CATEGORIES= multimedia
PATCH_SITES= https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/commit/
diff --git a/multimedia/libva-nvidia-driver/pkg-descr b/multimedia/libva-nvidia-driver/pkg-descr
index 01d24de66009..8119052fb637 100644
--- a/multimedia/libva-nvidia-driver/pkg-descr
+++ b/multimedia/libva-nvidia-driver/pkg-descr
@@ -2,8 +2,3 @@ This is an VA-API implementation that uses NVDEC as a backend. This
implementation is specifically designed to be used by Firefox for
accelerated decode of web content, and may not operate correctly in
other applications.
-
-System requirements:
-- Non-legacy NVIDIA GPU
-- nvidia-drm-kmod for DMA-BUF
-- libc6-shim (nv-sglrun) for NVDEC
diff --git a/multimedia/libva-nvidia-driver/pkg-message b/multimedia/libva-nvidia-driver/pkg-message
new file mode 100644
index 000000000000..892aab5d7693
--- /dev/null
+++ b/multimedia/libva-nvidia-driver/pkg-message
@@ -0,0 +1,20 @@
+[
+{ type: install
+ message: <<EOM
+To use VA-API in apps like Firefox make sure DRM and CUDA are enabled e.g.,
+
+ # pkg install nvidia-drm-kmod linux-nvidia-libs libc6-shim libva-utils
+ # sysrc kld_list+=nvidia-drm
+ # service kld restart
+ $ test -e /dev/dri/renderD* || bsddialog --title Error --msgbox "nvidia-drm-kmod failed" 0 0
+ $ test -n "$WAYLAND_DISPLAY" || export LIBVA_DRIVER_NAME=nvidia-drm
+ $ test -n "$WAYLAND_DISPLAY" || setenv LIBVA_DRIVER_NAME nvidia-drm
+ $ nv-sglrun vainfo
+ $ nv-sglrun firefox
+
+Note, legacy nvidia-driver series like 470 or older are not supported
+by nvidia-drm-kmod required by this package. Consider using
+libva-vdpau-driver instead.
+EOM
+}
+]
diff --git a/multimedia/libva/Makefile b/multimedia/libva/Makefile
index 8d089702416b..ee83c8fc4727 100644
--- a/multimedia/libva/Makefile
+++ b/multimedia/libva/Makefile
@@ -1,5 +1,6 @@
PORTNAME= libva
DISTVERSION= 2.22.0
+PORTREVISION= 1
CATEGORIES= multimedia
PATCH_SITES= https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/commit/
diff --git a/multimedia/libva/files/patch-nvidia-drm b/multimedia/libva/files/patch-nvidia-drm
new file mode 100644
index 000000000000..da6a5acf0e03
--- /dev/null
+++ b/multimedia/libva/files/patch-nvidia-drm
@@ -0,0 +1,12 @@
+- Avoid conflict between libva-nvidia-driver and libva-vdpau-driver
+
+--- va/drm/va_drm_utils.c.orig 2024-06-20 06:49:27 UTC
++++ va/drm/va_drm_utils.c
+@@ -65,7 +65,6 @@ VA_DRM_GetDriverNames(VADriverContextP ctx, char **dri
+ { "radeon", { "r600", "radeonsi" } }, // Mesa Gallium
+ { "amdgpu", { "radeonsi" } }, // Mesa Gallium
+ { "WSL", { "d3d12" } }, // Mesa Gallium
+- { "nvidia-drm", { "nvidia" } }, // Unofficial NVIDIA
+ };
+
+ const struct drm_state * const drm_state = ctx->drm_state;