Date: Tue, 03 Mar 2026 00:08:22 +0000 From: Yuri Victorovich <yuri@FreeBSD.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org Cc: Alex S <iwtcex@gmail.com> Subject: git: 9fb3cdfc599b - main - multimedia/obs-studio: bring back NVENC Message-ID: <69a62676.40429.f6b77c3@gitrepo.freebsd.org>
index | next in thread | raw e-mail
The branch main has been updated by yuri: URL: https://cgit.FreeBSD.org/ports/commit/?id=9fb3cdfc599bbd632a72f679171562a786006cf9 commit 9fb3cdfc599bbd632a72f679171562a786006cf9 Author: Alex S <iwtcex@gmail.com> AuthorDate: 2026-03-03 00:06:34 +0000 Commit: Yuri Victorovich <yuri@FreeBSD.org> CommitDate: 2026-03-03 00:08:20 +0000 multimedia/obs-studio: bring back NVENC PR: 291889 --- multimedia/obs-studio/Makefile | 12 +++--- .../obs-studio/files/patch-plugins_CMakeLists.txt | 11 ++++- .../files/patch-plugins_obs-nvenc_CMakeLists.txt | 29 +++++++++++++ ...plugins_obs-nvenc_obs-nvenc-test_CMakeLists.txt | 10 +++++ multimedia/obs-studio/pkg-plist | 50 ++++++++++++++++++++++ 5 files changed, 106 insertions(+), 6 deletions(-) diff --git a/multimedia/obs-studio/Makefile b/multimedia/obs-studio/Makefile index 0230659db1c8..170cf5265a5b 100644 --- a/multimedia/obs-studio/Makefile +++ b/multimedia/obs-studio/Makefile @@ -1,6 +1,6 @@ PORTNAME= obs-studio DISTVERSION= 32.0.4 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= multimedia MASTER_SITES= https://github.com/obsproject/obs-studio/releases/download/${DISTVERSION}/ DISTFILES= OBS-Studio-${DISTVERSION}-Sources${EXTRACT_SUFX} @@ -76,10 +76,8 @@ LDFLAGS+= -fPIC # pending https://github.com/obsproject/obs-studio/issues/3436 WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION}-sources -WITH_DEBUG= yes # workaround for https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292376#c6 - -OPTIONS_DEFINE= BROWSER PIPEWIRE VLC VST WAYLAND -OPTIONS_DEFAULT= PIPEWIRE VLC VST WAYLAND +OPTIONS_DEFINE= BROWSER NVENC PIPEWIRE VLC VST WAYLAND +OPTIONS_DEFAULT= NVENC PIPEWIRE VLC VST WAYLAND OPTIONS_MULTI= AUDIO OPTIONS_MULTI_AUDIO= JACK PULSEAUDIO SNDIO OPTIONS_DEFAULT+= ${OPTIONS_MULTI_AUDIO} @@ -94,6 +92,10 @@ JACK_LIB_DEPENDS= libjack.so:audio/jack JACK_CMAKE_ON= -DENABLE_JACK=TRUE JACK_CMAKE_OFF= -DDISABLE_JACK=TRUE +NVENC_DESC= NVIDIA Hardware Encoder Plugin +NVENC_BUILD_DEPENDS= ffnvcodec-headers>=13.0.19.0:multimedia/ffnvcodec-headers +NVENC_CMAKE_BOOL= ENABLE_NVENC + PIPEWIRE_DESC= Screen capture via PipeWire PIPEWIRE_LIB_DEPENDS= libpipewire-0.3.so:multimedia/pipewire PIPEWIRE_CMAKE_BOOL= ENABLE_PIPEWIRE diff --git a/multimedia/obs-studio/files/patch-plugins_CMakeLists.txt b/multimedia/obs-studio/files/patch-plugins_CMakeLists.txt index 5eb379428270..3abe06b98b69 100644 --- a/multimedia/obs-studio/files/patch-plugins_CMakeLists.txt +++ b/multimedia/obs-studio/files/patch-plugins_CMakeLists.txt @@ -1,5 +1,14 @@ ---- plugins/CMakeLists.txt.orig 2025-08-01 04:15:57 UTC +--- plugins/CMakeLists.txt.orig 2025-09-26 21:04:14 UTC +++ plugins/CMakeLists.txt +@@ -61,7 +61,7 @@ add_obs_plugin(obs-libfdk) + add_obs_plugin(obs-ffmpeg) + add_obs_plugin(obs-filters) + add_obs_plugin(obs-libfdk) +-add_obs_plugin(obs-nvenc PLATFORMS WINDOWS LINUX ARCHITECTURES x64 x86_64) ++add_obs_plugin(obs-nvenc PLATFORMS WINDOWS LINUX FREEBSD ARCHITECTURES x64 x86_64) + add_obs_plugin(obs-outputs) + add_obs_plugin( + obs-qsv11 @@ -72,7 +72,7 @@ add_obs_plugin( add_obs_plugin(obs-transitions) add_obs_plugin( diff --git a/multimedia/obs-studio/files/patch-plugins_obs-nvenc_CMakeLists.txt b/multimedia/obs-studio/files/patch-plugins_obs-nvenc_CMakeLists.txt new file mode 100644 index 000000000000..02d47b297049 --- /dev/null +++ b/multimedia/obs-studio/files/patch-plugins_obs-nvenc_CMakeLists.txt @@ -0,0 +1,29 @@ +--- plugins/obs-nvenc/CMakeLists.txt.orig 2025-09-27 00:04:14.000000000 +0300 ++++ plugins/obs-nvenc/CMakeLists.txt 2025-12-23 07:49:06.708408000 +0300 +@@ -14,7 +14,7 @@ + add_subdirectory("${CMAKE_SOURCE_DIR}/shared/opts-parser" "${CMAKE_BINARY_DIR}/shared/opts-parser") + endif() + +-if(OS_LINUX AND NOT TARGET OBS::glad) ++if((OS_LINUX OR OS_FREEBSD) AND NOT TARGET OBS::glad) + add_subdirectory("${CMAKE_SOURCE_DIR}/deps/glad" "${CMAKE_BINARY_DIR}/deps/glad") + endif() + +@@ -28,7 +28,7 @@ + target_sources( + obs-nvenc + PRIVATE +- $<$<PLATFORM_ID:Linux>:nvenc-opengl.c> ++ $<$<PLATFORM_ID:Linux,FreeBSD>:nvenc-opengl.c> + $<$<PLATFORM_ID:Windows>:nvenc-d3d11.c> + cuda-helpers.c + cuda-helpers.h +@@ -46,7 +46,7 @@ + + target_link_libraries( + obs-nvenc +- PRIVATE OBS::libobs OBS::opts-parser FFnvcodec::FFnvcodec $<$<PLATFORM_ID:Linux>:OBS::glad> ++ PRIVATE OBS::libobs OBS::opts-parser FFnvcodec::FFnvcodec $<$<PLATFORM_ID:Linux,FreeBSD>:OBS::glad> + ) + + target_compile_definitions(obs-nvenc PRIVATE $<$<BOOL:${ENABLE_NVENC_FFMPEG_IDS}>:REGISTER_FFMPEG_IDS>) diff --git a/multimedia/obs-studio/files/patch-plugins_obs-nvenc_obs-nvenc-test_CMakeLists.txt b/multimedia/obs-studio/files/patch-plugins_obs-nvenc_obs-nvenc-test_CMakeLists.txt new file mode 100644 index 000000000000..9bfa22764db4 --- /dev/null +++ b/multimedia/obs-studio/files/patch-plugins_obs-nvenc_obs-nvenc-test_CMakeLists.txt @@ -0,0 +1,10 @@ +--- plugins/obs-nvenc/obs-nvenc-test/CMakeLists.txt.orig 2025-09-26 21:04:14 UTC ++++ plugins/obs-nvenc/obs-nvenc-test/CMakeLists.txt +@@ -5,6 +5,6 @@ target_sources(obs-nvenc-test PRIVATE obs-nvenc-test.c + add_executable(obs-nvenc-test) + + target_sources(obs-nvenc-test PRIVATE obs-nvenc-test.cpp) +-target_link_libraries(obs-nvenc-test FFnvcodec::FFnvcodec) ++target_link_libraries(obs-nvenc-test FFnvcodec::FFnvcodec Threads::Threads) + + set_target_properties_obs(obs-nvenc-test PROPERTIES FOLDER plugins/obs-nvenc) diff --git a/multimedia/obs-studio/pkg-plist b/multimedia/obs-studio/pkg-plist index 6a0b78131a03..5deaed149e78 100644 --- a/multimedia/obs-studio/pkg-plist +++ b/multimedia/obs-studio/pkg-plist @@ -1,5 +1,6 @@ bin/obs bin/obs-ffmpeg-mux +%%NVENC%%bin/obs-nvenc-test include/obs/callback/calldata.h include/obs/callback/decl.h include/obs/callback/proc.h @@ -117,6 +118,7 @@ lib/obs-plugins/linux-capture.so lib/obs-plugins/linux-v4l2.so lib/obs-plugins/obs-ffmpeg.so lib/obs-plugins/obs-filters.so +%%NVENC%%lib/obs-plugins/obs-nvenc.so lib/obs-plugins/obs-outputs.so lib/obs-plugins/obs-transitions.so %%VST%%lib/obs-plugins/obs-vst.so @@ -838,6 +840,54 @@ share/obs/obs-plugins/obs-filters/luma_key_filter_v2.effect share/obs/obs-plugins/obs-filters/mask_alpha_filter.effect share/obs/obs-plugins/obs-filters/mask_color_filter.effect share/obs/obs-plugins/obs-filters/sharpness.effect +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/ar-SA.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/be-BY.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/bg-BG.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/ca-ES.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/cs-CZ.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/da-DK.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/de-DE.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/el-GR.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/en-GB.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/en-US.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/es-ES.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/et-EE.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/fa-IR.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/fi-FI.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/fr-FR.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/gl-ES.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/he-IL.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/hi-IN.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/hr-HR.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/hu-HU.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/id-ID.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/is-IS.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/it-IT.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/ja-JP.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/ka-GE.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/kaa.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/kmr-TR.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/ko-KR.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/ms-MY.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/nb-NO.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/nl-NL.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/nn-NO.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/pl-PL.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/pt-BR.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/pt-PT.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/ro-RO.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/ru-RU.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/sk-SK.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/sr-SP.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/sv-SE.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/th-TH.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/tr-TR.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/tt-RU.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/ug-CN.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/uk-UA.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/vi-VN.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/zh-CN.ini +%%NVENC%%share/obs/obs-plugins/obs-nvenc/locale/zh-TW.ini share/obs/obs-plugins/obs-outputs/locale/af-ZA.ini share/obs/obs-plugins/obs-outputs/locale/ar-SA.ini share/obs/obs-plugins/obs-outputs/locale/ba-RU.inihome | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?69a62676.40429.f6b77c3>
