git: a6d6f608ea31 - main - multimedia/libva-nvidia-driver: add new port
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sun, 20 Aug 2023 23:51:20 UTC
The branch main has been updated by jbeich: URL: https://cgit.FreeBSD.org/ports/commit/?id=a6d6f608ea3134f23ac47159df3f850555546abe commit a6d6f608ea3134f23ac47159df3f850555546abe Author: Jan Beich <jbeich@FreeBSD.org> AuthorDate: 2023-06-10 09:21:05 +0000 Commit: Jan Beich <jbeich@FreeBSD.org> CommitDate: 2023-08-20 23:48:22 +0000 multimedia/libva-nvidia-driver: add new port 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 https://github.com/elFarto/nvidia-vaapi-driver --- multimedia/Makefile | 1 + multimedia/libva-nvidia-driver/Makefile | 45 ++++++++++++++++++++++ multimedia/libva-nvidia-driver/distinfo | 17 ++++++++ .../libva-nvidia-driver/files/patch-meson.build | 21 ++++++++++ multimedia/libva-nvidia-driver/pkg-descr | 9 +++++ 5 files changed, 93 insertions(+) diff --git a/multimedia/Makefile b/multimedia/Makefile index 27e9c05c0cf9..580bdb4c2ed0 100644 --- a/multimedia/Makefile +++ b/multimedia/Makefile @@ -197,6 +197,7 @@ SUBDIR += libva-intel-driver SUBDIR += libva-intel-hybrid-driver SUBDIR += libva-intel-media-driver + SUBDIR += libva-nvidia-driver SUBDIR += libva-utils SUBDIR += libva-vdpau-driver SUBDIR += libvdpau diff --git a/multimedia/libva-nvidia-driver/Makefile b/multimedia/libva-nvidia-driver/Makefile new file mode 100644 index 000000000000..ac605cbd58c3 --- /dev/null +++ b/multimedia/libva-nvidia-driver/Makefile @@ -0,0 +1,45 @@ +PORTNAME= libva-nvidia-driver +DISTVERSIONPREFIX= v +DISTVERSION= 0.0.10 +CATEGORIES= multimedia + +PATCH_SITES= https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/commit/ +PATCHFILES+= 8e8d49e11772.patch:-p1 # https://github.com/elFarto/nvidia-vaapi-driver/pull/220 +PATCHFILES+= 5dc46a5a2fab.patch:-p1 # https://github.com/elFarto/nvidia-vaapi-driver/pull/220 +PATCHFILES+= 22be7754bee5.patch:-p1 # https://github.com/elFarto/nvidia-vaapi-driver/pull/220 +PATCHFILES+= 119a5a3ac448.patch:-p1 # https://github.com/elFarto/nvidia-vaapi-driver/pull/220 +PATCHFILES+= 39c08a61a888.patch:-p1 # https://github.com/elFarto/nvidia-vaapi-driver/pull/220 +PATCHFILES+= fc1afd905f8c.patch:-p1 # https://github.com/elFarto/nvidia-vaapi-driver/pull/220 +PATCHFILES+= 97430842d11a.patch:-p1 # https://github.com/elFarto/nvidia-vaapi-driver/pull/220 + +MAINTAINER= jbeich@FreeBSD.org +COMMENT= NVDEC-based backend for VAAPI +WWW= https://github.com/elFarto/nvidia-vaapi-driver + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/COPYING + +ONLY_FOR_ARCHS= amd64 +ONLY_FOR_ARCHS_REASON= Unusable without nvidia-drm-kmod and libc6-shim + +BUILD_DEPENDS= libdrm>=2.4.60,1:graphics/libdrm \ + ffnvcodec-headers>=11.1.5.1:multimedia/ffnvcodec-headers \ + libva>=2.8.0:multimedia/libva + +USES= compiler:c11 gl meson pkgconfig +USE_GITHUB= yes +USE_GL= egl +GH_ACCOUNT= elFarto +GH_PROJECT= nvidia-vaapi-driver +PLIST_FILES= lib/dri/nvidia-drm_drv_video.so + +OPTIONS_DEFINE= GSTREAMER +OPTIONS_DEFAULT=GSTREAMER + +GSTREAMER_USES= gstreamer:1 +GSTREAMER_USE= GSTREAMER=bad + +post-patch-GSTREAMER-off: + @${REINPLACE_CMD} 's/gstreamer-codecparsers-1\.0//' ${WRKSRC}/meson.build + +.include <bsd.port.mk> diff --git a/multimedia/libva-nvidia-driver/distinfo b/multimedia/libva-nvidia-driver/distinfo new file mode 100644 index 000000000000..ecd751f574e3 --- /dev/null +++ b/multimedia/libva-nvidia-driver/distinfo @@ -0,0 +1,17 @@ +TIMESTAMP = 1686388865 +SHA256 (elFarto-nvidia-vaapi-driver-v0.0.10_GH0.tar.gz) = df63b0832ccf9f74a90ff8b26d8e069606e0614d1748e35a857d2e53745ab95c +SIZE (elFarto-nvidia-vaapi-driver-v0.0.10_GH0.tar.gz) = 182313 +SHA256 (8e8d49e11772.patch) = 7bba9dc7e96961a4e9b7046c192cfe0bde7d76c9765dd3df4ad4c0368378a427 +SIZE (8e8d49e11772.patch) = 1258 +SHA256 (5dc46a5a2fab.patch) = 9d63405e05f60ac702a3842def28645907b5319dbcea124f97b965344f27cbd2 +SIZE (5dc46a5a2fab.patch) = 3602 +SHA256 (22be7754bee5.patch) = c41d0f88ed773c751d4f515d6e537232a679cbc5d38e985cb77f422259c107a9 +SIZE (22be7754bee5.patch) = 1248 +SHA256 (119a5a3ac448.patch) = d6d981539ea4c6c3143532ad0182aa68b6df72a5c58232e3692247f8afbeff6f +SIZE (119a5a3ac448.patch) = 2064 +SHA256 (39c08a61a888.patch) = c84fedb1e77f8465c44d48e4aefd9d78399b40c3f75ac3fa8b1ae730db285e4c +SIZE (39c08a61a888.patch) = 990 +SHA256 (fc1afd905f8c.patch) = 2afb9e9d0ad86d1b8bf286dbc9921f98c2c2efb0a0353e47d031a90dac515e3d +SIZE (fc1afd905f8c.patch) = 1229 +SHA256 (97430842d11a.patch) = 272c10f67ac344b83d87a8662eda6f18d6955157597e4171ba060455af0e5a6a +SIZE (97430842d11a.patch) = 1289 diff --git a/multimedia/libva-nvidia-driver/files/patch-meson.build b/multimedia/libva-nvidia-driver/files/patch-meson.build new file mode 100644 index 000000000000..e155c3c2f0ce --- /dev/null +++ b/multimedia/libva-nvidia-driver/files/patch-meson.build @@ -0,0 +1,21 @@ +- Avoid conflict with libva-vdpau-driver + +--- meson.build.orig 2023-06-10 09:21:05 UTC ++++ meson.build +@@ -71,7 +71,7 @@ shared_library( + nvidia_incdir = include_directories('nvidia-include') + + shared_library( +- 'nvidia_drv_video', ++ 'nvidia-drm_drv_video', + name_prefix: '', + sources: sources, + dependencies: deps, +@@ -83,6 +83,6 @@ meson.add_devenv(environment({ + + meson.add_devenv(environment({ + 'NVD_LOG': '1', +- 'LIBVA_DRIVER_NAME': 'nvidia', ++ 'LIBVA_DRIVER_NAME': 'nvidia-drm', + 'LIBVA_DRIVERS_PATH': meson.project_build_root(), + })) diff --git a/multimedia/libva-nvidia-driver/pkg-descr b/multimedia/libva-nvidia-driver/pkg-descr new file mode 100644 index 000000000000..01d24de66009 --- /dev/null +++ b/multimedia/libva-nvidia-driver/pkg-descr @@ -0,0 +1,9 @@ +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