summaryrefslogtreecommitdiff
path: root/multimedia
diff options
context:
space:
mode:
Diffstat (limited to 'multimedia')
-rw-r--r--multimedia/Makefile2
-rw-r--r--multimedia/av1an/Makefile2
-rw-r--r--multimedia/btavctpd/Makefile22
-rw-r--r--multimedia/btavctpd/distinfo3
-rw-r--r--multimedia/btavctpd/pkg-descr5
-rw-r--r--multimedia/dragon/Makefile20
-rw-r--r--multimedia/dragon/distinfo6
-rw-r--r--multimedia/dragon/pkg-message11
-rw-r--r--multimedia/dragon/pkg-plist38
-rw-r--r--multimedia/gstreamer1-plugins-all/Makefile4
-rw-r--r--multimedia/gstreamer1-plugins-bad/files/patch-ext_webrtcdsp_meson.build14
-rw-r--r--multimedia/gstreamer1-plugins-bad/files/patch-gst-libs_gst_cuda_meson.build4
-rw-r--r--multimedia/gstreamer1-plugins-msdk/Makefile3
-rw-r--r--multimedia/guvcview/Makefile39
-rw-r--r--multimedia/guvcview/distinfo3
-rw-r--r--multimedia/guvcview/files/patch-guvcview_guvcview.c31
-rw-r--r--multimedia/guvcview/files/patch-guvcview_video__capture.c71
-rw-r--r--multimedia/guvcview/files/patch-gview__audio_gviewaudio.h11
-rw-r--r--multimedia/guvcview/files/patch-gview__encoder_gviewencoder.h11
-rw-r--r--multimedia/guvcview/files/patch-gview__encoder_muxer.c11
-rw-r--r--multimedia/guvcview/files/patch-gview__render_gviewrender.h11
-rw-r--r--multimedia/guvcview/files/patch-gview__v4l2core_gviewv4l2core.h11
-rw-r--r--multimedia/guvcview/files/patch-gview__v4l2core_v4l2__core.c14
-rw-r--r--multimedia/guvcview/pkg-descr2
-rw-r--r--multimedia/guvcview/pkg-plist69
-rw-r--r--multimedia/handbrake/Makefile18
-rw-r--r--multimedia/handbrake/distinfo26
-rw-r--r--multimedia/handbrake/files/patch-contrib_ffmpeg_module.defs18
-rw-r--r--multimedia/handbrake/files/patch-libhb_enc__qsv.c67
-rw-r--r--multimedia/handbrake/files/patch-libhb_handbrake_qsv__common.h19
-rw-r--r--multimedia/handbrake/files/patch-libhb_qsv__common.c91
-rw-r--r--multimedia/handbrake/files/patch-make_include_contrib.defs11
-rw-r--r--multimedia/handbrake/pkg-plist17
-rw-r--r--multimedia/kamoso/Makefile21
-rw-r--r--multimedia/kamoso/distinfo6
-rw-r--r--multimedia/kamoso/pkg-plist3
-rw-r--r--multimedia/kasts/distinfo6
-rw-r--r--multimedia/kdemultimedia-ffmpegthumbs/distinfo6
-rw-r--r--multimedia/kdemultimedia/Makefile1
-rw-r--r--multimedia/kdenlive/Makefile1
-rw-r--r--multimedia/kdenlive/distinfo6
-rw-r--r--multimedia/kdenlive/pkg-plist68
-rw-r--r--multimedia/kew/Makefile2
-rw-r--r--multimedia/kew/distinfo6
-rw-r--r--multimedia/libndi/Makefile14
-rw-r--r--multimedia/libndi/distinfo6
-rw-r--r--multimedia/libndi/pkg-plist8
-rw-r--r--multimedia/mediamtx/Makefile6
-rw-r--r--multimedia/mediamtx/distinfo14
-rw-r--r--multimedia/mediamtx/files/patch-internal_staticsources_handler.go30
-rw-r--r--multimedia/mediamtx/files/patch-mediamtx.yml65
-rw-r--r--multimedia/mediamtx/files/patch-rpicamera77
-rw-r--r--multimedia/mencoder/Makefile2
-rw-r--r--multimedia/mencoder/distinfo6
-rw-r--r--multimedia/minisatip/Makefile2
-rw-r--r--multimedia/minisatip/distinfo6
-rw-r--r--multimedia/mplayer/Makefile2
-rw-r--r--multimedia/mplayer/Makefile.common2
-rw-r--r--multimedia/mplayer/distinfo6
-rw-r--r--multimedia/mplayer/files/patch-configure46
-rw-r--r--multimedia/mplayer/files/patch-loader_ext.c11
-rw-r--r--multimedia/mplayer/files/patch-loader_module.c20
-rw-r--r--multimedia/mplayer/files/patch-loader_win32.c66
-rw-r--r--multimedia/musikcube/Makefile4
-rw-r--r--multimedia/musikcube/distinfo6
-rw-r--r--multimedia/pitivi/Makefile3
-rw-r--r--multimedia/plasmatube/distinfo6
-rw-r--r--multimedia/plexmediaserver-plexpass/Makefile4
-rw-r--r--multimedia/plexmediaserver-plexpass/distinfo6
-rw-r--r--multimedia/plexmediaserver/Makefile4
-rw-r--r--multimedia/plexmediaserver/distinfo6
-rw-r--r--multimedia/poe/Makefile2
-rw-r--r--multimedia/qmmp-qt5/Makefile2
-rw-r--r--multimedia/qmmp-qt5/distinfo6
-rw-r--r--multimedia/qmmp-qt6/Makefile2
-rw-r--r--multimedia/qmmp-qt6/distinfo6
-rw-r--r--multimedia/qt6-multimedia/distinfo6
-rw-r--r--multimedia/qt6-multimedia/files/patch-src_multimedia_configure.cmake12
-rw-r--r--multimedia/qt6-multimedia/files/patch-src_multimedia_pulseaudio_qpulseaudiosink.cpp15
-rw-r--r--multimedia/qt6-multimedia/pkg-plist4
-rw-r--r--multimedia/ringrtc/Makefile35
-rw-r--r--multimedia/ringrtc/distinfo70
-rw-r--r--multimedia/ringrtc/files/patch-build_config_BUILDCONFIG.gn8
-rw-r--r--multimedia/ringrtc/files/patch-build_config_compiler_BUILD.gn35
-rw-r--r--multimedia/ringrtc/files/patch-src_rust_src_webrtc_audio__device__module__utils.rs28
-rw-r--r--multimedia/ringrtc/files/patch-src_webrtc_src_testing_test.gni6
-rw-r--r--multimedia/ringrtc/files/patch-third__party_nasm_config_config-linux.h53
-rw-r--r--multimedia/ringrtc/files/patch-third__party_perfetto_src_base_string__utils.cc12
-rw-r--r--multimedia/ringrtc/files/patch-third__party_perfetto_src_tracing_ipc_memfd.cc6
-rw-r--r--multimedia/ringrtc/files/patch-third__party_webrtc_rtc__base_network.cc7
-rw-r--r--multimedia/ringrtc/webrtc_fetch.sh13
-rw-r--r--multimedia/shotcut-qt6/Makefile2
-rw-r--r--multimedia/shotcut-qt6/distinfo6
-rw-r--r--multimedia/simplescreenrecorder/Makefile11
-rw-r--r--multimedia/simplescreenrecorder/distinfo6
-rw-r--r--multimedia/simplescreenrecorder/pkg-plist5
-rw-r--r--multimedia/supersonic/Makefile3
-rw-r--r--multimedia/supersonic/distinfo10
-rw-r--r--multimedia/svt-av1/Makefile2
-rw-r--r--multimedia/svt-av1/distinfo6
-rw-r--r--multimedia/wf-recorder/files/patch-fix-ffmpeg827
-rw-r--r--multimedia/wl-screenrec/Makefile2
102 files changed, 903 insertions, 744 deletions
diff --git a/multimedia/Makefile b/multimedia/Makefile
index 1064487abdd2..69c66edb0cab 100644
--- a/multimedia/Makefile
+++ b/multimedia/Makefile
@@ -22,6 +22,7 @@
SUBDIR += bino
SUBDIR += bitstream
SUBDIR += blind
+ SUBDIR += btavctpd
SUBDIR += butt
SUBDIR += celluloid
SUBDIR += cheese
@@ -112,6 +113,7 @@
SUBDIR += gstreamermm
SUBDIR += gtk-pipe-viewer
SUBDIR += gtk-youtube-viewer
+ SUBDIR += guvcview
SUBDIR += handbrake
SUBDIR += haruna
SUBDIR += harvid
diff --git a/multimedia/av1an/Makefile b/multimedia/av1an/Makefile
index 39922cc2183d..6203a2b00cf7 100644
--- a/multimedia/av1an/Makefile
+++ b/multimedia/av1an/Makefile
@@ -3,7 +3,7 @@ DISTVERSION= 0.4.4
PORTREVISION= 5
CATEGORIES= multimedia
-MAINTAINER= jbeich@FreeBSD.org
+MAINTAINER= ports@FreeBSD.org
COMMENT= Command-line encoding framework with per scene quality
WWW= https://github.com/master-of-zen/Av1an
diff --git a/multimedia/btavctpd/Makefile b/multimedia/btavctpd/Makefile
new file mode 100644
index 000000000000..58e00f2d72c9
--- /dev/null
+++ b/multimedia/btavctpd/Makefile
@@ -0,0 +1,22 @@
+PORTNAME= btavctpd
+DISTVERSION= 1.0.0
+CATEGORIES= multimedia
+
+MAINTAINER= nsonack@herrhotzenplotz.de
+COMMENT= Media-Player remote control daemon via Bluetooth
+WWW= https://github.com/herrhotzenplotz/btavctpd
+
+LICENSE= BSD2CLAUSE
+
+LIB_DEPENDS= libplayerctl.so:multimedia/playerctl
+RUN_DEPENDS= xdotool:x11/xdotool
+
+USES= gnome pkgconfig
+USE_GITHUB= yes
+GH_ACCOUNT= herrhotzenplotz
+USE_GNOME= glib20
+
+PLIST_FILES= bin/btavctpd \
+ share/man/man8/btavctpd.8.gz
+
+.include <bsd.port.mk>
diff --git a/multimedia/btavctpd/distinfo b/multimedia/btavctpd/distinfo
new file mode 100644
index 000000000000..434903e9e2a9
--- /dev/null
+++ b/multimedia/btavctpd/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1755329739
+SHA256 (herrhotzenplotz-btavctpd-1.0.0_GH0.tar.gz) = 3049e1baf93c5d65e7ee167c52ef9165e1480464015e814340b1abfb77bd8c6f
+SIZE (herrhotzenplotz-btavctpd-1.0.0_GH0.tar.gz) = 8484
diff --git a/multimedia/btavctpd/pkg-descr b/multimedia/btavctpd/pkg-descr
new file mode 100644
index 000000000000..f43a1e596c1c
--- /dev/null
+++ b/multimedia/btavctpd/pkg-descr
@@ -0,0 +1,5 @@
+btavctpd is a daemon that allows you to remotely control media players
+on your workstation through the Bluetooth A/V Remote Control Profile.
+Can either emit X11 Keypresses through xdotool or use libplayerctl to
+dynamically detect players and listen for their events or send commands
+to them.
diff --git a/multimedia/dragon/Makefile b/multimedia/dragon/Makefile
index 8ea082ba1064..d8b60dce8989 100644
--- a/multimedia/dragon/Makefile
+++ b/multimedia/dragon/Makefile
@@ -9,18 +9,22 @@ WWW= https://www.kde.org/applications/multimedia/dragonplayer/
LICENSE= GPLv2
-USES= cmake compiler:c++11-lang desktop-file-utils gettext kde:6 \
- qt:6 tar:xz xorg
-USE_KDE= auth codecs completion config configwidgets coreaddons crash \
- dbusaddons doctools i18n iconthemes jobwidgets kio \
- notifications parts phonon service solid sonnet textwidgets \
- widgetsaddons windowsystem xmlgui \
- ecm:build
-USE_QT= base
+LIB_DEPENDS= libavcodec.so:multimedia/ffmpeg
+
+USES= cmake compiler:c++23-lang desktop-file-utils gettext kde:6 \
+ pkgconfig qt:6 tar:xz xorg
+USE_KDE= config coreaddons crash i18n kio kirigami2 windowsystem \
+ doctools:build ecm:build
+USE_QT= base multimedia
USE_XORG= x11
CONFLICTS_INSTALL= dragon # bin/dragon
OPTIONS_DEFINE= DOCS
+# Support for 13.5-RELEASE and 14.2-RELEASE
+.if !exists(/usr/bin/clang-scan-deps)
+USES+= llvm
+.endif
+
.include <bsd.port.mk>
diff --git a/multimedia/dragon/distinfo b/multimedia/dragon/distinfo
index 727a8ed83f4b..fa45354f0a83 100644
--- a/multimedia/dragon/distinfo
+++ b/multimedia/dragon/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1751381540
-SHA256 (KDE/release-service/25.04.3/dragon-25.04.3.tar.xz) = 41b4bb755052147c5de8ed8ea6cd6c77b21e804c95d6be2143a9369ecc9f77c2
-SIZE (KDE/release-service/25.04.3/dragon-25.04.3.tar.xz) = 1773328
+TIMESTAMP = 1754646447
+SHA256 (KDE/release-service/25.08.0/dragon-25.08.0.tar.xz) = b72c06f1ce465dd3d7be47d69ec3a3588ddd464cc0f5d351a8d7ed47c85846a9
+SIZE (KDE/release-service/25.08.0/dragon-25.08.0.tar.xz) = 144312
diff --git a/multimedia/dragon/pkg-message b/multimedia/dragon/pkg-message
deleted file mode 100644
index b0a552549d40..000000000000
--- a/multimedia/dragon/pkg-message
+++ /dev/null
@@ -1,11 +0,0 @@
-[
-{ type: install
- message: <<EOM
-To be able to play audio and video streams with Phonon-GStreamer,
-you'll need to have the appropriate GStreamer plugins installed.
-multimedia/gstreamer-plugins-core will install a standard set, while
-multimedia/gstreamer-plugins-all will let you choose among all of
-them.
-EOM
-}
-]
diff --git a/multimedia/dragon/pkg-plist b/multimedia/dragon/pkg-plist
index 46780c4f518c..e4265b7f09db 100644
--- a/multimedia/dragon/pkg-plist
+++ b/multimedia/dragon/pkg-plist
@@ -1,6 +1,16 @@
bin/dragon
-etc/xdg/dragonplayerrc
-%%QT_PLUGINDIR%%/kf6/parts/dragonpart.so
+%%QT_QMLDIR%%/org/kde/dragon/AboutPage.qml
+%%QT_QMLDIR%%/org/kde/dragon/ControlsBar.qml
+%%QT_QMLDIR%%/org/kde/dragon/IconToolButton.qml
+%%QT_QMLDIR%%/org/kde/dragon/Main.qml
+%%QT_QMLDIR%%/org/kde/dragon/OverlayPopup.qml
+%%QT_QMLDIR%%/org/kde/dragon/PlayerPage.qml
+%%QT_QMLDIR%%/org/kde/dragon/VolumeButton.qml
+%%QT_QMLDIR%%/org/kde/dragon/WelcomeView.qml
+%%QT_QMLDIR%%/org/kde/dragon/dragonmodule.qmltypes
+%%QT_QMLDIR%%/org/kde/dragon/kde-qmlmodule.version
+%%QT_QMLDIR%%/org/kde/dragon/libdragonmodule.so
+%%QT_QMLDIR%%/org/kde/dragon/qmldir
share/applications/org.kde.dragonplayer.desktop
share/icons/hicolor/128x128/apps/dragonplayer.png
share/icons/hicolor/16x16/apps/dragonplayer.png
@@ -9,12 +19,6 @@ share/icons/hicolor/32x32/apps/dragonplayer.png
share/icons/hicolor/48x48/apps/dragonplayer.png
share/icons/hicolor/64x64/apps/dragonplayer.png
share/icons/hicolor/scalable/apps/dragonplayer.svgz
-share/icons/oxygen/16x16/actions/player-volume-muted.png
-share/icons/oxygen/22x22/actions/player-volume-muted.png
-share/icons/oxygen/32x32/actions/player-volume-muted.png
-share/icons/oxygen/48x48/actions/player-volume-muted.png
-share/icons/oxygen/scalable/actions/player-volume-muted.svgz
-share/kio/servicemenus/dragonplayer_play_dvd.desktop
share/locale/ar/LC_MESSAGES/dragonplayer.mo
share/locale/ast/LC_MESSAGES/dragonplayer.mo
share/locale/be/LC_MESSAGES/dragonplayer.mo
@@ -79,22 +83,4 @@ share/locale/uk/LC_MESSAGES/dragonplayer.mo
share/locale/wa/LC_MESSAGES/dragonplayer.mo
share/locale/zh_CN/LC_MESSAGES/dragonplayer.mo
share/locale/zh_TW/LC_MESSAGES/dragonplayer.mo
-share/man/ca/man1/dragon.1.gz
-share/man/de/man1/dragon.1.gz
-share/man/es/man1/dragon.1.gz
-share/man/et/man1/dragon.1.gz
-share/man/fr/man1/dragon.1.gz
-share/man/it/man1/dragon.1.gz
-share/man/man1/dragon.1.gz
-share/man/nl/man1/dragon.1.gz
-share/man/pt/man1/dragon.1.gz
-share/man/pt_BR/man1/dragon.1.gz
-share/man/sl/man1/dragon.1.gz
-share/man/sr/man1/dragon.1.gz
-share/man/sr@latin/man1/dragon.1.gz
-share/man/sv/man1/dragon.1.gz
-share/man/tr/man1/dragon.1.gz
-share/man/uk/man1/dragon.1.gz
share/metainfo/org.kde.dragonplayer.appdata.xml
-share/solid/actions/dragonplayer-openaudiocd.desktop
-share/solid/actions/dragonplayer-opendvd.desktop
diff --git a/multimedia/gstreamer1-plugins-all/Makefile b/multimedia/gstreamer1-plugins-all/Makefile
index 93539c437777..b12eb75b9d2b 100644
--- a/multimedia/gstreamer1-plugins-all/Makefile
+++ b/multimedia/gstreamer1-plugins-all/Makefile
@@ -1,6 +1,6 @@
PORTNAME= gstreamer1-plugins-all
PORTVERSION= ${_GST_VERSION}
-PORTREVISION= 0
+PORTREVISION= 1
CATEGORIES= multimedia
MAINTAINER= multimedia@FreeBSD.org
@@ -8,6 +8,6 @@ COMMENT= Meta-port of all GStreamer 1.x plugins
WWW= https://gstreamer.freedesktop.org/
USES= gstreamer metaport
-USE_GSTREAMER= ${_GST_PLUGINS_VER}
+USE_GSTREAMER= ${_GST_PLUGINS_VER:Nmsdk}
.include <bsd.port.mk>
diff --git a/multimedia/gstreamer1-plugins-bad/files/patch-ext_webrtcdsp_meson.build b/multimedia/gstreamer1-plugins-bad/files/patch-ext_webrtcdsp_meson.build
index a9f29c42b14b..3d1e42eb7034 100644
--- a/multimedia/gstreamer1-plugins-bad/files/patch-ext_webrtcdsp_meson.build
+++ b/multimedia/gstreamer1-plugins-bad/files/patch-ext_webrtcdsp_meson.build
@@ -1,6 +1,16 @@
---- ext/webrtcdsp/meson.build.orig 2025-03-11 20:14:44 UTC
+--- ext/webrtcdsp/meson.build.orig 2025-08-07 18:06:46 UTC
+++ ext/webrtcdsp/meson.build
-@@ -49,7 +49,7 @@ if webrtc_dep.found()
+@@ -43,13 +43,17 @@ endif
+ required : get_option('webrtcdsp'))
+ endif
+
++if get_option('webrtcdsp').disabled()
++ subdir_done()
++endif
++
+ if webrtc_dep.found()
+ gstwebrtcdsp = library('gstwebrtcdsp',
+ webrtc_sources,
cpp_args : gst_plugins_bad_args,
link_args : noseh_link_args,
include_directories : [configinc],
diff --git a/multimedia/gstreamer1-plugins-bad/files/patch-gst-libs_gst_cuda_meson.build b/multimedia/gstreamer1-plugins-bad/files/patch-gst-libs_gst_cuda_meson.build
index 83836091813e..4c5d0a5ae805 100644
--- a/multimedia/gstreamer1-plugins-bad/files/patch-gst-libs_gst_cuda_meson.build
+++ b/multimedia/gstreamer1-plugins-bad/files/patch-gst-libs_gst_cuda_meson.build
@@ -1,11 +1,11 @@
---- gst-libs/gst/cuda/meson.build.orig 2025-03-11 20:14:44 UTC
+--- gst-libs/gst/cuda/meson.build.orig 2025-08-07 18:06:46 UTC
+++ gst-libs/gst/cuda/meson.build
@@ -1,3 +1,4 @@
+if get_option('cuda').enabled()
cuda_sources = files([
'gstcudabufferpool.cpp',
'gstcudacontext.cpp',
-@@ -217,3 +218,4 @@ meson.override_dependency(pkg_name, gstcuda_dep)
+@@ -214,3 +215,4 @@ meson.override_dependency(pkg_name, gstcuda_dep)
sources: gen_sources)
meson.override_dependency(pkg_name, gstcuda_dep)
diff --git a/multimedia/gstreamer1-plugins-msdk/Makefile b/multimedia/gstreamer1-plugins-msdk/Makefile
index 52cc5cd3cec6..29f7e70fc12b 100644
--- a/multimedia/gstreamer1-plugins-msdk/Makefile
+++ b/multimedia/gstreamer1-plugins-msdk/Makefile
@@ -3,6 +3,9 @@ CATEGORIES= multimedia
COMMENT= GStreamer (Intel MediaSDK) plugin
+ONLY_FOR_ARCHS= amd64 i386
+ONLY_FOR_ARCHS_REASON= only Intel GPUs on x86 are supported
+
LIB_DEPENDS= libdrm.so:graphics/libdrm \
libgudev-1.0.so:devel/libgudev \
libmfx.so:multimedia/intel-media-sdk \
diff --git a/multimedia/guvcview/Makefile b/multimedia/guvcview/Makefile
new file mode 100644
index 000000000000..5c8d1726983e
--- /dev/null
+++ b/multimedia/guvcview/Makefile
@@ -0,0 +1,39 @@
+PORTNAME= guvcview
+DISTVERSION= 2.2.1
+CATEGORIES= multimedia
+MASTER_SITES= SOURCEFORGE/guvcview/source
+DISTNAME= ${PORTNAME}-src-${DISTVERSION}
+
+MAINTAINER= walker.thompson@urz.uni-heidelberg.de
+COMMENT= Simple v4l2 full-featured video grabber
+WWW= https://guvcview.sourceforge.net/
+
+LICENSE= GPLv2
+
+BUILD_DEPENDS= ${LOCALBASE}/include/linux/videodev.h:multimedia/v4l_compat \
+ vulkan-headers>0:graphics/vulkan-headers
+LIB_DEPENDS= libavcodec.so:multimedia/ffmpeg \
+ libgsl.so:math/gsl \
+ libpng.so:graphics/png \
+ libportaudio.so:audio/portaudio \
+ libudev.so:devel/libudev-devd \
+ libv4l2.so:multimedia/libv4l
+
+USES= cmake gl gettext-runtime gettext-tools localbase:ldflags ninja \
+ pkgconfig qt:6 sdl tar:bz2
+USE_GL= opengl
+USE_QT= base
+USE_SDL= sdl2
+
+CMAKE_ON= USE_QT6 USE_SDL2
+CMAKE_OFF= USE_GTK3 USE_SFML
+
+CFLAGS+= -DNAME_MAX=MAXNAMLEN
+LDFLAGS+= -lintl
+
+OPTIONS_DEFINE= PULSEAUDIO
+PULSEAUDIO_BROKEN= Doesn't show up as an audio backend at runtime
+PULSEAUDIO_LIB_DEPENDS= libpulse.so:audio/pulseaudio
+PULSEAUDIO_CMAKE_BOOL= USE_PULSE
+
+.include <bsd.port.mk>
diff --git a/multimedia/guvcview/distinfo b/multimedia/guvcview/distinfo
new file mode 100644
index 000000000000..890ef8dda756
--- /dev/null
+++ b/multimedia/guvcview/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1748610514
+SHA256 (guvcview-src-2.2.1.tar.bz2) = d2adc7ce762961e853c3e16b511bad61504492d12f3e2eb7e30da4a2f7ade5af
+SIZE (guvcview-src-2.2.1.tar.bz2) = 355747
diff --git a/multimedia/guvcview/files/patch-guvcview_guvcview.c b/multimedia/guvcview/files/patch-guvcview_guvcview.c
new file mode 100644
index 000000000000..6a77e654b7ae
--- /dev/null
+++ b/multimedia/guvcview/files/patch-guvcview_guvcview.c
@@ -0,0 +1,31 @@
+--- guvcview/guvcview.c.orig 2024-11-02 13:15:33 UTC
++++ guvcview/guvcview.c
+@@ -28,6 +28,7 @@
+ #include <sys/resource.h>
+ #include <sys/stat.h>
+ #include <sys/syscall.h>
++#include <pthread_np.h>
+ #include <unistd.h>
+
+ #include "config.h"
+@@ -226,8 +227,8 @@ int main(int argc, char *argv[]) {
+ #endif
+
+ if (debug_level > 1)
+- printf("GUVCVIEW: main thread (tid: %u)\n",
+- (unsigned int)syscall(SYS_gettid));
++ printf("GUVCVIEW: main thread (tid: %d)\n",
++ pthread_getthreadid_np());
+
+ /*set the v4l2 core verbosity*/
+ v4l2core_set_verbosity(debug_level);
+@@ -393,8 +394,7 @@ int main(int argc, char *argv[]) {
+ gui_error("Guvcview error", "could not start the video capture thread",
+ 1);
+ } else if (debug_level > 2)
+- printf("GUVCVIEW: created capture thread with tid: %u\n",
+- (unsigned int)capture_thread);
++ printf("GUVCVIEW: created capture thread\n");
+
+ struct timespec now;
+ clock_gettime(CLOCK_REALTIME, &now);
diff --git a/multimedia/guvcview/files/patch-guvcview_video__capture.c b/multimedia/guvcview/files/patch-guvcview_video__capture.c
new file mode 100644
index 000000000000..2effe5e75b70
--- /dev/null
+++ b/multimedia/guvcview/files/patch-guvcview_video__capture.c
@@ -0,0 +1,71 @@
+i+--- guvcview/video_capture.c.orig 2024-11-02 13:15:33 UTC
++++ guvcview/video_capture.c
+@@ -34,6 +34,7 @@
+ /* support for internationalization - i18n */
+ #include <libintl.h>
+ #include <locale.h>
++#include <pthread_np.h>
+
+ #include "config.h"
+ #include "core_io.h"
+@@ -82,6 +83,7 @@ static __THREAD_TYPE encoder_thread;
+ static v4l2_dev_t *my_vd = NULL;
+
+ static __THREAD_TYPE encoder_thread;
++static __THREAD_TYPE encoder_audio_thread;
+
+ static int my_encoder_status = 0;
+
+@@ -622,8 +624,8 @@ static void *audio_processing_loop(void *data) {
+ encoder_context_t *encoder_ctx = (encoder_context_t *)data;
+
+ if (debug_level > 1)
+- printf("GUVCVIEW: audio thread (tid: %u)\n",
+- (unsigned int)syscall(SYS_gettid));
++ printf("GUVCVIEW: audio thread (tid: %d)\n",
++ pthread_getthreadid_np());
+
+ audio_context_t *audio_ctx = get_audio_context();
+ if (!audio_ctx) {
+@@ -717,8 +719,8 @@ static void *encoder_loop(void *data) {
+ my_encoder_status = 1;
+
+ if (debug_level > 1)
+- printf("GUVCVIEW: encoder thread (tid: %u)\n",
+- (unsigned int)syscall(SYS_gettid));
++ printf("GUVCVIEW: encoder thread (tid: %d)\n",
++ pthread_getthreadid_np());
+
+ /*get the audio context*/
+ audio_context_t *audio_ctx = get_audio_context();
+@@ -830,8 +832,7 @@ static void *encoder_loop(void *data) {
+ fprintf(stderr, "GUVCVIEW: encoder audio thread creation failed (%i)\n",
+ ret);
+ else if (debug_level > 2)
+- printf("GUVCVIEW: created audio encoder thread with tid: %u\n",
+- (unsigned int)encoder_audio_thread);
++ printf("GUVCVIEW: created audio encoder thread\n");
+ }
+
+ while (video_capture_get_save_video()) {
+@@ -914,8 +915,8 @@ void *capture_loop(void *data) {
+ quit = 0;
+
+ if (debug_level > 1)
+- printf("GUVCVIEW: capture thread (tid: %u)\n",
+- (unsigned int)syscall(SYS_gettid));
++ printf("GUVCVIEW: capture thread (tid: %d)\n",
++ pthread_getthreadid_np());
+
+ int ret = 0;
+
+@@ -1210,8 +1211,7 @@ int start_encoder_thread() {
+ if (ret)
+ fprintf(stderr, "GUVCVIEW: encoder thread creation failed (%i)\n", ret);
+ else if (debug_level > 2)
+- printf("GUVCVIEW: created encoder thread with tid: %u\n",
+- (unsigned int)encoder_thread);
++ printf("GUVCVIEW: created encoder thread\n");
+
+ return ret;
+ }
diff --git a/multimedia/guvcview/files/patch-gview__audio_gviewaudio.h b/multimedia/guvcview/files/patch-gview__audio_gviewaudio.h
new file mode 100644
index 000000000000..c4832a643fbf
--- /dev/null
+++ b/multimedia/guvcview/files/patch-gview__audio_gviewaudio.h
@@ -0,0 +1,11 @@
+--- gview_audio/gviewaudio.h.orig 2025-05-30 18:37:32 UTC
++++ gview_audio/gviewaudio.h
+@@ -32,8 +32,6 @@
+ #ifndef GVIEWAUDIO_H
+ #define GVIEWAUDIO_H
+
+-#include <features.h>
+-
+ #include <inttypes.h>
+ #include <pthread.h>
+ #include <sys/types.h>
diff --git a/multimedia/guvcview/files/patch-gview__encoder_gviewencoder.h b/multimedia/guvcview/files/patch-gview__encoder_gviewencoder.h
new file mode 100644
index 000000000000..4539de241cd4
--- /dev/null
+++ b/multimedia/guvcview/files/patch-gview__encoder_gviewencoder.h
@@ -0,0 +1,11 @@
+--- gview_encoder/gviewencoder.h.orig 2025-05-30 18:38:22 UTC
++++ gview_encoder/gviewencoder.h
+@@ -32,8 +32,6 @@
+ #ifndef GVIEWENCODER_H
+ #define GVIEWENCODER_H
+
+-#include <features.h>
+-
+ #include <inttypes.h>
+ #include <sys/types.h>
+
diff --git a/multimedia/guvcview/files/patch-gview__encoder_muxer.c b/multimedia/guvcview/files/patch-gview__encoder_muxer.c
new file mode 100644
index 000000000000..ecb8e788bcb1
--- /dev/null
+++ b/multimedia/guvcview/files/patch-gview__encoder_muxer.c
@@ -0,0 +1,11 @@
+--- gview_encoder/muxer.c.orig 2024-11-02 13:15:33 UTC
++++ gview_encoder/muxer.c
+@@ -30,7 +30,7 @@ Inc., 59 Temple Place, Suite 330, Boston, MA 02111-13
+ #include <unistd.h>
+ // #include <errno.h>
+ #include <assert.h>
+-#include <sys/statfs.h>
++#include <sys/mount.h>
+ /* support for internationalization - i18n */
+ #include <libintl.h>
+ #include <locale.h>
diff --git a/multimedia/guvcview/files/patch-gview__render_gviewrender.h b/multimedia/guvcview/files/patch-gview__render_gviewrender.h
new file mode 100644
index 000000000000..7b740ffd3b57
--- /dev/null
+++ b/multimedia/guvcview/files/patch-gview__render_gviewrender.h
@@ -0,0 +1,11 @@
+--- gview_render/gviewrender.h.orig 2025-05-30 18:38:11 UTC
++++ gview_render/gviewrender.h
+@@ -32,8 +32,6 @@
+ #ifndef GVIEWRENDER_H
+ #define GVIEWRENDER_H
+
+-#include <features.h>
+-
+ #include <inttypes.h>
+ #include <sys/types.h>
+
diff --git a/multimedia/guvcview/files/patch-gview__v4l2core_gviewv4l2core.h b/multimedia/guvcview/files/patch-gview__v4l2core_gviewv4l2core.h
new file mode 100644
index 000000000000..92109f29a5e9
--- /dev/null
+++ b/multimedia/guvcview/files/patch-gview__v4l2core_gviewv4l2core.h
@@ -0,0 +1,11 @@
+--- gview_v4l2core/gviewv4l2core.h.orig 2025-05-30 18:37:59 UTC
++++ gview_v4l2core/gviewv4l2core.h
+@@ -22,8 +22,6 @@
+ #ifndef GVIEWV4L2CORE_H
+ #define GVIEWV4L2CORE_H
+
+-#include <features.h>
+-
+ #include <inttypes.h>
+ #include <libudev.h>
+ #include <linux/media.h>
diff --git a/multimedia/guvcview/files/patch-gview__v4l2core_v4l2__core.c b/multimedia/guvcview/files/patch-gview__v4l2core_v4l2__core.c
new file mode 100644
index 000000000000..dd263d52b42f
--- /dev/null
+++ b/multimedia/guvcview/files/patch-gview__v4l2core_v4l2__core.c
@@ -0,0 +1,14 @@
+--- gview_v4l2core/v4l2_core.c.orig 2024-11-02 13:15:33 UTC
++++ gview_v4l2core/v4l2_core.c
+@@ -96,9 +96,9 @@ int xioctl(int fd, int IOCTL_X, void *arg) {
+ int ret = 0;
+ int tries = IOCTL_RETRY;
+ do {
+- if (!disable_libv4l2)
++/* if (!disable_libv4l2)
+ ret = v4l2_ioctl(fd, IOCTL_X, arg);
+- else
++ else*/
+ ret = ioctl(fd, IOCTL_X, arg);
+ } while (ret && tries-- &&
+ ((errno == EINTR) || (errno == EAGAIN) || (errno == ETIMEDOUT)));
diff --git a/multimedia/guvcview/pkg-descr b/multimedia/guvcview/pkg-descr
new file mode 100644
index 000000000000..8cbd6240a078
--- /dev/null
+++ b/multimedia/guvcview/pkg-descr
@@ -0,0 +1,2 @@
+Guvcview is an application for capturing and viewing video from
+devices supported by the linux kernel video4linux2 interface.
diff --git a/multimedia/guvcview/pkg-plist b/multimedia/guvcview/pkg-plist
new file mode 100644
index 000000000000..0276e0166ecf
--- /dev/null
+++ b/multimedia/guvcview/pkg-plist
@@ -0,0 +1,69 @@
+bin/guvcview
+lib/libgviewaudio.so
+lib/libgviewaudio.so.2
+lib/libgviewaudio.so.2.2.0
+lib/libgviewencoder.so
+lib/libgviewencoder.so.2
+lib/libgviewencoder.so.2.2.1
+lib/libgviewrender.so
+lib/libgviewrender.so.2
+lib/libgviewrender.so.2.2.1
+lib/libgviewv4l2core.so
+lib/libgviewv4l2core.so.2
+lib/libgviewv4l2core.so.2.2.1
+share/appdata/guvcview.appdata.xml
+share/applications/guvcview.desktop
+share/locale/bg/LC_MESSAGES/guvcview.mo
+share/locale/bg/LC_MESSAGES/gview_v4l2core.mo
+share/locale/bs/LC_MESSAGES/guvcview.mo
+share/locale/bs/LC_MESSAGES/gview_v4l2core.mo
+share/locale/cs/LC_MESSAGES/guvcview.mo
+share/locale/cs/LC_MESSAGES/gview_v4l2core.mo
+share/locale/da/LC_MESSAGES/guvcview.mo
+share/locale/da/LC_MESSAGES/gview_v4l2core.mo
+share/locale/de/LC_MESSAGES/guvcview.mo
+share/locale/de/LC_MESSAGES/gview_v4l2core.mo
+share/locale/en_AU/LC_MESSAGES/guvcview.mo
+share/locale/en_AU/LC_MESSAGES/gview_v4l2core.mo
+share/locale/es/LC_MESSAGES/guvcview.mo
+share/locale/es/LC_MESSAGES/gview_v4l2core.mo
+share/locale/eu/LC_MESSAGES/guvcview.mo
+share/locale/eu/LC_MESSAGES/gview_v4l2core.mo
+share/locale/fo/LC_MESSAGES/guvcview.mo
+share/locale/fo/LC_MESSAGES/gview_v4l2core.mo
+share/locale/fr/LC_MESSAGES/guvcview.mo
+share/locale/fr/LC_MESSAGES/gview_v4l2core.mo
+share/locale/gl/LC_MESSAGES/guvcview.mo
+share/locale/gl/LC_MESSAGES/gview_v4l2core.mo
+share/locale/he/LC_MESSAGES/guvcview.mo
+share/locale/he/LC_MESSAGES/gview_v4l2core.mo
+share/locale/hr/LC_MESSAGES/guvcview.mo
+share/locale/hr/LC_MESSAGES/gview_v4l2core.mo
+share/locale/it/LC_MESSAGES/guvcview.mo
+share/locale/it/LC_MESSAGES/gview_v4l2core.mo
+share/locale/ja/LC_MESSAGES/guvcview.mo
+share/locale/ja/LC_MESSAGES/gview_v4l2core.mo
+share/locale/lv/LC_MESSAGES/guvcview.mo
+share/locale/lv/LC_MESSAGES/gview_v4l2core.mo
+share/locale/nl/LC_MESSAGES/guvcview.mo
+share/locale/nl/LC_MESSAGES/gview_v4l2core.mo
+share/locale/pl/LC_MESSAGES/guvcview.mo
+share/locale/pl/LC_MESSAGES/gview_v4l2core.mo
+share/locale/pt/LC_MESSAGES/guvcview.mo
+share/locale/pt/LC_MESSAGES/gview_v4l2core.mo
+share/locale/pt_BR/LC_MESSAGES/guvcview.mo
+share/locale/pt_BR/LC_MESSAGES/gview_v4l2core.mo
+share/locale/ru/LC_MESSAGES/guvcview.mo
+share/locale/ru/LC_MESSAGES/gview_v4l2core.mo
+share/locale/si/LC_MESSAGES/guvcview.mo
+share/locale/si/LC_MESSAGES/gview_v4l2core.mo
+share/locale/sr/LC_MESSAGES/guvcview.mo
+share/locale/sr/LC_MESSAGES/gview_v4l2core.mo
+share/locale/tr/LC_MESSAGES/guvcview.mo
+share/locale/tr/LC_MESSAGES/gview_v4l2core.mo
+share/locale/uk/LC_MESSAGES/guvcview.mo
+share/locale/uk/LC_MESSAGES/gview_v4l2core.mo
+share/locale/zh_TW/LC_MESSAGES/guvcview.mo
+share/locale/zh_TW/LC_MESSAGES/gview_v4l2core.mo
+share/man/man1/guvcview.1.gz
+share/pixmaps/guvcview.png
diff --git a/multimedia/handbrake/Makefile b/multimedia/handbrake/Makefile
index 6a6567b03279..01d2a8acfc69 100644
--- a/multimedia/handbrake/Makefile
+++ b/multimedia/handbrake/Makefile
@@ -1,6 +1,5 @@
PORTNAME= handbrake
-DISTVERSION= 1.9.2
-PORTREVISION= 3
+DISTVERSION= 1.10.1
CATEGORIES= multimedia
MASTER_SITES= https://github.com/HandBrake/HandBrake/releases/download/${DISTVERSION}/
MASTER_SITES+= https://github.com/HandBrake/HandBrake-contribs/releases/download/contribs/:contrib
@@ -13,10 +12,11 @@ MAINTAINER= naito.yuichiro@gmail.com
COMMENT= Versatile DVD ripper and video transcoder
WWW= https://handbrake.fr/
-LICENSE= GPLv2
+LICENSE= GPLv2 FDK_AAC
+LICENSE_COMB= multi
LICENSE_NAME_FDK_AAC= Software License for The Fraunhofer FDK AAC Codec Library for Android
LICENSE_FILE_FDK_AAC= ${WRKDIR}/${DISTFILES:Mfdk*:R:R}/NOTICE
-LICENSE_FILE= ${WRKSRC}/COPYING
+LICENSE_FILE_GPLv2= ${WRKSRC}/COPYING
LICENSE_PERMS_FDK_AAC= dist-mirror pkg-mirror auto-accept
ONLY_FOR_ARCHS= amd64 powerpc powerpc64 powerpc64le
@@ -45,16 +45,16 @@ LIB_DEPENDS= libdbus-1.so:devel/dbus \
USES= autoreconf:build compiler:c11 gmake iconv libtool:build \
localbase:ldflags ninja:build pkgconfig python:build
-CONTRIB_FILES= SVT-AV1-v2.3.0.tar.gz \
+CONTRIB_FILES= SVT-AV1-v3.1.0.tar.gz \
fdk-aac-2.0.3.tar.gz \
- ffmpeg-7.1.tar.bz2 \
+ ffmpeg-7.1.1.tar.bz2 \
libbluray-1.3.4.tar.bz2 \
libdvdnav-6.1.1.tar.bz2 \
libdvdread-6.1.3.tar.bz2 \
dav1d-1.5.1.tar.bz2 \
- dovi_tool-libdovi-3.1.2.tar.gz \
- x265_4.1.tar.gz \
- zimg-3.0.5.tar.gz
+ dovi_tool-libdovi-3.3.2.tar.gz \
+ x265-snapshot-20250729-13276.tar.gz \
+ zimg-snapshot-20250624.tar.gz
.if !defined(PACKAGE_BUILDING)
# DVDCSS version hardcoded in contrib/libdvdread/libdvdread-5.0.0-6-gcb1ae87/src/dvd_input.c (dlopen'ed)
diff --git a/multimedia/handbrake/distinfo b/multimedia/handbrake/distinfo
index 6f6d4ac82c9b..9ad80a170b71 100644
--- a/multimedia/handbrake/distinfo
+++ b/multimedia/handbrake/distinfo
@@ -1,12 +1,12 @@
-TIMESTAMP = 1740479422
-SHA256 (handbrake/HandBrake-1.9.2-source.tar.bz2) = f56696b9863a6c926c0eabdcb980cece9aa222c650278d455ac6873d3220ce49
-SIZE (handbrake/HandBrake-1.9.2-source.tar.bz2) = 9431665
-SHA256 (handbrake/SVT-AV1-v2.3.0.tar.gz) = ebb0b484ef4a0dc281e94342a9f73ad458496f5d3457eca7465bec943910c6c3
-SIZE (handbrake/SVT-AV1-v2.3.0.tar.gz) = 10839376
+TIMESTAMP = 1756263493
+SHA256 (handbrake/HandBrake-1.10.1-source.tar.bz2) = eafa87d64b99c457240675f6b89a7f6aa3c1eb56352ec057a0a0949ba449fe8e
+SIZE (handbrake/HandBrake-1.10.1-source.tar.bz2) = 9484661
+SHA256 (handbrake/SVT-AV1-v3.1.0.tar.gz) = 3999586c261dc3d8690fd1489fc74da4e0fdff9159c8ce2b76ddfac001ad96d3
+SIZE (handbrake/SVT-AV1-v3.1.0.tar.gz) = 10908555
SHA256 (handbrake/fdk-aac-2.0.3.tar.gz) = e25671cd96b10bad896aa42ab91a695a9e573395262baed4e4a2ff178d6a3a78
SIZE (handbrake/fdk-aac-2.0.3.tar.gz) = 2518649
-SHA256 (handbrake/ffmpeg-7.1.tar.bz2) = fd59e6160476095082e94150ada5a6032d7dcc282fe38ce682a00c18e7820528
-SIZE (handbrake/ffmpeg-7.1.tar.bz2) = 13260188
+SHA256 (handbrake/ffmpeg-7.1.1.tar.bz2) = 0c8da2f11579a01e014fc007cbacf5bb4da1d06afd0b43c7f8097ec7c0f143ba
+SIZE (handbrake/ffmpeg-7.1.1.tar.bz2) = 13278839
SHA256 (handbrake/libbluray-1.3.4.tar.bz2) = 478ffd68a0f5dde8ef6ca989b7f035b5a0a22c599142e5cd3ff7b03bbebe5f2b
SIZE (handbrake/libbluray-1.3.4.tar.bz2) = 756323
SHA256 (handbrake/libdvdnav-6.1.1.tar.bz2) = c191a7475947d323ff7680cf92c0fb1be8237701885f37656c64d04e98d18d48
@@ -15,9 +15,9 @@ SHA256 (handbrake/libdvdread-6.1.3.tar.bz2) = ce35454997a208cbe50e91232f0e73fb1a
SIZE (handbrake/libdvdread-6.1.3.tar.bz2) = 395439
SHA256 (handbrake/dav1d-1.5.1.tar.bz2) = 4eddffd108f098e307b93c9da57b6125224dc5877b1b3d157b31be6ae8f1f093
SIZE (handbrake/dav1d-1.5.1.tar.bz2) = 1214503
-SHA256 (handbrake/dovi_tool-libdovi-3.1.2.tar.gz) = 3c74f8f6afdb7d4be97210df201a28a48676b2ebe10c20961176e81e2fd98c36
-SIZE (handbrake/dovi_tool-libdovi-3.1.2.tar.gz) = 450556
-SHA256 (handbrake/x265_4.1.tar.gz) = ef05940bdbf8e2f24c93d799ae8c5d19f43cd235d01c17fa5acf3fa77b48c032
-SIZE (handbrake/x265_4.1.tar.gz) = 1722231
-SHA256 (handbrake/zimg-3.0.5.tar.gz) = a9a0226bf85e0d83c41a8ebe4e3e690e1348682f6a2a7838f1b8cbff1b799bcf
-SIZE (handbrake/zimg-3.0.5.tar.gz) = 326694
+SHA256 (handbrake/dovi_tool-libdovi-3.3.2.tar.gz) = 8ccb1922d7dbb57bc4f2c15c10b90c462f7a5f292efe317c116db923728dd3f1
+SIZE (handbrake/dovi_tool-libdovi-3.3.2.tar.gz) = 489628
+SHA256 (handbrake/x265-snapshot-20250729-13276.tar.gz) = 3feb40d5f7fc37aba193a686a4445efff332f18d0f4830c6af565c3e18d340a8
+SIZE (handbrake/x265-snapshot-20250729-13276.tar.gz) = 1738652
+SHA256 (handbrake/zimg-snapshot-20250624.tar.gz) = 19a96cdc266466be58be86a9271bedb1f080bf4cc14f5ed58ac39dc5b970fd17
+SIZE (handbrake/zimg-snapshot-20250624.tar.gz) = 3217869
diff --git a/multimedia/handbrake/files/patch-contrib_ffmpeg_module.defs b/multimedia/handbrake/files/patch-contrib_ffmpeg_module.defs
index 178198ba7762..1ab6fbcaafbd 100644
--- a/multimedia/handbrake/files/patch-contrib_ffmpeg_module.defs
+++ b/multimedia/handbrake/files/patch-contrib_ffmpeg_module.defs
@@ -1,20 +1,10 @@
-Disable vulkan support.
-Handbrake doesn't require Vulkan but if it is installed in build environment
-(for other ports like QT5), It fails to build Handbrake, because following
-definitions has been removed since vulkan-headers-1.3.238.
-
-* VK_EXT_VIDEO_DECODE_H264_EXTENSION_NAME
-* VK_EXT_VIDEO_DECODE_H265_EXTENSION_NAME
-
---- contrib/ffmpeg/module.defs.orig 2024-12-01 15:28:40 UTC
+--- contrib/ffmpeg/module.defs.orig 2025-08-08 16:41:24 UTC
+++ contrib/ffmpeg/module.defs
-@@ -34,8 +34,10 @@ FFMPEG.CONFIGURE.extra = \
- --enable-filters \
+@@ -35,6 +35,7 @@ FFMPEG.CONFIGURE.extra = \
--disable-hwaccels \
--disable-vdpau \
-+ --disable-vulkan \
--disable-postproc \
++ --disable-vulkan \
--disable-encoders \
-+ --disable-xlib \
--enable-libmp3lame \
- --enable-encoder=ac3 \
+ --enable-encoder=aac \
diff --git a/multimedia/handbrake/files/patch-libhb_enc__qsv.c b/multimedia/handbrake/files/patch-libhb_enc__qsv.c
deleted file mode 100644
index 51f61011c734..000000000000
--- a/multimedia/handbrake/files/patch-libhb_enc__qsv.c
+++ /dev/null
@@ -1,67 +0,0 @@
---- libhb/enc_qsv.c.orig 2024-12-01 15:28:40 UTC
-+++ libhb/enc_qsv.c
-@@ -174,7 +174,9 @@ static int log_encoder_params(const hb_work_private_t
- {
- const mfxExtCodingOption *option1 = NULL;
- const mfxExtCodingOption2 *option2 = NULL;
-+#if (MFX_VERSION >= 2012)
- const mfxExtAV1ScreenContentTools *extScreenContentCoding = NULL;
-+#endif
- const mfxExtHyperModeParam *extHyperModeOption = NULL;
-
- for (int i = 0; i < videoParam->NumExtParam; i++)
-@@ -188,10 +190,12 @@ static int log_encoder_params(const hb_work_private_t
- {
- option2 = (mfxExtCodingOption2*)videoParam->ExtParam[i];
- }
-+#if (MFX_VERSION >= 2012)
- else if (option->Header.BufferId == MFX_EXTBUFF_AV1_SCREEN_CONTENT_TOOLS)
- {
- extScreenContentCoding = (mfxExtAV1ScreenContentTools*)videoParam->ExtParam[i];
- }
-+#endif
- else if (option->Header.BufferId == MFX_EXTBUFF_HYPER_MODE_PARAM)
- {
- extHyperModeOption = (mfxExtHyperModeParam*)videoParam->ExtParam[i];
-@@ -221,13 +225,14 @@ static int log_encoder_params(const hb_work_private_t
- hb_log("encqsvInit: GopRefDist %"PRIu16" GopPicSize %"PRIu16" NumRefFrame %"PRIu16" IdrInterval %"PRIu16"",
- videoParam->mfx.GopRefDist, videoParam->mfx.GopPicSize, videoParam->mfx.NumRefFrame, videoParam->mfx.IdrInterval);
-
-+#if (MFX_VERSION >= 2012)
- if (extScreenContentCoding && ((extScreenContentCoding->IntraBlockCopy == MFX_CODINGOPTION_ON) || (extScreenContentCoding->Palette == MFX_CODINGOPTION_ON)))
- {
- hb_log("encqsvInit: ScreenContentCoding is enabled IBC %s, Palette %s",
- (extScreenContentCoding->IntraBlockCopy == MFX_CODINGOPTION_ON) ? "on" : "off",
- (extScreenContentCoding->Palette == MFX_CODINGOPTION_ON) ? "on" : "off");
- }
--
-+#endif
- if (pv->qsv_info->capabilities & HB_QSV_CAP_B_REF_PYRAMID)
- {
- hb_log("encqsvInit: BFramesMax %d BRefType %s",
-@@ -1670,7 +1675,9 @@ int encqsvInit(hb_work_object_t *w, hb_job_t *job)
- mfxSession session = (mfxSession)0;
- mfxExtCodingOption option1_buf, *option1 = &option1_buf;
- mfxExtCodingOption2 option2_buf, *option2 = &option2_buf;
-+#if (MFX_VERSION >= 2012)
- mfxExtAV1ScreenContentTools screencont_coding_buf, *screencont_coding = &screencont_coding_buf;
-+#endif
- mfxExtCodingOptionSPSPPS sps_pps_buf, *sps_pps = &sps_pps_buf;
- mfxExtAV1BitstreamParam av1_bitstream_buf, *av1_bitstream = &av1_bitstream_buf;
- mfxExtChromaLocInfo chroma_loc_info_buf, *chroma_loc_info = &chroma_loc_info_buf;
-@@ -1795,6 +1802,7 @@ int encqsvInit(hb_work_object_t *w, hb_job_t *job)
- {
- videoParam.ExtParam[videoParam.NumExtParam++] = (mfxExtBuffer*)hyper_encode;
- }
-+#if (MFX_VERSION >= 2012)
- memset(screencont_coding, 0, sizeof(mfxExtAV1ScreenContentTools));
- screencont_coding->Header.BufferId = MFX_EXTBUFF_AV1_SCREEN_CONTENT_TOOLS;
- screencont_coding->Header.BufferSz = sizeof(mfxExtAV1ScreenContentTools);
-@@ -1802,6 +1810,7 @@ int encqsvInit(hb_work_object_t *w, hb_job_t *job)
- {
- videoParam.ExtParam[videoParam.NumExtParam++] = (mfxExtBuffer*)screencont_coding;
- }
-+#endif
- /* Query actual encoding parameters after MFXVideoENCODE_Init, some of them could be overridden */
- sts = MFXVideoENCODE_GetVideoParam(session, &videoParam);
- if (sts != MFX_ERR_NONE)
diff --git a/multimedia/handbrake/files/patch-libhb_handbrake_qsv__common.h b/multimedia/handbrake/files/patch-libhb_handbrake_qsv__common.h
index 87c487304cad..d96a628ca015 100644
--- a/multimedia/handbrake/files/patch-libhb_handbrake_qsv__common.h
+++ b/multimedia/handbrake/files/patch-libhb_handbrake_qsv__common.h
@@ -1,12 +1,17 @@
---- libhb/handbrake/qsv_common.h.orig 2024-12-01 15:28:40 UTC
+--- libhb/handbrake/qsv_common.h.orig 2025-08-08 16:41:24 UTC
+++ libhb/handbrake/qsv_common.h
-@@ -171,7 +171,9 @@ typedef struct
+@@ -260,8 +260,13 @@ typedef struct
+ {
mfxExtCodingOption2 codingOption2;
- mfxExtVideoSignalInfo videoSignalInfo;
- mfxExtHyperModeParam hyperEncodeParam;
+ hb_triplet_t* hyperEncodeParam;
+#if (MFX_VERSION >= 2012)
mfxExtAV1ScreenContentTools av1ScreenContentToolsParam;
+-
+#endif
- mfxExtChromaLocInfo chromaLocInfo;
- mfxExtMasteringDisplayColourVolume masteringDisplayColourVolume;
- mfxExtContentLightLevelInfo contentLightLevelInfo;
++ mfxExtChromaLocInfo chromaLocInfo;
++ mfxExtMasteringDisplayColourVolume masteringDisplayColourVolume;
++ mfxExtContentLightLevelInfo contentLightLevelInfo;
++ mfxExtAV1BitstreamParam av1BitstreamParam;
+ struct
+ {
+ int b_pyramid;
diff --git a/multimedia/handbrake/files/patch-libhb_qsv__common.c b/multimedia/handbrake/files/patch-libhb_qsv__common.c
index 78580b06be46..b0b892e337e7 100644
--- a/multimedia/handbrake/files/patch-libhb_qsv__common.c
+++ b/multimedia/handbrake/files/patch-libhb_qsv__common.c
@@ -1,6 +1,6 @@
---- libhb/qsv_common.c.orig 2024-12-01 15:28:40 UTC
+--- libhb/qsv_common.c.orig 2025-08-08 16:41:24 UTC
+++ libhb/qsv_common.c
-@@ -463,6 +463,7 @@ int qsv_map_mfx_platform_codename(int mfx_platform_cod
+@@ -390,6 +390,7 @@ int qsv_map_mfx_platform_codename(int mfx_platform_cod
case MFX_PLATFORM_DG2:
case MFX_PLATFORM_ALDERLAKE_N:
case MFX_PLATFORM_KEEMBAY:
@@ -8,7 +8,7 @@
case MFX_PLATFORM_METEORLAKE:
case MFX_PLATFORM_BATTLEMAGE:
case MFX_PLATFORM_ARROWLAKE:
-@@ -471,6 +472,7 @@ int qsv_map_mfx_platform_codename(int mfx_platform_cod
+@@ -398,6 +399,7 @@ int qsv_map_mfx_platform_codename(int mfx_platform_cod
case MFX_PLATFORM_LUNARLAKE:
platform = HB_CPU_PLATFORM_INTEL_LNL;
break;
@@ -16,35 +16,34 @@
default:
platform = HB_CPU_PLATFORM_UNSPECIFIED;
}
-@@ -984,7 +986,7 @@ static void init_ext_av1bitstream_option(mfxExtAV1Bits
- extAV1BitstreamParam->Header.BufferSz = sizeof(mfxExtAV1BitstreamParam);
- extAV1BitstreamParam->WriteIVFHeaders = MFX_CODINGOPTION_OFF;
+@@ -928,6 +930,7 @@ static void init_ext_coding_option2(mfxExtCodingOption
+ extCodingOption2->NumMbPerSlice = 2040; // 1920x1088/4
}
--
+
+#if (MFX_VERSION >= 2012)
- static void init_ext_av1screencontent_tools(mfxExtAV1ScreenContentTools *extScreenContentTools)
+ static void init_ext_av1bitstream_option(mfxExtAV1BitstreamParam *extAV1BitstreamParam)
{
- if (extScreenContentTools == NULL)
-@@ -998,7 +1000,7 @@ static void init_ext_av1screencontent_tools(mfxExtAV1S
+ if (extAV1BitstreamParam == NULL)
+@@ -954,6 +957,7 @@ static void init_ext_av1screencontent_tools(mfxExtAV1S
extScreenContentTools->IntraBlockCopy = MFX_CODINGOPTION_OFF;
extScreenContentTools->Palette = MFX_CODINGOPTION_OFF;
}
--
+#endif
+
static int query_capabilities(mfxSession session, int index, mfxVersion version, hb_qsv_info_t *info, int lowpower)
{
- /*
-@@ -1026,7 +1028,9 @@ static int query_capabilities(mfxSession session, int
+@@ -981,8 +985,10 @@ static int query_capabilities(mfxSession session, int
+ mfxExtChromaLocInfo extChromaLocInfo;
mfxExtMasteringDisplayColourVolume extMasteringDisplayColourVolume;
mfxExtContentLightLevelInfo extContentLightLevelInfo;
- mfxExtAV1BitstreamParam extAV1BitstreamParam;
+#if (MFX_VERSION >= 2012)
+ mfxExtAV1BitstreamParam extAV1BitstreamParam;
mfxExtAV1ScreenContentTools extAV1ScreenContentToolsParam;
+#endif
mfxExtHyperModeParam extHyperEncodeParam;
/* Reset capabilities before querying */
-@@ -1460,6 +1464,7 @@ static int query_capabilities(mfxSession session, int
+@@ -1416,6 +1422,7 @@ static int query_capabilities(mfxSession session, int
info->capabilities |= HB_QSV_CAP_HYPERENCODE;
}
}
@@ -52,7 +51,7 @@
if ((lowpower == MFX_CODINGOPTION_ON) && (info->codec_id == MFX_CODEC_AV1))
{
init_video_param(&videoParam);
-@@ -1494,6 +1499,7 @@ static int query_capabilities(mfxSession session, int
+@@ -1450,6 +1457,7 @@ static int query_capabilities(mfxSession session, int
info->capabilities |= HB_QSV_CAP_AV1_SCREENCONTENT;
}
}
@@ -60,7 +59,7 @@
}
return 0;
-@@ -1935,10 +1941,12 @@ static void log_encoder_capabilities(const int log_lev
+@@ -1891,10 +1899,12 @@ static void log_encoder_capabilities(const int log_lev
strcat(buffer, "+nmpslice");
}
}
@@ -73,15 +72,31 @@
if (caps & HB_QSV_CAP_HYPERENCODE)
{
strcat(buffer, " hyperencode");
-@@ -3011,6 +3019,7 @@ int hb_qsv_param_parse(hb_qsv_param_t *param, hb_qsv_i
- param->hyperEncodeParam.Mode = mode->value;
+@@ -2686,6 +2696,7 @@ int hb_qsv_select_ffmpeg_options(qsv_data_t * qsv_data
+ hb_log("encavcodec: using Low Power mode");
+ }
+
++#if (MFX_VERSION >= 2012)
+ if((qsv_data->qsv_info->capabilities & HB_QSV_CAP_AV1_SCREENCONTENT) &&
+ qsv_data->param.av1ScreenContentToolsParam.IntraBlockCopy)
+ {
+@@ -2705,6 +2716,7 @@ int hb_qsv_select_ffmpeg_options(qsv_data_t * qsv_data
+ hb_log("encavcodec: ScreenContentCoding is enabled Palette %s",
+ qsv_data->param.av1ScreenContentToolsParam.Palette ? "on" : "off");
+ }
++#endif
+
+ // Transcoding Info
+ MFX_STRUCT_TO_AV_OPTS(BRCParamMultiplier)
+@@ -3318,6 +3330,7 @@ int hb_qsv_param_parse(AVDictionary** av_opts, hb_qsv_
+ param->hyperEncodeParam = mode;
}
}
+#if (MFX_VERSION >= 2012)
else if (!strcasecmp(key, "palette"))
{
if (info->capabilities & HB_QSV_CAP_AV1_SCREENCONTENT)
-@@ -3041,6 +3050,7 @@ int hb_qsv_param_parse(hb_qsv_param_t *param, hb_qsv_i
+@@ -3348,6 +3361,7 @@ int hb_qsv_param_parse(AVDictionary** av_opts, hb_qsv_
return HB_QSV_PARAM_UNSUPPORTED;
}
}
@@ -89,32 +104,24 @@
else if (!strcasecmp(key, "async-depth"))
{
int async_depth = hb_qsv_atoi(value, &error);
-@@ -3527,13 +3537,14 @@ int hb_qsv_param_default(hb_qsv_param_t *param, mfxVid
- param->av1BitstreamParam.Header.BufferId = MFX_EXTBUFF_AV1_BITSTREAM_PARAM;
- param->av1BitstreamParam.Header.BufferSz = sizeof(mfxExtAV1BitstreamParam);
- param->av1BitstreamParam.WriteIVFHeaders = MFX_CODINGOPTION_OFF;
+@@ -3617,6 +3631,12 @@ int hb_qsv_param_default(hb_qsv_param_t *param, hb_qsv
+ // introduced in API 2.5
+ param->hyperEncodeParam = hb_triplet4key(hb_qsv_hyper_encode_modes, "off");
+
++ memset(&param->av1BitstreamParam, 0, sizeof(mfxExtAV1BitstreamParam));
++ param->av1BitstreamParam.Header.BufferId = MFX_EXTBUFF_AV1_BITSTREAM_PARAM;
++ param->av1BitstreamParam.Header.BufferSz = sizeof(mfxExtAV1BitstreamParam);
++ param->av1BitstreamParam.WriteIVFHeaders = MFX_CODINGOPTION_OFF;
++
+#if (MFX_VERSION >= 2012)
// introduced in API 2.11
memset(&param->av1ScreenContentToolsParam, 0, sizeof(mfxExtAV1ScreenContentTools));
param->av1ScreenContentToolsParam.Header.BufferId = MFX_EXTBUFF_AV1_SCREEN_CONTENT_TOOLS;
- param->av1ScreenContentToolsParam.Header.BufferSz = sizeof(mfxExtAV1ScreenContentTools);
- param->av1ScreenContentToolsParam.IntraBlockCopy = MFX_CODINGOPTION_OFF;
- param->av1ScreenContentToolsParam.Palette = MFX_CODINGOPTION_OFF;
--
-+#endif
- // GOP & rate control
- param->gop.b_pyramid = 1; // enabled by default (if supported)
- param->gop.gop_pic_size = -1; // set automatically
-@@ -3607,10 +3618,12 @@ int hb_qsv_param_default(hb_qsv_param_t *param, mfxVid
- {
- param->videoParam->ExtParam[param->videoParam->NumExtParam++] = (mfxExtBuffer*)&param->av1BitstreamParam;
- }
-+#if (MFX_VERSION >= 2012)
- if (info->capabilities & HB_QSV_CAP_AV1_SCREENCONTENT)
- {
- param->videoParam->ExtParam[param->videoParam->NumExtParam++] = (mfxExtBuffer*)&param->av1ScreenContentToolsParam;
- }
+@@ -3639,6 +3659,7 @@ int hb_qsv_param_default(hb_qsv_param_t *param, hb_qsv
+ param->rc.vbv_buffer_init = .0; // set automatically
+
+ param->low_power = 0;
+#endif
+
#if defined(_WIN32) || defined(__MINGW32__)
if (info->capabilities & HB_QSV_CAP_LOWPOWER_ENCODE)
- {
diff --git a/multimedia/handbrake/files/patch-make_include_contrib.defs b/multimedia/handbrake/files/patch-make_include_contrib.defs
new file mode 100644
index 000000000000..058246d98b42
--- /dev/null
+++ b/multimedia/handbrake/files/patch-make_include_contrib.defs
@@ -0,0 +1,11 @@
+--- make/include/contrib.defs.orig 2025-08-23 10:38:18 UTC
++++ make/include/contrib.defs
+@@ -60,7 +60,7 @@ define import.CONTRIB.defs
+ $(1).EXTRACT.target = $$($(1).build/).stamp.$$($(1).name).extract
+ define $(1).EXTRACT
+ $$(RM.exe) -fr $$($(1).EXTRACT.dir/)
+- $$(TAR.exe) xfC $$($(1).FETCH.distfile) $$($(1).build/)
++ $$(TAR.exe) xfC $$($(1).FETCH.distfile) $$($(1).build/) --no-xattrs
+ $$(TOUCH.exe) $$@
+ endef
+
diff --git a/multimedia/handbrake/pkg-plist b/multimedia/handbrake/pkg-plist
index 58dff1638400..47c05301ae8f 100644
--- a/multimedia/handbrake/pkg-plist
+++ b/multimedia/handbrake/pkg-plist
@@ -3,37 +3,20 @@ bin/HandBrakeCLI
%%X11%%bin/HandBrake
%%X11%%share/applications/fr.handbrake.ghb.desktop
%%X11%%share/icons/hicolor/scalable/apps/fr.handbrake.ghb.svg
-%%X11%%share/locale/af/LC_MESSAGES/ghb.mo
%%X11%%share/locale/bg/LC_MESSAGES/ghb.mo
%%X11%%share/locale/ca/LC_MESSAGES/ghb.mo
%%X11%%share/locale/co/LC_MESSAGES/ghb.mo
-%%X11%%share/locale/cs/LC_MESSAGES/ghb.mo
-%%X11%%share/locale/da/LC_MESSAGES/ghb.mo
%%X11%%share/locale/de/LC_MESSAGES/ghb.mo
%%X11%%share/locale/es/LC_MESSAGES/ghb.mo
%%X11%%share/locale/eu/LC_MESSAGES/ghb.mo
%%X11%%share/locale/fi/LC_MESSAGES/ghb.mo
%%X11%%share/locale/fr/LC_MESSAGES/ghb.mo
-%%X11%%share/locale/he/LC_MESSAGES/ghb.mo
-%%X11%%share/locale/hr/LC_MESSAGES/ghb.mo
%%X11%%share/locale/it/LC_MESSAGES/ghb.mo
%%X11%%share/locale/ja/LC_MESSAGES/ghb.mo
-%%X11%%share/locale/ka/LC_MESSAGES/ghb.mo
%%X11%%share/locale/ko/LC_MESSAGES/ghb.mo
%%X11%%share/locale/nl/LC_MESSAGES/ghb.mo
-%%X11%%share/locale/no/LC_MESSAGES/ghb.mo
-%%X11%%share/locale/pl/LC_MESSAGES/ghb.mo
-%%X11%%share/locale/pt/LC_MESSAGES/ghb.mo
%%X11%%share/locale/pt_BR/LC_MESSAGES/ghb.mo
-%%X11%%share/locale/ro/LC_MESSAGES/ghb.mo
-%%X11%%share/locale/ru/LC_MESSAGES/ghb.mo
-%%X11%%share/locale/si/LC_MESSAGES/ghb.mo
-%%X11%%share/locale/sk/LC_MESSAGES/ghb.mo
%%X11%%share/locale/sl_SI/LC_MESSAGES/ghb.mo
%%X11%%share/locale/sv/LC_MESSAGES/ghb.mo
-%%X11%%share/locale/th/LC_MESSAGES/ghb.mo
-%%X11%%share/locale/tr/LC_MESSAGES/ghb.mo
-%%X11%%share/locale/uk_UA/LC_MESSAGES/ghb.mo
%%X11%%share/locale/zh_CN/LC_MESSAGES/ghb.mo
-%%X11%%share/locale/zh_TW/LC_MESSAGES/ghb.mo
%%X11%%share/metainfo/fr.handbrake.ghb.metainfo.xml
diff --git a/multimedia/kamoso/Makefile b/multimedia/kamoso/Makefile
index 6ff1b56feeec..3fc27fe83042 100644
--- a/multimedia/kamoso/Makefile
+++ b/multimedia/kamoso/Makefile
@@ -8,21 +8,22 @@ WWW= https://apps.kde.org/kamoso/
LICENSE= GPLv2
-USES= cmake compiler:c++11-lang gettext gl gnome gstreamer kde:5 \
- pkgconfig qt:5 tar:xz xorg
+USES= cmake compiler:c++20-lang gettext gl gnome gstreamer kde:6 \
+ pkgconfig qt:6 tar:xz xorg
USE_GL= gl
USE_GNOME= glib20
USE_GSTREAMER= v4l2
-USE_KDE= auth bookmarks codecs completion config configwidgets \
- coreaddons i18n itemviews jobwidgets kio kirigami2 \
- notifications purpose service solid widgetsaddons windowsystem \
- xmlgui \
- ecm:build
-USE_QT= concurrent core dbus declarative graphicaleffects gui network \
- quickcontrols widgets xml \
- buildtools:build qmake:build
+USE_KDE= config i18n kio notifications purpose \
+ doctools:build ecm:build \
+ kirigami2:run
+USE_QT= base declarative
USE_XORG= x11
OPTIONS_DEFINE= DOCS
+# Support for 13.5-RELEASE and 14.2-RELEASE
+.if !exists(/usr/bin/clang-scan-deps)
+USES+= llvm
+.endif
+
.include <bsd.port.mk>
diff --git a/multimedia/kamoso/distinfo b/multimedia/kamoso/distinfo
index 1bb0dc15efc9..f37b5b93fa3a 100644
--- a/multimedia/kamoso/distinfo
+++ b/multimedia/kamoso/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1751381543
-SHA256 (KDE/release-service/25.04.3/kamoso-25.04.3.tar.xz) = 27cb36ac810434514e4f870c64d8ca851e868dd49fca1396dcb5be97a9727477
-SIZE (KDE/release-service/25.04.3/kamoso-25.04.3.tar.xz) = 235688
+TIMESTAMP = 1754646449
+SHA256 (KDE/release-service/25.08.0/kamoso-25.08.0.tar.xz) = 32dc14864fa4b634ce057bf29647cad7bfdac15a282ba2ca98f4230b28142160
+SIZE (KDE/release-service/25.08.0/kamoso-25.08.0.tar.xz) = 213616
diff --git a/multimedia/kamoso/pkg-plist b/multimedia/kamoso/pkg-plist
index 2c16eaa6956d..d4b0a6eee3f8 100644
--- a/multimedia/kamoso/pkg-plist
+++ b/multimedia/kamoso/pkg-plist
@@ -1,5 +1,4 @@
bin/kamoso
-lib/gstreamer-1.0/gstkamosoqt5videosink.so
share/applications/org.kde.kamoso.desktop
share/icons/hicolor/128x128/apps/kamoso.png
share/icons/hicolor/16x16/apps/kamoso.png
@@ -9,7 +8,7 @@ share/icons/hicolor/48x48/apps/kamoso.png
share/icons/hicolor/64x64/apps/kamoso.png
share/icons/hicolor/scalable/actions/burst.svgz
share/icons/hicolor/scalable/apps/kamoso.svg
-share/knotifications5/kamoso.notifyrc
+share/knotifications6/kamoso.notifyrc
share/locale/ar/LC_MESSAGES/kamoso.mo
share/locale/bg/LC_MESSAGES/kamoso.mo
share/locale/bs/LC_MESSAGES/kamoso.mo
diff --git a/multimedia/kasts/distinfo b/multimedia/kasts/distinfo
index d14488815dd8..1a134d1624d0 100644
--- a/multimedia/kasts/distinfo
+++ b/multimedia/kasts/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1751381543
-SHA256 (KDE/release-service/25.04.3/kasts-25.04.3.tar.xz) = 4c46103e0490ee8b38735be61f5c498c4651150118a9c914538190f0249f2f2f
-SIZE (KDE/release-service/25.04.3/kasts-25.04.3.tar.xz) = 646124
+TIMESTAMP = 1754646449
+SHA256 (KDE/release-service/25.08.0/kasts-25.08.0.tar.xz) = c7cb5d3ce480d97b96402d8f9dcfc40c0465a4e1cfe3513fb7ccef78e5eb275c
+SIZE (KDE/release-service/25.08.0/kasts-25.08.0.tar.xz) = 646508
diff --git a/multimedia/kdemultimedia-ffmpegthumbs/distinfo b/multimedia/kdemultimedia-ffmpegthumbs/distinfo
index b435fb247c3c..a3c3ecb7def9 100644
--- a/multimedia/kdemultimedia-ffmpegthumbs/distinfo
+++ b/multimedia/kdemultimedia-ffmpegthumbs/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1751381545
-SHA256 (KDE/release-service/25.04.3/ffmpegthumbs-25.04.3.tar.xz) = 78204751a7a57716971ed194a6636d559fb114113f24c193fd1cf798dfb2a994
-SIZE (KDE/release-service/25.04.3/ffmpegthumbs-25.04.3.tar.xz) = 33240
+TIMESTAMP = 1754646452
+SHA256 (KDE/release-service/25.08.0/ffmpegthumbs-25.08.0.tar.xz) = e9350f4599b060115c29416b5c71e23623e4dced544b0fa4fe657b612195621b
+SIZE (KDE/release-service/25.08.0/ffmpegthumbs-25.08.0.tar.xz) = 33200
diff --git a/multimedia/kdemultimedia/Makefile b/multimedia/kdemultimedia/Makefile
index 2346f04da5ea..6ba738c7e442 100644
--- a/multimedia/kdemultimedia/Makefile
+++ b/multimedia/kdemultimedia/Makefile
@@ -7,7 +7,6 @@ COMMENT= KDE Multimedia applications (meta port)
WWW= https://apps.kde.org/categories/multimedia/
USES= kde:6 metaport qt:6
-USE_QT= #
OPTIONS_DEFINE= DRAGON FFMPEG AUDIOCD_KIO KDENLIVE KMIX
OPTIONS_DEFAULT= ${OPTIONS_DEFINE:NKMIX}
diff --git a/multimedia/kdenlive/Makefile b/multimedia/kdenlive/Makefile
index 9ac242cb1f96..3a4d2dea881e 100644
--- a/multimedia/kdenlive/Makefile
+++ b/multimedia/kdenlive/Makefile
@@ -1,6 +1,5 @@
PORTNAME= kdenlive
DISTVERSION= ${KDE_APPLICATIONS_VERSION}
-PORTREVISION= 1
CATEGORIES= multimedia kde kde-applications
MAINTAINER= kde@FreeBSD.org
diff --git a/multimedia/kdenlive/distinfo b/multimedia/kdenlive/distinfo
index 363cbc328dfb..e982e1865376 100644
--- a/multimedia/kdenlive/distinfo
+++ b/multimedia/kdenlive/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1751381548
-SHA256 (KDE/release-service/25.04.3/kdenlive-25.04.3.tar.xz) = 36f8927e59ed997b1f9584b570bda5b5aa34dc1316b20e5d48f13181731abc89
-SIZE (KDE/release-service/25.04.3/kdenlive-25.04.3.tar.xz) = 14219668
+TIMESTAMP = 1754646454
+SHA256 (KDE/release-service/25.08.0/kdenlive-25.08.0.tar.xz) = f86206b9f86fe5693121723d0bb1750f96c295e9b6c7eb1fea2b408f56cc30d6
+SIZE (KDE/release-service/25.08.0/kdenlive-25.08.0.tar.xz) = 14506180
diff --git a/multimedia/kdenlive/pkg-plist b/multimedia/kdenlive/pkg-plist
index 427de0aed549..462c2d0b87ef 100644
--- a/multimedia/kdenlive/pkg-plist
+++ b/multimedia/kdenlive/pkg-plist
@@ -1,6 +1,58 @@
bin/kdenlive
bin/kdenlive_render
+lib/libkdenliveLibplugin.a
%%QT_PLUGINDIR%%/kf6/thumbcreator/mltpreview.so
+%%QT_QMLDIR%%/org/kde/kdenlive/AssetMenu.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/AssetView.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/AudioLevels.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/Clip.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/ClipAudioThumbs.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/ClipMonitor.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/ClipThumbs.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/Composition.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/CornerSelectionShadow.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/Countdown.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/EffectToolBar.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/GuidesMenu.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/KeyframeView.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/MaskToolBar.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/MixShape.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/MonitorAutomask.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/MonitorCornerScene.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/MonitorGeometryScene.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/MonitorOverlay.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/MonitorRotoScene.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/MonitorRuler.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/MonitorSplit.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/MonitorSplitTracks.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/MonitorToolButton.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/MonitorTrimming.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/MultiScreenToolBar.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/OverlayCenter.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/OverlayCenterDiagonal.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/OverlayLabel.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/OverlayMinimal.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/OverlayStandard.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/OverlayThirds.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/ProjectMonitor.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/PulsingAnimation.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/ResizeHandle.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/ResizeLogic.js
+%%QT_QMLDIR%%/org/kde/kdenlive/RotationHandle.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/Ruler.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/RulerZone.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/SceneToolBar.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/SnappingLogic.js
+%%QT_QMLDIR%%/org/kde/kdenlive/SubTitle.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/SubtitleTrackHead.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/Timeline.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/TimelineLogic.js
+%%QT_QMLDIR%%/org/kde/kdenlive/Track.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/TrackHead.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/ZoomBar.qml
+%%QT_QMLDIR%%/org/kde/kdenlive/kde-qmlmodule.version
+%%QT_QMLDIR%%/org/kde/kdenlive/kdenliveLib.qmltypes
+%%QT_QMLDIR%%/org/kde/kdenlive/qmldir
share/applications/org.kde.kdenlive.desktop
share/config.kcfg/kdenlivesettings.kcfg
%%PORTDOCS%%%%DOCSDIR%%/Kdenlive/AUTHORS
@@ -66,6 +118,7 @@ share/icons/hicolor/scalable/mimetypes/video-mlt-playlist.svgz
%%DATADIR%%/effects/avfilter_chromahold.xml
%%DATADIR%%/effects/avfilter_chromanr.xml
%%DATADIR%%/effects/avfilter_chromashift.xml
+%%DATADIR%%/effects/avfilter_ciescope.xml
%%DATADIR%%/effects/avfilter_colorbalance.xml
%%DATADIR%%/effects/avfilter_colorchannelmixer.xml
%%DATADIR%%/effects/avfilter_colorcontrast.xml
@@ -123,6 +176,9 @@ share/icons/hicolor/scalable/mimetypes/video-mlt-playlist.svgz
%%DATADIR%%/effects/avfilter_histogram.xml
%%DATADIR%%/effects/avfilter_hqdn3d.xml
%%DATADIR%%/effects/avfilter_hqx.xml
+%%DATADIR%%/effects/avfilter_hsvhold.xml
+%%DATADIR%%/effects/avfilter_hsvkey.xml
+%%DATADIR%%/effects/avfilter_huesaturation.xml
%%DATADIR%%/effects/avfilter_il.xml
%%DATADIR%%/effects/avfilter_inflate.xml
%%DATADIR%%/effects/avfilter_kerneldeint.xml
@@ -181,6 +237,7 @@ share/icons/hicolor/scalable/mimetypes/video-mlt-playlist.svgz
%%DATADIR%%/effects/box_blur.xml
%%DATADIR%%/effects/boxblur.xml
%%DATADIR%%/effects/brightness.xml
+%%DATADIR%%/effects/burningtv.xml
%%DATADIR%%/effects/channelcopy.xml
%%DATADIR%%/effects/charcoal.xml
%%DATADIR%%/effects/chroma.xml
@@ -220,6 +277,7 @@ share/icons/hicolor/scalable/mimetypes/video-mlt-playlist.svgz
%%DATADIR%%/effects/frei0r_bigsh0t_rect_to_eq.xml
%%DATADIR%%/effects/frei0r_bigsh0t_stabilize_360.xml
%%DATADIR%%/effects/frei0r_bigsh0t_transform_360.xml
+%%DATADIR%%/effects/frei0r_bluescreen0r.xml
%%DATADIR%%/effects/frei0r_brightness.xml
%%DATADIR%%/effects/frei0r_c0rners.xml
%%DATADIR%%/effects/frei0r_cairogradient.xml
@@ -237,9 +295,11 @@ share/icons/hicolor/scalable/mimetypes/video-mlt-playlist.svgz
%%DATADIR%%/effects/frei0r_defish0r.xml
%%DATADIR%%/effects/frei0r_delay0r.xml
%%DATADIR%%/effects/frei0r_delaygrab.xml
+%%DATADIR%%/effects/frei0r_denoise_hqdn3d.xml
%%DATADIR%%/effects/frei0r_distort0r.xml
%%DATADIR%%/effects/frei0r_dither.xml
%%DATADIR%%/effects/frei0r_edgeglow.xml
+%%DATADIR%%/effects/frei0r_elastic_scale.xml
%%DATADIR%%/effects/frei0r_emboss.xml
%%DATADIR%%/effects/frei0r_equaliz0r.xml
%%DATADIR%%/effects/frei0r_facebl0r.xml
@@ -259,6 +319,8 @@ share/icons/hicolor/scalable/mimetypes/video-mlt-playlist.svgz
%%DATADIR%%/effects/frei0r_lightgraffiti.xml
%%DATADIR%%/effects/frei0r_luminance.xml
%%DATADIR%%/effects/frei0r_mask0mate.xml
+%%DATADIR%%/effects/frei0r_measure_pr0be.xml
+%%DATADIR%%/effects/frei0r_measure_pr0file.xml
%%DATADIR%%/effects/frei0r_medians.xml
%%DATADIR%%/effects/frei0r_nervous.xml
%%DATADIR%%/effects/frei0r_normaliz0r.xml
@@ -297,7 +359,9 @@ share/icons/hicolor/scalable/mimetypes/video-mlt-playlist.svgz
%%DATADIR%%/effects/gamma.xml
%%DATADIR%%/effects/gpsgraphic.xml
%%DATADIR%%/effects/gpstext.xml
+%%DATADIR%%/effects/gradientmap.xml
%%DATADIR%%/effects/grain.xml
+%%DATADIR%%/effects/greyedge.xml
%%DATADIR%%/effects/greyscale.xml
%%DATADIR%%/effects/hsl_primaries.xml
%%DATADIR%%/effects/hsl_range.xml
@@ -457,6 +521,7 @@ share/icons/hicolor/scalable/mimetypes/video-mlt-playlist.svgz
%%DATADIR%%/scripts/automask/requirements-cuda118.txt
%%DATADIR%%/scripts/automask/requirements-cuda124.txt
%%DATADIR%%/scripts/automask/requirements-cuda126.txt
+%%DATADIR%%/scripts/automask/requirements-cuda128.txt
%%DATADIR%%/scripts/automask/requirements-sam.txt
%%DATADIR%%/scripts/automask/sam-objectmask.py
%%DATADIR%%/scripts/checkgpu.py
@@ -467,8 +532,8 @@ share/icons/hicolor/scalable/mimetypes/video-mlt-playlist.svgz
%%DATADIR%%/scripts/whisper/requirements-cuda118.txt
%%DATADIR%%/scripts/whisper/requirements-cuda124.txt
%%DATADIR%%/scripts/whisper/requirements-cuda126.txt
+%%DATADIR%%/scripts/whisper/requirements-cuda128.txt
%%DATADIR%%/scripts/whisper/requirements-seamless.txt
-%%DATADIR%%/scripts/whisper/requirements-whisper-windows.txt
%%DATADIR%%/scripts/whisper/requirements-whisper.txt
%%DATADIR%%/scripts/whisper/seamlessquery.py
%%DATADIR%%/scripts/whisper/whisperquery.py
@@ -596,3 +661,4 @@ share/metainfo/org.kde.kdenlive.appdata.xml
share/mime/packages/org.kde.kdenlive.xml
share/mime/packages/westley.xml
share/qlogging-categories6/kdenlive.categories
+share/qlogging-categories6/kdenlive.renamecategories
diff --git a/multimedia/kew/Makefile b/multimedia/kew/Makefile
index a511a1e08a23..53684fd0e945 100644
--- a/multimedia/kew/Makefile
+++ b/multimedia/kew/Makefile
@@ -1,6 +1,6 @@
PORTNAME= kew
DISTVERSIONPREFIX= v
-DISTVERSION= 3.4.0
+DISTVERSION= 3.4.1
CATEGORIES= multimedia
MAINTAINER= yuri@FreeBSD.org
diff --git a/multimedia/kew/distinfo b/multimedia/kew/distinfo
index 50bd23d6b5f8..a90cffb3dbec 100644
--- a/multimedia/kew/distinfo
+++ b/multimedia/kew/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1752207268
-SHA256 (ravachol-kew-v3.4.0_GH0.tar.gz) = a7d19f004d05eb820fee5c43bce9d625eac1c7d7b3ab0b0181858abb97912e35
-SIZE (ravachol-kew-v3.4.0_GH0.tar.gz) = 1156052
+TIMESTAMP = 1755663337
+SHA256 (ravachol-kew-v3.4.1_GH0.tar.gz) = 4a693d881f5f9d1ba70004c13b00ae6f75c2e592192574ac1d549a025fb3c511
+SIZE (ravachol-kew-v3.4.1_GH0.tar.gz) = 1128923
diff --git a/multimedia/libndi/Makefile b/multimedia/libndi/Makefile
index fcae1e68b468..a54b164e56b1 100644
--- a/multimedia/libndi/Makefile
+++ b/multimedia/libndi/Makefile
@@ -1,6 +1,5 @@
PORTNAME= libndi
-PORTVERSION= g20200630
-PORTREVISION= 2
+PORTVERSION= g20250811
CATEGORIES= multimedia net
MAINTAINER= yuri@FreeBSD.org
@@ -10,8 +9,7 @@ WWW= https://code.videolan.org/jbk/libndi
LICENSE= LGPL21
LICENSE_FILE= ${WRKSRC}/COPYING
-LIB_DEPENDS= libavcodec.so:multimedia/ffmpeg \
- libmicrodns.so:dns/libmicrodns
+LIB_DEPENDS= libmicrodns.so:dns/libmicrodns
USES= meson pkgconfig
@@ -20,12 +18,6 @@ USE_LDCONFIG= yes
USE_GITLAB= yes
GL_SITE= https://code.videolan.org
GL_ACCOUNT= jbk
-GL_TAGNAME= c14b40caafb26a02249f062e7f907ceaa53c1b74
-
-PLIST_FILES= bin/ndi \
- include/libndi.h \
- lib/libndi.so \
- lib/libndi.so.0 \
- lib/libndi.so.0.0.1
+GL_TAGNAME= 930234549f96bcf7442795180f8d1fb43ed23af1
.include <bsd.port.mk>
diff --git a/multimedia/libndi/distinfo b/multimedia/libndi/distinfo
index f8cba6191c73..e94bc88fe0cf 100644
--- a/multimedia/libndi/distinfo
+++ b/multimedia/libndi/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1617891578
-SHA256 (jbk-libndi-c14b40caafb26a02249f062e7f907ceaa53c1b74_GL0.tar.gz) = 238d912d66a1edc28bfd9525db9b203c847b95d815a00814948a15cbcbfa40ca
-SIZE (jbk-libndi-c14b40caafb26a02249f062e7f907ceaa53c1b74_GL0.tar.gz) = 19788
+TIMESTAMP = 1756031040
+SHA256 (jbk-libndi-930234549f96bcf7442795180f8d1fb43ed23af1_GL0.tar.gz) = d3f18d56b460c80afce8a3b943b1164ab3c11b1d1b8ff9456d75beace5b2eceb
+SIZE (jbk-libndi-930234549f96bcf7442795180f8d1fb43ed23af1_GL0.tar.gz) = 25533
diff --git a/multimedia/libndi/pkg-plist b/multimedia/libndi/pkg-plist
new file mode 100644
index 000000000000..42a4e2cffb2c
--- /dev/null
+++ b/multimedia/libndi/pkg-plist
@@ -0,0 +1,8 @@
+bin/ndi
+include/ndi/ndi.h
+include/ndi/packet.h
+include/ndi/recv.h
+lib/libndi.so
+lib/libndi.so.0
+lib/libndi.so.0.1.0
+libdata/pkgconfig/libndi.pc
diff --git a/multimedia/mediamtx/Makefile b/multimedia/mediamtx/Makefile
index 4d6da2ed7bb5..c998442f8081 100644
--- a/multimedia/mediamtx/Makefile
+++ b/multimedia/mediamtx/Makefile
@@ -1,9 +1,8 @@
PORTNAME= mediamtx
DISTVERSIONPREFIX= v
-DISTVERSION= 1.13.1
-PORTREVISION= 1
+DISTVERSION= 1.14.0
CATEGORIES= multimedia net
-MASTER_SITES+= https://github.com/video-dev/hls.js/releases/download/v1.6.7/
+MASTER_SITES+= https://github.com/video-dev/hls.js/releases/download/v1.6.10/
DISTFILES+= release.zip
MAINTAINER= diizzy@FreeBSD.org
@@ -26,6 +25,7 @@ SUB_LIST= USER=${USERS} GROUP=${GROUPS}
post-extract:
${MV} ${WRKDIR}/dist/hls.min.js ${WRKSRC}/internal/servers/hls
+ ${RM} -r ${WRKSRC}/internal/staticsources/rpicamera
pre-configure:
${ECHO} ${DISTVERSIONFULL} > ${WRKSRC}/internal/core/VERSION
diff --git a/multimedia/mediamtx/distinfo b/multimedia/mediamtx/distinfo
index caec39af2b7b..71349cbc2ee9 100644
--- a/multimedia/mediamtx/distinfo
+++ b/multimedia/mediamtx/distinfo
@@ -1,7 +1,7 @@
-TIMESTAMP = 1753133812
-SHA256 (go/multimedia_mediamtx/mediamtx-v1.13.1/release.zip) = 3af330143f96edf4f74338a104c59e85294d0a3b1d33872027c78973072499b5
-SIZE (go/multimedia_mediamtx/mediamtx-v1.13.1/release.zip) = 5437047
-SHA256 (go/multimedia_mediamtx/mediamtx-v1.13.1/v1.13.1.mod) = fcf06526149c35f2a912abb7233cd8ee435d65f00bc9846acfaf3a3d48a59053
-SIZE (go/multimedia_mediamtx/mediamtx-v1.13.1/v1.13.1.mod) = 4237
-SHA256 (go/multimedia_mediamtx/mediamtx-v1.13.1/v1.13.1.zip) = 7f5fec4bf29375f8c9d584cfd6476ff9d2c4eafca0de16b51e5c01d32a3c690e
-SIZE (go/multimedia_mediamtx/mediamtx-v1.13.1/v1.13.1.zip) = 636823
+TIMESTAMP = 1755438072
+SHA256 (go/multimedia_mediamtx/mediamtx-v1.14.0/release.zip) = 5c72c7bb6119c1d69471396e6a5184832b0782a1ff7cd94e0588b5c491c4dccb
+SIZE (go/multimedia_mediamtx/mediamtx-v1.14.0/release.zip) = 5512772
+SHA256 (go/multimedia_mediamtx/mediamtx-v1.14.0/v1.14.0.mod) = ee9831442fe710787215e8dc72b3c2260512b418950d988ebc6c60d8c498ae84
+SIZE (go/multimedia_mediamtx/mediamtx-v1.14.0/v1.14.0.mod) = 4044
+SHA256 (go/multimedia_mediamtx/mediamtx-v1.14.0/v1.14.0.zip) = c4e4fb378ef2249ff3cdc8f12e6abe52909640b443d6677779fa421c55e7b62d
+SIZE (go/multimedia_mediamtx/mediamtx-v1.14.0/v1.14.0.zip) = 653241
diff --git a/multimedia/mediamtx/files/patch-internal_staticsources_handler.go b/multimedia/mediamtx/files/patch-internal_staticsources_handler.go
new file mode 100644
index 000000000000..da301f21b561
--- /dev/null
+++ b/multimedia/mediamtx/files/patch-internal_staticsources_handler.go
@@ -0,0 +1,30 @@
+--- internal/staticsources/handler.go.orig 2025-08-16 07:32:58 UTC
++++ internal/staticsources/handler.go
+@@ -13,7 +13,7 @@ import (
+ "github.com/bluenviron/mediamtx/internal/logger"
+ sshls "github.com/bluenviron/mediamtx/internal/staticsources/hls"
+ ssmpegts "github.com/bluenviron/mediamtx/internal/staticsources/mpegts"
+- ssrpicamera "github.com/bluenviron/mediamtx/internal/staticsources/rpicamera"
++// ssrpicamera "github.com/bluenviron/mediamtx/internal/staticsources/rpicamera"
+ ssrtmp "github.com/bluenviron/mediamtx/internal/staticsources/rtmp"
+ ssrtp "github.com/bluenviron/mediamtx/internal/staticsources/rtp"
+ ssrtsp "github.com/bluenviron/mediamtx/internal/staticsources/rtsp"
+@@ -146,12 +146,12 @@ func (s *Handler) Initialize() {
+ Parent: s,
+ }
+
+- case s.Conf.Source == "rpiCamera":
+- s.instance = &ssrpicamera.Source{
+- RTPMaxPayloadSize: s.RTPMaxPayloadSize,
+- LogLevel: s.LogLevel,
+- Parent: s,
+- }
++// case s.Conf.Source == "rpiCamera":
++// s.instance = &ssrpicamera.Source{
++// RTPMaxPayloadSize: s.RTPMaxPayloadSize,
++// LogLevel: s.LogLevel,
++// Parent: s,
++// }
+
+ default:
+ panic("should not happen")
diff --git a/multimedia/mediamtx/files/patch-mediamtx.yml b/multimedia/mediamtx/files/patch-mediamtx.yml
index 323871f2aded..6321735174c7 100644
--- a/multimedia/mediamtx/files/patch-mediamtx.yml
+++ b/multimedia/mediamtx/files/patch-mediamtx.yml
@@ -1,20 +1,17 @@
---- mediamtx.yml.orig 2025-04-15 18:39:24 UTC
+--- mediamtx.yml.orig 2025-08-12 20:37:33 UTC
+++ mediamtx.yml
-@@ -423,8 +423,7 @@ pathDefaults:
+@@ -450,7 +450,6 @@ pathDefaults:
# * whep://existing-url -> the stream is pulled from another WebRTC server / camera
# * wheps://existing-url -> the stream is pulled from another WebRTC server / camera with HTTPS
# * redirect -> the stream is provided by another path or server
- # * rpiCamera -> the stream is provided by a Raspberry Pi Camera
-- # The following variables can be used in the source string:
-+ # The following variables can be used in the source string:
+ # The following variables can be used in the source string:
# * $MTX_QUERY: query parameters (passed by first reader)
# * $G1, $G2, ...: regular expression groups, if path name is
- # a regular expression.
-@@ -513,99 +512,6 @@ pathDefaults:
- # path which clients will be redirected to.
+@@ -564,101 +563,7 @@ pathDefaults:
# It can be can be a relative path (i.e. /otherstream) or an absolute RTSP URL.
sourceRedirect:
--
+
- ###############################################
- # Default path settings -> Raspberry Pi Camera source (when source is "rpiCamera")
-
@@ -42,22 +39,20 @@
- # values: normal, short, long, custom.
- rpiCameraExposure: normal
- # Auto-white-balance mode.
-- # values: auto, incandescent, tungsten, fluorescent, indoor, daylight, cloudy, custom.
+- # (auto, incandescent, tungsten, fluorescent, indoor, daylight, cloudy or custom).
- rpiCameraAWB: auto
- # Auto-white-balance fixed gains. This can be used in place of rpiCameraAWB.
- # format: [red,blue].
- rpiCameraAWBGains: [0, 0]
-- # Denoise operating mode.
-- # values: off, cdn_off, cdn_fast, cdn_hq.
+- # Denoise operating mode (off, cdn_off, cdn_fast, cdn_hq).
- rpiCameraDenoise: "off"
- # Fixed shutter speed, in microseconds.
- rpiCameraShutter: 0
-- # Metering mode of the AEC/AGC algorithm.
-- # values: centre, spot, matrix, custom.
+- # Metering mode of the AEC/AGC algorithm (centre, spot, matrix or custom).
- rpiCameraMetering: centre
- # Fixed gain.
- rpiCameraGain: 0
-- # EV compensation of the image [-10, 10].
+- # EV compensation of the image in range [-10, 10].
- rpiCameraEV: 0
- # Region of interest, in format x,y,width,height (all normalized between 0 and 1).
- rpiCameraROI:
@@ -70,14 +65,11 @@
- rpiCameraMode:
- # frames per second.
- rpiCameraFPS: 30
-- # Autofocus mode.
-- # values: auto, manual, continuous.
+- # Autofocus mode (auto, manual or continuous).
- rpiCameraAfMode: continuous
-- # Autofocus range.
-- # values: normal, macro, full.
+- # Autofocus range (normal, macro or full).
- rpiCameraAfRange: normal
-- # Autofocus speed.
-- # values: normal, fast.
+- # Autofocus speed (normal or fast).
- rpiCameraAfSpeed: normal
- # Lens position (for manual autofocus only), will be set to focus to a specific distance
- # calculated by the following formula: d = 1 / value
@@ -85,7 +77,7 @@
- # 0.5 moves the lens to focus on objects 2m away.
- # 2 moves the lens to focus on objects 50cm away.
- rpiCameraLensPosition: 0.0
-- # Specifies the autofocus window, in the form x,y,width,height where the coordinates
+- # Autofocus window, in the form x,y,width,height where the coordinates
- # are given as a proportion of the entire image.
- rpiCameraAfWindow:
- # Manual flicker correction period, in microseconds.
@@ -95,18 +87,27 @@
- # Text that is printed on each frame.
- # format is the one of the strftime() function.
- rpiCameraTextOverlay: '%Y-%m-%d %H:%M:%S - MediaMTX'
-- # Codec. Available values: auto, hardwareH264, softwareH264, mjpeg.
+- # Codec (auto, hardwareH264, softwareH264 or mjpeg).
+- # When is "auto" and stream is primary, it defaults to hardwareH264 (if available) or softwareH264.
+- # When is "auto" and stream is secondary, it defaults to mjpeg.
- rpiCameraCodec: auto
-- # Period between H264 IDR frames.
+- # Period between IDR frames (when codec is hardwareH264 or softwareH264).
- rpiCameraIDRPeriod: 60
-- # H264 Bitrate.
+- # Bitrate (when codec is hardwareH264 or softwareH264).
- rpiCameraBitrate: 5000000
-- # H264 profile.
-- rpiCameraProfile: main
-- # H264 level.
-- rpiCameraLevel: '4.1'
-- # JPEG quality.
-- rpiCameraJPEGQuality: 60
-
- ###############################################
+- # Hardware H264 profile (baseline, main or high) (when codec is hardwareH264).
+- rpiCameraHardwareH264Profile: main
+- # Hardware H264 level (4.0, 4.1 or 4.2) (when codec is hardwareH264).
+- rpiCameraHardwareH264Level: '4.1'
+- # Software H264 profile (baseline, main or high) (when codec is softwareH264).
+- rpiCameraSoftwareH264Profile: baseline
+- # Software H264 level (4.0, 4.1 or 4.2) (when codec is softwareH264).
+- rpiCameraSoftwareH264Level: '4.1'
+- # M-JPEG JPEG quality (when codec is mjpeg).
+- rpiCameraMJPEGQuality: 60
+-
+- ###############################################
++ #################################################
# Default path settings -> Hooks
+
+ # Command to run when this path is initialized.
diff --git a/multimedia/mediamtx/files/patch-rpicamera b/multimedia/mediamtx/files/patch-rpicamera
deleted file mode 100644
index 57a37027af30..000000000000
--- a/multimedia/mediamtx/files/patch-rpicamera
+++ /dev/null
@@ -1,77 +0,0 @@
-From 341c1ad77717c9957993b9abebcc627007f10f15 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Krystian=20Chachu=C5=82a?= <krystian@krystianch.com>
-Date: Thu, 30 Jan 2025 23:03:57 +0100
-Subject: [PATCH] rpicamera: disable
-
----
- internal/staticsources/rpicamera/camera.go | 2 +-
- internal/staticsources/rpicamera/camera_disabled.go | 2 --
- internal/staticsources/rpicamera/camera_32.go | 2 +-
- internal/staticsources/rpicamera/camera_64.go | 2 +-
- internal/staticsources/rpicamera/params_serialize.go | 2 +-
- internal/staticsources/rpicamera/pipe.go | 2 +-
- 6 files changed, 6 insertions(+), 8 deletions(-)
-
-diff --git a/internal/staticsources/rpicamera/camera.go b/internal/staticsources/rpicamera/camera.go
-index 9db131f4..b8a41317 100644
---- internal/staticsources/rpicamera/camera.go
-+++ internal/staticsources/rpicamera/camera.go
-@@ -1,4 +1,4 @@
--//go:build (linux && arm) || (linux && arm64)
-+//go:build exclude
-
- package rpicamera
-
-diff --git a/internal/staticsources/rpicamera/camera_disabled.go b/internal/staticsources/rpicamera/camera_disabled.go
-index ac84ee59..e54ccaa3 100644
---- internal/staticsources/rpicamera/camera_disabled.go
-+++ internal/staticsources/rpicamera/camera_disabled.go
-@@ -1,5 +1,3 @@
--//go:build !linux || (!arm && !arm64)
--
- package rpicamera
-
- import (
-diff --git a/internal/staticsources/rpicamera/component_32.go b/internal/staticsources/rpicamera/camera_32.go
-index b7d19f11..51615164 100644
---- internal/staticsources/rpicamera/camera_32.go
-+++ internal/staticsources/rpicamera/camera_32.go
-@@ -1,4 +1,4 @@
--//go:build linux && arm
-+//go:build exclude
-
- package rpicamera
-
-diff --git a/internal/staticsources/rpicamera/component_64.go b/internal/staticsources/rpicamera/camera_64.go
-index 690bf567..ed2e89dd 100644
---- internal/staticsources/rpicamera/camera_64.go
-+++ internal/staticsources/rpicamera/camera_64.go
-@@ -1,4 +1,4 @@
--//go:build linux && arm64
-+//go:build exclude
-
- package rpicamera
-
-diff --git a/internal/staticsources/rpicamera/params_serialize.go b/internal/staticsources/rpicamera/params_serialize.go
-index d9e023b1..845725f3 100644
---- internal/staticsources/rpicamera/params_serialize.go
-+++ internal/staticsources/rpicamera/params_serialize.go
-@@ -1,4 +1,4 @@
--//go:build (linux && arm) || (linux && arm64)
-+//go:build exclude
-
- package rpicamera
-
-diff --git a/internal/staticsources/rpicamera/pipe.go b/internal/staticsources/rpicamera/pipe.go
-index 44eb3bf1..00be2658 100644
---- internal/staticsources/rpicamera/pipe.go
-+++ internal/staticsources/rpicamera/pipe.go
-@@ -1,4 +1,4 @@
--//go:build (linux && arm) || (linux && arm64)
-+//go:build exclude
-
- package rpicamera
-
---
-2.47.1
-
diff --git a/multimedia/mencoder/Makefile b/multimedia/mencoder/Makefile
index 689ba14da7e5..c9ae976bd9d7 100644
--- a/multimedia/mencoder/Makefile
+++ b/multimedia/mencoder/Makefile
@@ -1,6 +1,6 @@
PORTNAME= mencoder
PORTVERSION= ${MPLAYER_PORT_VERSION}.${MPLAYER_SNAPSHOT_DATE:S/-//g}
-PORTREVISION= 3
+PORTREVISION= 0
CATEGORIES= multimedia audio
MAINTAINER= riggs@FreeBSD.org
diff --git a/multimedia/mencoder/distinfo b/multimedia/mencoder/distinfo
index cf2fe139048a..ba43f761e481 100644
--- a/multimedia/mencoder/distinfo
+++ b/multimedia/mencoder/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1727620062
-SHA256 (mplayer-1.5.0.20240928.tar.xz) = b1fbf48ff04ab66a3e89f62a9f47b0fd25a328878cced767183a12c137cb9bcc
-SIZE (mplayer-1.5.0.20240928.tar.xz) = 5218072
+TIMESTAMP = 1755341246
+SHA256 (mplayer-1.5.0.20250816.tar.xz) = 418c4f58d1b62a3eafd6b493b017369613d8b01f01d88bc7b916f5d17f9efadb
+SIZE (mplayer-1.5.0.20250816.tar.xz) = 5216196
diff --git a/multimedia/minisatip/Makefile b/multimedia/minisatip/Makefile
index 72101942dfee..0382728c18ed 100644
--- a/multimedia/minisatip/Makefile
+++ b/multimedia/minisatip/Makefile
@@ -1,5 +1,5 @@
PORTNAME= minisatip
-PORTVERSION= 2.0.12
+PORTVERSION= 2.0.20
DISTVERSIONPREFIX= v
PORTEPOCH= 1
CATEGORIES= multimedia
diff --git a/multimedia/minisatip/distinfo b/multimedia/minisatip/distinfo
index 7a226e17ac2a..d31b2a4b16e0 100644
--- a/multimedia/minisatip/distinfo
+++ b/multimedia/minisatip/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1754132332
-SHA256 (catalinii-minisatip-v2.0.12_GH0.tar.gz) = c96e77218bc7f0ea040545ce6bbed07758682b47389d8c4ea65b08f56c36a27d
-SIZE (catalinii-minisatip-v2.0.12_GH0.tar.gz) = 1656845
+TIMESTAMP = 1755411441
+SHA256 (catalinii-minisatip-v2.0.20_GH0.tar.gz) = 6f85f1b8f4b90a6c4ffd94bcd0aa0132920053dae74c2aceee82fd636649101f
+SIZE (catalinii-minisatip-v2.0.20_GH0.tar.gz) = 1652207
diff --git a/multimedia/mplayer/Makefile b/multimedia/mplayer/Makefile
index 84ab1c012655..bd458dfe0d59 100644
--- a/multimedia/mplayer/Makefile
+++ b/multimedia/mplayer/Makefile
@@ -1,6 +1,6 @@
PORTNAME= mplayer
PORTVERSION= ${MPLAYER_PORT_VERSION}.${MPLAYER_SNAPSHOT_DATE:S/-//g}
-PORTREVISION= 2
+PORTREVISION= 0
CATEGORIES= multimedia audio
MAINTAINER= riggs@FreeBSD.org
diff --git a/multimedia/mplayer/Makefile.common b/multimedia/mplayer/Makefile.common
index 556fdf51e5a1..1c847d35c728 100644
--- a/multimedia/mplayer/Makefile.common
+++ b/multimedia/mplayer/Makefile.common
@@ -3,7 +3,7 @@
# before we include bsd.port.pre.mk
MPLAYER_PORT_VERSION= 1.5.0
-MPLAYER_SNAPSHOT_DATE= 2024-09-28
+MPLAYER_SNAPSHOT_DATE= 2025-08-16
MASTER_SITES= LOCAL/riggs/mplayer
DISTNAME= mplayer-${MPLAYER_PORT_VERSION}.${MPLAYER_SNAPSHOT_DATE:S/-//g}
WRKSRC= ${WRKDIR}/mplayer-export-${MPLAYER_SNAPSHOT_DATE}
diff --git a/multimedia/mplayer/distinfo b/multimedia/mplayer/distinfo
index 18b4b07e90f0..c4ef1cba6d6e 100644
--- a/multimedia/mplayer/distinfo
+++ b/multimedia/mplayer/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1727559180
-SHA256 (mplayer-1.5.0.20240928.tar.xz) = b1fbf48ff04ab66a3e89f62a9f47b0fd25a328878cced767183a12c137cb9bcc
-SIZE (mplayer-1.5.0.20240928.tar.xz) = 5218072
+TIMESTAMP = 1755326948
+SHA256 (mplayer-1.5.0.20250816.tar.xz) = 418c4f58d1b62a3eafd6b493b017369613d8b01f01d88bc7b916f5d17f9efadb
+SIZE (mplayer-1.5.0.20250816.tar.xz) = 5216196
diff --git a/multimedia/mplayer/files/patch-configure b/multimedia/mplayer/files/patch-configure
index a079eeeccd3e..0ad6b3450d25 100644
--- a/multimedia/mplayer/files/patch-configure
+++ b/multimedia/mplayer/files/patch-configure
@@ -1,4 +1,4 @@
---- configure.orig 2024-09-21 09:30:02 UTC
+--- configure.orig 2025-04-01 19:53:08 UTC
+++ configure
@@ -664,7 +664,7 @@ _altivec=auto
_iwmmxt=auto
@@ -26,7 +26,7 @@
;;
esac
-@@ -1520,40 +1519,6 @@ echo >> "$TMPLOG"
+@@ -1520,46 +1519,6 @@ echo >> "$TMPLOG"
echo configuration: $configuration > "$TMPLOG"
echo >> "$TMPLOG"
@@ -37,12 +37,13 @@
- exit 1
-fi
-
--FFBRANCH=master
+-FFBRANCH="release/7.1"
-test -e FFBRANCH && FFBRANCH=$(cat FFBRANCH)
-
-if test -e ffmpeg/mp_auto_pull ; then
+- cfg_fetch="remote.origin.fetch=+refs/heads/$FFBRANCH:refs/remotes/origin/$FFBRANCH"
- echo "Updating FFmpeg, (re)move ffmpeg/mp_auto_pull to disable"
-- (cd ffmpeg && git checkout $FFBRANCH)
+- (cd ffmpeg && git -c "$cfg_fetch" fetch --depth 1 origin && git -c "$cfg_fetch" checkout $FFBRANCH)
- if ! (cd ffmpeg && git pull --rebase --ff-only) ; then
- echo "git pull failed, (re)move ffmpeg/mp_auto_pull to disable pulling"
- exit 1
@@ -64,10 +65,15 @@
- touch ffmpeg/mp_auto_pull
-fi
-
+-ffmpeg_filter_struct_name=AVFilter
+-if grep -q FFFilter ffmpeg/configure; then
+- ffmpeg_filter_struct_name=FFFilter
+-fi
+-
list_subparts() {
test ! -e ffmpeg/libav${3} && return 1
pattern="s/^[^#]*${1}.*([^ ,]*, *\([^ ,)]*\).*/\1_${2}/p"
-@@ -1843,7 +1808,7 @@ if test -z "$_target" ; then
+@@ -1858,7 +1817,7 @@ if test -z "$_target" ; then
case "$1" in
x86_64|amd64|x64|i[3-9]86*|i86pc|x86|x86pc|k5|k6|k6_2|k6_3|k6-2|k6-3|pentium*|athlon*|i586_i686|i586-i686) host_arch=i386 ;;
ia64) host_arch=ia64 ;;
@@ -76,7 +82,7 @@
alpha) host_arch=alpha ;;
sun4*|sparc*) host_arch=sparc ;;
parisc*|hppa*|9000*) host_arch=hppa ;;
-@@ -1965,7 +1930,11 @@ echo "yes"
+@@ -1984,7 +1943,11 @@ echo "yes"
cflag_check "" || die "Compiler is not functioning correctly. Check your installation and custom CFLAGS $CFLAGS ."
echo "yes"
@@ -89,7 +95,7 @@
if test -z "$_target" ; then
cat > $TMPC << EOF
-@@ -2975,7 +2944,11 @@ if test -z "$CFLAGS" || test "$_profile" != "" || test
+@@ -2997,7 +2960,11 @@ if test -z "$CFLAGS" || test "$_profile" != "" || test
fi
if test "$_profile" != "" || test "$_debug" != ""; then
@@ -102,7 +108,7 @@
WARNFLAGS="-W -Wall $WARNFLAGS"
_install_strip=
fi
-@@ -3104,7 +3077,7 @@ if x86_32 ; then
+@@ -3126,7 +3093,7 @@ if x86_32 ; then
_pref_as_version='2.16.92'
echo 'pabsd %xmm0, %xmm1' >> $TMPS
fi
@@ -111,7 +117,7 @@
if test "$as_verc_fail" != yes ; then
echores "ok"
-@@ -3264,8 +3237,8 @@ if ppc && ( test "$_altivec" = yes || test "$_runtime_
+@@ -3286,8 +3253,8 @@ if ppc && ( test "$_altivec" = yes || test "$_runtime_
# check if AltiVec is supported by the compiler, and how to enable it
echocheck "GCC AltiVec flags"
@@ -122,7 +128,7 @@
# check if <altivec.h> should be included
if $(header_check altivec.h $_altivec_gcc_flags) ; then
def_altivec_h='#define HAVE_ALTIVEC_H 1'
-@@ -3371,6 +3344,13 @@ if arm ; then
+@@ -3393,6 +3360,13 @@ if arm ; then
fi
echores "$setend"
@@ -136,7 +142,7 @@
echocheck "softfloat ABI"
softfloat=yes
cpp_condition_check '' 'defined(__ARM_PCS_VFP) || (!defined(__ARM_PCS) && !defined(__SOFTFP__))' && softfloat=no
-@@ -4281,7 +4261,7 @@ elif freebsd || netbsd || openbsd || bsdos ; then
+@@ -4303,7 +4277,7 @@ elif freebsd || netbsd || openbsd || bsdos ; then
if linux ; then
THREAD_CFLAGS=-D_REENTRANT
elif freebsd || netbsd || openbsd || bsdos ; then
@@ -145,7 +151,7 @@
fi
if test "$_pthreads" = auto ; then
cat > $TMPC << EOF
-@@ -4291,7 +4271,7 @@ if ! hpux ; then
+@@ -4313,7 +4287,7 @@ if ! hpux ; then
EOF
_pthreads=no
if ! hpux ; then
@@ -154,7 +160,7 @@
# for crosscompilation, we cannot execute the program, be happy if we can link statically
cc_check $THREAD_CFLAGS $ld_tmp && (tmp_run || test "$ld_static") && ld_pthread="$ld_tmp" && _pthreads=yes && break
done
-@@ -4434,7 +4414,7 @@ EOF
+@@ -4456,7 +4430,7 @@ EOF
}
EOF
_iconv=no
@@ -163,7 +169,7 @@
cc_check $ld_tmp && extra_ldflags="$extra_ldflags $ld_tmp" &&
ld_iconv="$ld_tmp" && _iconv=yes && break
done
-@@ -5848,15 +5828,6 @@ EOF
+@@ -5870,15 +5844,6 @@ EOF
break
fi
done
@@ -179,7 +185,7 @@
if win32 && cc_check -DGL_WIN32 -lopengl32 ; then
_gl=yes
_gl_win32=yes
-@@ -6391,7 +6362,7 @@ elif freebsd ; then
+@@ -6413,7 +6378,7 @@ elif freebsd ; then
elif dragonfly ; then
default_cdrom_device="/dev/cd0"
elif freebsd ; then
@@ -188,7 +194,7 @@
elif openbsd ; then
default_cdrom_device="/dev/rcd0c"
elif sunos ; then
-@@ -6404,7 +6375,7 @@ fi
+@@ -6426,7 +6391,7 @@ fi
default_cdrom_device="/dev/cdrom"
fi
@@ -197,7 +203,7 @@
default_dvd_device=$default_cdrom_device
elif darwin ; then
default_dvd_device="/dev/rdiskN"
-@@ -6931,7 +6902,7 @@ if test "$_libgsm" = auto ; then
+@@ -6953,7 +6918,7 @@ if test "$_libgsm" = auto ; then
echocheck "libgsm"
if test "$_libgsm" = auto ; then
_libgsm=no
@@ -206,7 +212,7 @@
fi
if test "$_libgsm" = yes ; then
def_libgsm='#define CONFIG_LIBGSM 1'
-@@ -7363,6 +7334,16 @@ if test "$_librtmp" = yes && test "$networking" = yes;
+@@ -7385,6 +7350,16 @@ if test "$_librtmp" = yes && test "$networking" = yes;
nolibrtmp=no
def_librtmp='#define CONFIG_LIBRTMP 1'
inputmodules="librtmp $inputmodules"
@@ -223,7 +229,7 @@
else
nolibrtmp=yes
_librtmp=no
-@@ -7780,7 +7761,7 @@ if test "$_mencoder" = no ; then
+@@ -7802,7 +7777,7 @@ if test "$_mencoder" = no ; then
echocheck "mencoder"
if test "$_mencoder" = no ; then
# mpeg1video for vf_lavc, snow for vf_uspp / vf_mcdeint,
@@ -232,7 +238,7 @@
fi
echores "$_mencoder"
-@@ -8384,7 +8365,7 @@ libs_mplayer=$ld_tmp
+@@ -8406,7 +8381,7 @@ libs_mplayer=$ld_tmp
#############################################################################
diff --git a/multimedia/mplayer/files/patch-loader_ext.c b/multimedia/mplayer/files/patch-loader_ext.c
deleted file mode 100644
index 8bddcf64f602..000000000000
--- a/multimedia/mplayer/files/patch-loader_ext.c
+++ /dev/null
@@ -1,11 +0,0 @@
---- loader/ext.c.orig 2021-01-23 18:22:09 UTC
-+++ loader/ext.c
-@@ -444,7 +444,7 @@ LPVOID WINAPI VirtualAlloc(LPVOID address, DWORD size,
-
- if (type&MEM_RESERVE && (unsigned)address&0xffff) {
- size += (unsigned)address&0xffff;
-- address = (unsigned)address&~0xffff;
-+ address = (void*)((unsigned)address&~0xffff);
- }
- pgsz = sysconf(_SC_PAGESIZE);
- if (type&MEM_COMMIT && (unsigned)address%pgsz) {
diff --git a/multimedia/mplayer/files/patch-loader_module.c b/multimedia/mplayer/files/patch-loader_module.c
deleted file mode 100644
index bcdeabbe3ba8..000000000000
--- a/multimedia/mplayer/files/patch-loader_module.c
+++ /dev/null
@@ -1,20 +0,0 @@
---- loader/module.c.orig 2011-07-30 20:44:37 UTC
-+++ loader/module.c
-@@ -844,7 +844,7 @@ static int report_func(void *stack_base, int stack_siz
- // memory management:
- case 0x150011: //NewPtrClear
- case 0x150012: //NewPtrSysClear
-- reg->eax = malloc(((uint32_t *)stack_base)[1]);
-+ reg->eax = (uint32_t)malloc(((uint32_t *)stack_base)[1]);
- memset((void *)reg->eax,0,((uint32_t *)stack_base)[1]);
- #ifdef DEBUG_QTX_API
- printf("%*sLEAVE(%d): EMULATED! 0x%X\n",ret_i*2,"",ret_i, reg->eax);
-@@ -852,7 +852,7 @@ static int report_func(void *stack_base, int stack_siz
- return 1;
- case 0x15000F: //NewPtr
- case 0x150010: //NewPtrSys
-- reg->eax = malloc(((uint32_t *)stack_base)[1]);
-+ reg->eax = (uint32_t)malloc(((uint32_t *)stack_base)[1]);
- #ifdef DEBUG_QTX_API
- printf("%*sLEAVE(%d): EMULATED! 0x%X\n",ret_i*2,"",ret_i, reg->eax);
- #endif
diff --git a/multimedia/mplayer/files/patch-loader_win32.c b/multimedia/mplayer/files/patch-loader_win32.c
deleted file mode 100644
index 604d4e35c657..000000000000
--- a/multimedia/mplayer/files/patch-loader_win32.c
+++ /dev/null
@@ -1,66 +0,0 @@
---- loader/win32.c.orig 2021-01-23 18:22:09 UTC
-+++ loader/win32.c
-@@ -1504,7 +1504,7 @@ static void WINAPI expDeleteCriticalSection(CRITICAL_S
- static int WINAPI expGetCurrentThreadId(void)
- {
- dbgprintf("GetCurrentThreadId() => %d\n", pthread_self());
-- return pthread_self();
-+ return (int)pthread_self();
- }
- static int WINAPI expGetCurrentProcess(void)
- {
-@@ -2019,15 +2019,15 @@ static DWORD WINAPI expSignalObjectAndWait(HANDLE hObj
- expSetEvent(mlist);
- break;
- case 1: // Semaphore
-- expReleaseSemaphore(mlist, 1, NULL);
-+ expReleaseSemaphore((long)mlist, 1, NULL);
- break;
- case 2: // Mutex
-- expReleaseMutex(mlist);
-+ expReleaseMutex((long)mlist);
- break;
- default:
- dbgprintf("Signalling unknown object type %d!\n", hObjectToSignal);
- }
-- return expWaitForSingleObject(hObjectToWaitOn, dwMilliseconds);
-+ return (DWORD)expWaitForSingleObject((void*)hObjectToWaitOn, dwMilliseconds);
- }
-
- static long WINAPI expRegOpenKeyExA(long key, const char* subkey, long reserved, long access, int* newkey)
-@@ -2751,7 +2751,7 @@ static int WINAPI expEnumDisplayMonitors(void *dc, REC
- {
- dbgprintf("EnumDisplayMonitors(0x%x, 0x%x, 0x%x, 0x%x) => ?\n",
- dc, r, callback_proc, callback_param);
-- return callback_proc(0, dc, r, callback_param);
-+ return callback_proc(0, (HDC)dc, r, (LPARAM)callback_param);
- }
-
- #if 0
-@@ -2851,14 +2851,14 @@ static int WINAPI expEnumWindows(int (*callback_func)(
- {
- int i, i2;
- dbgprintf("EnumWindows(0x%x, 0x%x) => 1\n", callback_func, callback_param);
-- i = callback_func(0, callback_param);
-- i2 = callback_func(1, callback_param);
-+ i = callback_func(0, (LPARAM)callback_param);
-+ i2 = callback_func(1, (LPARAM)callback_param);
- return i && i2;
- }
-
- static int WINAPI expGetWindowThreadProcessId(HWND win, int *pid_data)
- {
-- int tid = pthread_self();
-+ int tid = (int)pthread_self();
- dbgprintf("GetWindowThreadProcessId(0x%x, 0x%x) => %d\n",
- win, pid_data, tid);
- if (pid_data)
-@@ -4940,7 +4940,7 @@ static HPALETTE WINAPI expCreatePalette(CONST LOGPALET
- dbgprintf("CreatePalette(%x) => NULL\n", lpgpl);
-
- i = sizeof(LOGPALETTE)+((lpgpl->palNumEntries-1)*sizeof(PALETTEENTRY));
-- test = malloc(i);
-+ test = (HPALETTE)malloc(i);
- memcpy((void *)test, lpgpl, i);
-
- return test;
diff --git a/multimedia/musikcube/Makefile b/multimedia/musikcube/Makefile
index fc04c2be21fe..38280927d439 100644
--- a/multimedia/musikcube/Makefile
+++ b/multimedia/musikcube/Makefile
@@ -1,6 +1,6 @@
PORTNAME= musikcube
-DISTVERSION= 3.0.4
-PORTREVISION= 5
+DISTVERSION= 3.0.4-15
+DISTVERSIONSUFFIX= -g869d2f3f
CATEGORIES= multimedia audio
MAINTAINER= yuri@FreeBSD.org
diff --git a/multimedia/musikcube/distinfo b/multimedia/musikcube/distinfo
index f06587866d4b..6252fdd36cff 100644
--- a/multimedia/musikcube/distinfo
+++ b/multimedia/musikcube/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1720992316
-SHA256 (clangen-musikcube-3.0.4_GH0.tar.gz) = 25bb95b8705d8c79bde447e7c7019372eea7eaed9d0268510278e7fcdb1378a5
-SIZE (clangen-musikcube-3.0.4_GH0.tar.gz) = 4827124
+TIMESTAMP = 1756193609
+SHA256 (clangen-musikcube-3.0.4-15-g869d2f3f_GH0.tar.gz) = 05b0c5d22dedec9dc0d2d6adc11c274d97b1c7c2bec81decabd8bd7bd1e07bd0
+SIZE (clangen-musikcube-3.0.4-15-g869d2f3f_GH0.tar.gz) = 4891414
diff --git a/multimedia/pitivi/Makefile b/multimedia/pitivi/Makefile
index 665c627b0727..e3d0425730dd 100644
--- a/multimedia/pitivi/Makefile
+++ b/multimedia/pitivi/Makefile
@@ -1,5 +1,6 @@
PORTNAME= pitivi
DISTVERSION= 2023.03
+PORTREVISION= 1
CATEGORIES= multimedia
MASTER_SITES= GNOME
@@ -9,7 +10,7 @@ WWW= https://www.pitivi.org
LICENSE= LGPL21+
-BUILD_DEPENDS= gst-validate-launcher:multimedia/gstreamer1-validate \
+BUILD_DEPENDS= gst-validate-launcher:devel/gstreamer1-devtools \
itstool:textproc/itstool
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}gstreamer1>=1.14.0:multimedia/py-gstreamer1@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}cairo>=0:graphics/py-cairo@${PY_FLAVOR} \
diff --git a/multimedia/plasmatube/distinfo b/multimedia/plasmatube/distinfo
index d834cccbe874..32d3a9656b2d 100644
--- a/multimedia/plasmatube/distinfo
+++ b/multimedia/plasmatube/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1751381548
-SHA256 (KDE/release-service/25.04.3/plasmatube-25.04.3.tar.xz) = bd05e3b4ca3be87d05c232df92683bfbd58bb6239d18ad601abe4b4e9cf9b0fb
-SIZE (KDE/release-service/25.04.3/plasmatube-25.04.3.tar.xz) = 224128
+TIMESTAMP = 1754646455
+SHA256 (KDE/release-service/25.08.0/plasmatube-25.08.0.tar.xz) = e5b8c6e239ed483e0e7495e3b311385e1555ffa5531a831dbedb8d8e95db65f2
+SIZE (KDE/release-service/25.08.0/plasmatube-25.08.0.tar.xz) = 224460
diff --git a/multimedia/plexmediaserver-plexpass/Makefile b/multimedia/plexmediaserver-plexpass/Makefile
index e2c68491eb6d..0d1c1be6aa8e 100644
--- a/multimedia/plexmediaserver-plexpass/Makefile
+++ b/multimedia/plexmediaserver-plexpass/Makefile
@@ -1,5 +1,5 @@
-DISTVERSION= 1.42.0.9975
-DISTVERSIONSUFFIX= 6b2b441e1
+DISTVERSION= 1.42.1.10060
+DISTVERSIONSUFFIX= 4e8b05daf
PKGNAMESUFFIX= -plexpass
USE_RC_SUBR= ${PORTNAME}_plexpass
diff --git a/multimedia/plexmediaserver-plexpass/distinfo b/multimedia/plexmediaserver-plexpass/distinfo
index ce124648530f..6fe72dbe3bae 100644
--- a/multimedia/plexmediaserver-plexpass/distinfo
+++ b/multimedia/plexmediaserver-plexpass/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1752778660
-SHA256 (PlexMediaServer-1.42.0.9975-6b2b441e1-FreeBSD-amd64.tar.bz2) = fcad3831ef3f78ca428ce102d34e9a7ac3405a7ca918dd3f506fd5ad2ab0b050
-SIZE (PlexMediaServer-1.42.0.9975-6b2b441e1-FreeBSD-amd64.tar.bz2) = 91697973
+TIMESTAMP = 1754954756
+SHA256 (PlexMediaServer-1.42.1.10060-4e8b05daf-FreeBSD-amd64.tar.bz2) = c3cbc1e8dfe7a1f00a1e2621bcd5cd5750d21b6863977438851832f159ca5f41
+SIZE (PlexMediaServer-1.42.1.10060-4e8b05daf-FreeBSD-amd64.tar.bz2) = 91693639
diff --git a/multimedia/plexmediaserver/Makefile b/multimedia/plexmediaserver/Makefile
index 5c4b49b19857..af34e4754061 100644
--- a/multimedia/plexmediaserver/Makefile
+++ b/multimedia/plexmediaserver/Makefile
@@ -1,6 +1,6 @@
PORTNAME= plexmediaserver
-DISTVERSION?= 1.41.9.9961
-DISTVERSIONSUFFIX?= 46083195d
+DISTVERSION?= 1.42.1.10060
+DISTVERSIONSUFFIX?= 4e8b05daf
CATEGORIES= multimedia
MASTER_SITES?= https://downloads.plex.tv/plex-media-server-new/${DISTVERSION}-${DISTVERSIONSUFFIX}/freebsd/
DISTNAME?= PlexMediaServer-${DISTVERSION}-${DISTVERSIONSUFFIX}-FreeBSD-${ARCH}
diff --git a/multimedia/plexmediaserver/distinfo b/multimedia/plexmediaserver/distinfo
index 6311a422c4b5..10ff0709743e 100644
--- a/multimedia/plexmediaserver/distinfo
+++ b/multimedia/plexmediaserver/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1752779473
-SHA256 (PlexMediaServer-1.41.9.9961-46083195d-FreeBSD-amd64.tar.bz2) = bda443132162e872a47f017b6ba4304bc1b9f5db32bdfcf14cdfcee2db4be560
-SIZE (PlexMediaServer-1.41.9.9961-46083195d-FreeBSD-amd64.tar.bz2) = 91758915
+TIMESTAMP = 1754955675
+SHA256 (PlexMediaServer-1.42.1.10060-4e8b05daf-FreeBSD-amd64.tar.bz2) = c3cbc1e8dfe7a1f00a1e2621bcd5cd5750d21b6863977438851832f159ca5f41
+SIZE (PlexMediaServer-1.42.1.10060-4e8b05daf-FreeBSD-amd64.tar.bz2) = 91693639
diff --git a/multimedia/poe/Makefile b/multimedia/poe/Makefile
index 6ba26979d9fd..05dfd97520f4 100644
--- a/multimedia/poe/Makefile
+++ b/multimedia/poe/Makefile
@@ -1,6 +1,6 @@
PORTNAME= poe
PORTVERSION= 0.5.1
-PORTREVISION= 15
+PORTREVISION= 16
CATEGORIES= multimedia gnustep
MASTER_SITES= http://www.eskimo.com/~pburns/Poe/files/
DISTNAME= Poe-${PORTVERSION}
diff --git a/multimedia/qmmp-qt5/Makefile b/multimedia/qmmp-qt5/Makefile
index 3ae74f029b77..4a578c6d2ec5 100644
--- a/multimedia/qmmp-qt5/Makefile
+++ b/multimedia/qmmp-qt5/Makefile
@@ -1,5 +1,5 @@
PORTNAME= qmmp
-PORTVERSION= 1.7.7
+PORTVERSION= 1.7.8
CATEGORIES= multimedia
MASTER_SITES= http://qmmp.ylsoftware.com/files/${PORTNAME}/${DISTVERSION:R}/ \
SF/qmmp-dev/${PORTNAME}/${DISTVERSION:R}/
diff --git a/multimedia/qmmp-qt5/distinfo b/multimedia/qmmp-qt5/distinfo
index b73bd354f8d6..7e84f833f4d9 100644
--- a/multimedia/qmmp-qt5/distinfo
+++ b/multimedia/qmmp-qt5/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1753105818
-SHA256 (qmmp-1.7.7.tar.bz2) = f429a76b645480dd56a8fb64f55d33b8259f175f9f31a6f0de3f6209c7bf365d
-SIZE (qmmp-1.7.7.tar.bz2) = 1431704
+TIMESTAMP = 1755979393
+SHA256 (qmmp-1.7.8.tar.bz2) = 98f33b1b88f81cdf1c15f5fd9c28167d83e7377a262282766584b21e668a1ffc
+SIZE (qmmp-1.7.8.tar.bz2) = 1433324
diff --git a/multimedia/qmmp-qt6/Makefile b/multimedia/qmmp-qt6/Makefile
index 0ef526d7d789..6de38c8297dc 100644
--- a/multimedia/qmmp-qt6/Makefile
+++ b/multimedia/qmmp-qt6/Makefile
@@ -1,5 +1,5 @@
PORTNAME= qmmp
-PORTVERSION= 2.2.7
+PORTVERSION= 2.2.8
CATEGORIES= multimedia
MASTER_SITES= http://qmmp.ylsoftware.com/files/${PORTNAME}/${DISTVERSION:R}/ \
SF/qmmp-dev/${PORTNAME}/${DISTVERSION:R}/
diff --git a/multimedia/qmmp-qt6/distinfo b/multimedia/qmmp-qt6/distinfo
index 1d6ec4d0c5c5..de7ee1d22b48 100644
--- a/multimedia/qmmp-qt6/distinfo
+++ b/multimedia/qmmp-qt6/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1753105825
-SHA256 (qmmp-2.2.7.tar.bz2) = ddcff0b618f4790802f6d52d9a796b5f32cb7d0f23c99181b804f614fab5fbb2
-SIZE (qmmp-2.2.7.tar.bz2) = 1432860
+TIMESTAMP = 1755979402
+SHA256 (qmmp-2.2.8.tar.bz2) = 730a97a063a498eb37da9e2f8198dfe570693e6a6c7f2b210d581bd87dbb938a
+SIZE (qmmp-2.2.8.tar.bz2) = 1434188
diff --git a/multimedia/qt6-multimedia/distinfo b/multimedia/qt6-multimedia/distinfo
index 3c6442a01277..36b60cc1c246 100644
--- a/multimedia/qt6-multimedia/distinfo
+++ b/multimedia/qt6-multimedia/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1749159292
-SHA256 (KDE/Qt/6.9.1/qtmultimedia-everywhere-src-6.9.1.tar.xz) = 955e36459518ee55f8e2bb79defc6e44aa94dc1edf5ac58a22d7734b2e07391d
-SIZE (KDE/Qt/6.9.1/qtmultimedia-everywhere-src-6.9.1.tar.xz) = 9776408
+TIMESTAMP = 1756197836
+SHA256 (KDE/Qt/6.9.2/qtmultimedia-everywhere-src-6.9.2.tar.xz) = 7bf8a19a57a7432181b05d0e264acfd8ca4b75a3901d01a27a32935703e5ab12
+SIZE (KDE/Qt/6.9.2/qtmultimedia-everywhere-src-6.9.2.tar.xz) = 9768828
diff --git a/multimedia/qt6-multimedia/files/patch-src_multimedia_configure.cmake b/multimedia/qt6-multimedia/files/patch-src_multimedia_configure.cmake
index 508f5cd80e34..cbf22dd3f497 100644
--- a/multimedia/qt6-multimedia/files/patch-src_multimedia_configure.cmake
+++ b/multimedia/qt6-multimedia/files/patch-src_multimedia_configure.cmake
@@ -1,11 +1,11 @@
---- src/multimedia/configure.cmake.orig 2025-05-04 13:16:35 UTC
+--- src/multimedia/configure.cmake.orig 2025-08-18 00:47:41 UTC
+++ src/multimedia/configure.cmake
-@@ -132,7 +132,7 @@ qt_feature("ffmpeg" PRIVATE
- LABEL "FFmpeg"
+@@ -129,7 +129,7 @@ qt_feature("ffmpeg" PRIVATE
ENABLE INPUT_ffmpeg STREQUAL 'yes'
DISABLE INPUT_ffmpeg STREQUAL 'no'
-- CONDITION FFmpeg_FOUND AND (APPLE OR WIN32 OR ANDROID OR QNX OR QT_FEATURE_pulseaudio)
-+ CONDITION FFmpeg_FOUND AND (APPLE OR WIN32 OR ANDROID OR QNX OR QT_FEATURE_alsa OR QT_FEATURE_pulseaudio)
+ CONDITION FFmpeg_FOUND
+- AND (APPLE OR WIN32 OR ANDROID OR QNX OR QT_FEATURE_pulseaudio)
++ AND (APPLE OR WIN32 OR ANDROID OR QNX OR OR QT_FEATURE_alsa OR QT_FEATURE_pulseaudio)
+ AND QT_FEATURE_thread
)
qt_feature("pipewire" PRIVATE
- LABEL "PipeWire"
diff --git a/multimedia/qt6-multimedia/files/patch-src_multimedia_pulseaudio_qpulseaudiosink.cpp b/multimedia/qt6-multimedia/files/patch-src_multimedia_pulseaudio_qpulseaudiosink.cpp
deleted file mode 100644
index 567d571867a6..000000000000
--- a/multimedia/qt6-multimedia/files/patch-src_multimedia_pulseaudio_qpulseaudiosink.cpp
+++ /dev/null
@@ -1,15 +0,0 @@
-Fix 32-bit builds with PULSEAUDIO option.
-
---- src/multimedia/pulseaudio/qpulseaudiosink.cpp.orig 2025-05-04 13:16:35 UTC
-+++ src/multimedia/pulseaudio/qpulseaudiosink.cpp
-@@ -491,8 +491,8 @@ qint64 QPulseAudioSink::write(const char *data, qint64
- // or even affect the system volume if flat volumes are enabled
-
- QAudioHelperInternal::applyVolume(volume(), m_format,
-- QSpan{ reinterpret_cast<const std::byte *>(data), len },
-- QSpan{ reinterpret_cast<std::byte *>(dest), len });
-+ QSpan{ reinterpret_cast<const std::byte *>(data), static_cast<qsizetype>(len) },
-+ QSpan{ reinterpret_cast<std::byte *>(dest), static_cast<qsizetype>(len) });
-
- if ((pa_stream_write(m_stream.get(), dest, len, nullptr, 0, PA_SEEK_RELATIVE)) < 0) {
- engineLock.unlock();
diff --git a/multimedia/qt6-multimedia/pkg-plist b/multimedia/qt6-multimedia/pkg-plist
index 60250965f115..2f80534bdab5 100644
--- a/multimedia/qt6-multimedia/pkg-plist
+++ b/multimedia/qt6-multimedia/pkg-plist
@@ -102,6 +102,7 @@
%%GSTREAMER%%%%QT_INCDIR%%/QtGstreamerMediaPluginImpl/QtGstreamerMediaPluginImplVersion
%%GSTREAMER%%%%QT_INCDIR%%/QtGstreamerMediaPluginImpl/qtgstreamermediapluginimplversion.h
%%QT_INCDIR%%/QtMultimedia/%%FULLVER%%/QtMultimedia/private/qaudio_alignment_support_p.h
+%%QT_INCDIR%%/QtMultimedia/%%FULLVER%%/QtMultimedia/private/qaudio_platform_implementation_support_p.h
%%QT_INCDIR%%/QtMultimedia/%%FULLVER%%/QtMultimedia/private/qaudio_qiodevice_support_p.h
%%QT_INCDIR%%/QtMultimedia/%%FULLVER%%/QtMultimedia/private/qaudio_qspan_support_p.h
%%QT_INCDIR%%/QtMultimedia/%%FULLVER%%/QtMultimedia/private/qaudio_rtsan_support_p.h
@@ -112,8 +113,6 @@
%%QT_INCDIR%%/QtMultimedia/%%FULLVER%%/QtMultimedia/private/qaudioformat_p.h
%%QT_INCDIR%%/QtMultimedia/%%FULLVER%%/QtMultimedia/private/qaudiohelpers_p.h
%%QT_INCDIR%%/QtMultimedia/%%FULLVER%%/QtMultimedia/private/qaudioringbuffer_p.h
-%%QT_INCDIR%%/QtMultimedia/%%FULLVER%%/QtMultimedia/private/qaudiostatemachine_p.h
-%%QT_INCDIR%%/QtMultimedia/%%FULLVER%%/QtMultimedia/private/qaudiostatemachineutils_p.h
%%QT_INCDIR%%/QtMultimedia/%%FULLVER%%/QtMultimedia/private/qaudiosystem_p.h
%%QT_INCDIR%%/QtMultimedia/%%FULLVER%%/QtMultimedia/private/qaudiosystem_platform_stream_support_p.h
%%QT_INCDIR%%/QtMultimedia/%%FULLVER%%/QtMultimedia/private/qautoresetevent_p.h
@@ -342,7 +341,6 @@
%%QT_INCDIR%%/QtSpatialAudio/qtspatialaudioexports.h
%%QT_INCDIR%%/QtSpatialAudio/qtspatialaudioglobal.h
%%QT_INCDIR%%/QtSpatialAudio/qtspatialaudioversion.h
-lib/cmake/Qt6/FindAVFoundation.cmake
lib/cmake/Qt6/FindFFmpeg.cmake
lib/cmake/Qt6/FindGObject.cmake
lib/cmake/Qt6/FindGStreamer.cmake
diff --git a/multimedia/ringrtc/Makefile b/multimedia/ringrtc/Makefile
index 22d6011531de..1324db03a6be 100644
--- a/multimedia/ringrtc/Makefile
+++ b/multimedia/ringrtc/Makefile
@@ -1,6 +1,6 @@
PORTNAME= ringrtc
DISTVERSIONPREFIX= v
-DISTVERSION= 2.54.1
+DISTVERSION= 2.56.0
CATEGORIES= multimedia
MASTER_SITES= LOCAL/mikael/ringrtc/:base \
LOCAL/mikael/ringrtc/:boringssl \
@@ -64,28 +64,28 @@ GH_TUPLE= signalapp:ringrtc:${DISTVERSIONPREFIX}${DISTVERSION} \
signalapp:webrtc:${WEBRTC_REV}:webrtc
# sh net-im/signal-desktop/get_deps.sh
-WEBRTC_REV= 7103e
+WEBRTC_REV= 7204a
# modify webrtc_fetch.sh, then sh webrtc_fetch.sh
-BASE_REV= 1d80e43078965dbe6ded5521fbffb128f59124a6
-BORINGSSL_REV= a9993612faac4866bc33ca8ff37bfd0659af1c48
-BUILD_REV= 52d62707eaec02b88722a99e335315d166ceda77
-BUILDTOOLS_REV= 6f359296daa889aa726f3d05046b9f37be241169
-CATAPULT_REV= 5bda0fdab9d93ec9963e2cd858c7b49ad7fec7d4
-ICU_REV= c9fb4b3a6fb54aa8c20a03bbcaa0a4a985ffd34b
+BASE_REV= 4ba67f727a84a10e32a417dc7e194f4fc6a23390
+BORINGSSL_REV= 9295969e1dad2c31d0d99481734c1c68dcbc6403
+BUILD_REV= 7adbc7e3263f3ab427ba7c5ac7839a69082ff7fb
+BUILDTOOLS_REV= 1fc7350e65e9d7848c083b83aaf67611e74a5654
+CATAPULT_REV= 5477c6dfde1132b685c73edc16e1bc71449a691d
+ICU_REV= b929596baebf0ab4ac7ec07f38365db4c50a559d
LIBCUBEB_VER= 0.27.0
LIBJPEG_TURBO_REV= e14cbfaa85529d47f9f55b0f104a579c1061f9ad
LIBSRTP_REV= a52756acb1c5e133089c798736dd171567df11f5
-LIBVPX_REV= 027bbee30a0103b99d86327b48d29567fed11688
-LIBYUV_REV= ccdf870348764e4b77fa3b56accb2a896a901bad
-NASM_REV= 767a169c8811b090df222a458b25dfa137fc637e
-OPUS_REV= 0e30966b198ad28943799eaf5b3b08100b6f70c3
-PERFETTO_REV= 40b529923598b739b2892a536a7692eedbed5685
-PROTOBUFJS_REV= eb785a9363664a402b6336dfe96aad27fb33ffa8
+LIBVPX_REV= b84ca9b63730e7d4563573a56a66317eb0087ebf
+LIBYUV_REV= 61bdaee13a701d2b52c6dc943ccc5c888077a591
+NASM_REV= 9f916e90e6fc34ec302573f6ce147e43e33d68ca
+OPUS_REV= 55513e81d8f606bd75d0ff773d2144e5f2a732f5
+PERFETTO_REV= dd35b295cd359ba094404218414955f961a0d6ae
+PROTOBUFJS_REV= 28bf5df73ef2f345a936d9cc95d64ba8ed426a53
RE2_REV= c84a140c93352cdabbfb547c531be34515b12228
-TESTING_REV= f46b86c7f1fc7a7f52e61c11dbd0573a48cf7a6a
-THIRD_PARTY_REV= 10064104c1f11074312018c3a9c4b66f25584bdd
-TOOLS_REV= 3460fbcdee33353d37800dad5caa6bba327ad8c8
+TESTING_REV= 44b0a8d794b28dbd74614e5f5e7da2b407030647
+THIRD_PARTY_REV= 8a150db896356cd9b47f8c1a6d916347393f90f2
+TOOLS_REV= 901b847deda65d44f1bba16a9f47e2ea68a805be
BINARY_ALIAS= vpython3=${PYTHON_CMD}
@@ -110,6 +110,7 @@ GN_ARGS+= rtc_build_examples=false \
use_custom_libcxx=false \
use_custom_libunwind=true \
use_lld=true \
+ use_llvm_libatomic=false \
use_sysroot=false \
use_system_freetype=false \
use_system_harfbuzz=true \
diff --git a/multimedia/ringrtc/distinfo b/multimedia/ringrtc/distinfo
index 06f9ac0d1671..ac6d78ebbb15 100644
--- a/multimedia/ringrtc/distinfo
+++ b/multimedia/ringrtc/distinfo
@@ -1,40 +1,40 @@
-TIMESTAMP = 1752245606
-SHA256 (base-1d80e43078965dbe6ded5521fbffb128f59124a6.tar.gz) = e532b1a710e6be7d950ac10c2d241705ea633b36277c31dfa0ccb58ccd994969
-SIZE (base-1d80e43078965dbe6ded5521fbffb128f59124a6.tar.gz) = 6253787
-SHA256 (boringssl-a9993612faac4866bc33ca8ff37bfd0659af1c48.tar.gz) = ba6d3c7b1c93cad99769f1a0db9306e6c8758814e4e23e7c20495fcec8b3bdb8
-SIZE (boringssl-a9993612faac4866bc33ca8ff37bfd0659af1c48.tar.gz) = 46400756
-SHA256 (build-52d62707eaec02b88722a99e335315d166ceda77.tar.gz) = 7911100f2b6311390a2aa501c149ea8d5f05e446d6585d9bcda8b98fa2d39f6e
-SIZE (build-52d62707eaec02b88722a99e335315d166ceda77.tar.gz) = 1665130
-SHA256 (buildtools-6f359296daa889aa726f3d05046b9f37be241169.tar.gz) = f45355b40e899b020f77ec4f51a8e2dd0a3fc69e1abb974176ef0d78bf8e3bcf
-SIZE (buildtools-6f359296daa889aa726f3d05046b9f37be241169.tar.gz) = 96809
-SHA256 (catapult-5bda0fdab9d93ec9963e2cd858c7b49ad7fec7d4.tar.gz) = 983da044685dee9aa05d75a823fe226dcf1df6cd194c11469dd7106e54b23221
-SIZE (catapult-5bda0fdab9d93ec9963e2cd858c7b49ad7fec7d4.tar.gz) = 154460749
-SHA256 (icu-c9fb4b3a6fb54aa8c20a03bbcaa0a4a985ffd34b.tar.gz) = ca2b5eebf73526739c201f5e19db04aaafe15bfa573983dae2c67c1d9c1c2d57
-SIZE (icu-c9fb4b3a6fb54aa8c20a03bbcaa0a4a985ffd34b.tar.gz) = 54281213
-SHA256 (nasm-767a169c8811b090df222a458b25dfa137fc637e.tar.gz) = 5c0722481afb882860da47523bd927aa9ca42e4466f5c903a8d24ba78e6267ba
-SIZE (nasm-767a169c8811b090df222a458b25dfa137fc637e.tar.gz) = 1550333
+TIMESTAMP = 1754897918
+SHA256 (base-4ba67f727a84a10e32a417dc7e194f4fc6a23390.tar.gz) = 587e729eca0d4e6762dd47fcb3ff45c4e0187019bb98e5208c4ec1c475fb2c8e
+SIZE (base-4ba67f727a84a10e32a417dc7e194f4fc6a23390.tar.gz) = 6343572
+SHA256 (boringssl-9295969e1dad2c31d0d99481734c1c68dcbc6403.tar.gz) = 38d8818d8925e8dde2fb7ece0f528eb5cc4ec96bacbf6d22f6e3cf8705fc99f5
+SIZE (boringssl-9295969e1dad2c31d0d99481734c1c68dcbc6403.tar.gz) = 46490073
+SHA256 (build-7adbc7e3263f3ab427ba7c5ac7839a69082ff7fb.tar.gz) = eff6b13e959795597d4413950bc97028ce1b642ad09e4b8e3b5ffd1f07c811cb
+SIZE (build-7adbc7e3263f3ab427ba7c5ac7839a69082ff7fb.tar.gz) = 1691280
+SHA256 (buildtools-1fc7350e65e9d7848c083b83aaf67611e74a5654.tar.gz) = 778468b6a9192a35600c3854c6156f7a8166b92e463b3ea53e07cb9a8500554a
+SIZE (buildtools-1fc7350e65e9d7848c083b83aaf67611e74a5654.tar.gz) = 105246
+SHA256 (catapult-5477c6dfde1132b685c73edc16e1bc71449a691d.tar.gz) = cddb7ca4992630e13e4c9255f3409e97f7620685776bc1359c19b8f2fa5b16ac
+SIZE (catapult-5477c6dfde1132b685c73edc16e1bc71449a691d.tar.gz) = 165315811
+SHA256 (icu-b929596baebf0ab4ac7ec07f38365db4c50a559d.tar.gz) = a696efa75651e9d2591c76f312ba042c97093dac646453dd9edfedf6b96efd6b
+SIZE (icu-b929596baebf0ab4ac7ec07f38365db4c50a559d.tar.gz) = 54306779
+SHA256 (nasm-9f916e90e6fc34ec302573f6ce147e43e33d68ca.tar.gz) = b62071bc904b541fc2a5dd1688c9a028515b1e4ca1622b7acb4417f42be9711a
+SIZE (nasm-9f916e90e6fc34ec302573f6ce147e43e33d68ca.tar.gz) = 1640019
SHA256 (libjpeg_turbo-e14cbfaa85529d47f9f55b0f104a579c1061f9ad.tar.gz) = 4dbfed66468f812132ece54ab1af0c2b035c5a426ebdadc361626432901d8015
SIZE (libjpeg_turbo-e14cbfaa85529d47f9f55b0f104a579c1061f9ad.tar.gz) = 2684933
SHA256 (libsrtp-a52756acb1c5e133089c798736dd171567df11f5.tar.gz) = c1105b5c1c34c3d069b8e2561de9d568ea1b8d4d7d1cd5a049f70a830e8cf71c
SIZE (libsrtp-a52756acb1c5e133089c798736dd171567df11f5.tar.gz) = 140953
-SHA256 (libvpx-027bbee30a0103b99d86327b48d29567fed11688.tar.gz) = 500c7a8b9ade28fa0b0c2b35fe2427d881bfe3a1c8600015404c90981b92eb0c
-SIZE (libvpx-027bbee30a0103b99d86327b48d29567fed11688.tar.gz) = 5731923
-SHA256 (libyuv-ccdf870348764e4b77fa3b56accb2a896a901bad.tar.gz) = 905fcec5ad75fee06c256d63a184f663dbbf3adb4c8d8f47524071d533a06c71
-SIZE (libyuv-ccdf870348764e4b77fa3b56accb2a896a901bad.tar.gz) = 618541
-SHA256 (opus-0e30966b198ad28943799eaf5b3b08100b6f70c3.tar.gz) = 60867154cda4ae4f3d4ba37328b0dac1649b07462945b19c4b7c51a22aa1fae6
-SIZE (opus-0e30966b198ad28943799eaf5b3b08100b6f70c3.tar.gz) = 4205884
-SHA256 (perfetto-40b529923598b739b2892a536a7692eedbed5685.tar.gz) = e3463888f4dba53752c767a008c7e5fe3ab4ac845be2b578b7f2d7a146845af8
-SIZE (perfetto-40b529923598b739b2892a536a7692eedbed5685.tar.gz) = 28262379
-SHA256 (protobuf_javascript-eb785a9363664a402b6336dfe96aad27fb33ffa8.tar.gz) = 70bd00befb7982d7f3d30df1ea6343d5ae88ab3c950ed93213cd3f775d7b90bc
-SIZE (protobuf_javascript-eb785a9363664a402b6336dfe96aad27fb33ffa8.tar.gz) = 390526
+SHA256 (libvpx-b84ca9b63730e7d4563573a56a66317eb0087ebf.tar.gz) = 1e8d247dff0c37a4d8ca97bf66c337cf6ea13264ea72e57910efff6c659ef79e
+SIZE (libvpx-b84ca9b63730e7d4563573a56a66317eb0087ebf.tar.gz) = 5704757
+SHA256 (libyuv-61bdaee13a701d2b52c6dc943ccc5c888077a591.tar.gz) = 027fcf1407df3babff39621f16646c690c4f15a78e53722a6a3938f3e09e1747
+SIZE (libyuv-61bdaee13a701d2b52c6dc943ccc5c888077a591.tar.gz) = 620158
+SHA256 (opus-55513e81d8f606bd75d0ff773d2144e5f2a732f5.tar.gz) = 0e568cf80e3df39ed9e5cddb5921103e8c861760f180013de9240337d37184bd
+SIZE (opus-55513e81d8f606bd75d0ff773d2144e5f2a732f5.tar.gz) = 4248433
+SHA256 (perfetto-dd35b295cd359ba094404218414955f961a0d6ae.tar.gz) = 86c8af74bf7b3dc0a1e7732c60f9dd4aafe83109584eba56c95872e3dcefe3b8
+SIZE (perfetto-dd35b295cd359ba094404218414955f961a0d6ae.tar.gz) = 28738959
+SHA256 (protobuf_javascript-28bf5df73ef2f345a936d9cc95d64ba8ed426a53.tar.gz) = 058d5130df687f58ba1a21011638b9b70165a01f2021d43431963233e7ce0d13
+SIZE (protobuf_javascript-28bf5df73ef2f345a936d9cc95d64ba8ed426a53.tar.gz) = 382573
SHA256 (re2-c84a140c93352cdabbfb547c531be34515b12228.tar.gz) = a7aa3ff629e53aeec9b84b26fbd016e405dfd3fa493933b7c605e5ebc5498e9a
SIZE (re2-c84a140c93352cdabbfb547c531be34515b12228.tar.gz) = 396463
-SHA256 (testing-f46b86c7f1fc7a7f52e61c11dbd0573a48cf7a6a.tar.gz) = 11a8e48effe99df7115292a6ff3f719645c372fd9dd34d97737d939257040f3e
-SIZE (testing-f46b86c7f1fc7a7f52e61c11dbd0573a48cf7a6a.tar.gz) = 2176020
-SHA256 (third_party-10064104c1f11074312018c3a9c4b66f25584bdd.tar.gz) = bd2eda4a6de6a11d7249dbd3e9f3c09a8c226a66e4e20801c817130ee7438c93
-SIZE (third_party-10064104c1f11074312018c3a9c4b66f25584bdd.tar.gz) = 787999134
-SHA256 (tools-3460fbcdee33353d37800dad5caa6bba327ad8c8.tar.gz) = aa1076ed0c294e124a130ab676624d71c13b564eaccff354a393c2bf3c3e39ca
-SIZE (tools-3460fbcdee33353d37800dad5caa6bba327ad8c8.tar.gz) = 15568695
+SHA256 (testing-44b0a8d794b28dbd74614e5f5e7da2b407030647.tar.gz) = 52b1eec66fafd717d74516dc9ab8d4009fd67bc72082c28446015f37a812b857
+SIZE (testing-44b0a8d794b28dbd74614e5f5e7da2b407030647.tar.gz) = 2162959
+SHA256 (third_party-8a150db896356cd9b47f8c1a6d916347393f90f2.tar.gz) = 283c90c3433221dd86b0ca66bb39d2a4dcd08ad3226c810e8d4804d8d1cf956c
+SIZE (third_party-8a150db896356cd9b47f8c1a6d916347393f90f2.tar.gz) = 760183695
+SHA256 (tools-901b847deda65d44f1bba16a9f47e2ea68a805be.tar.gz) = d3ff6f5063d0356fcc05de9a24c8205d6829a70f656dd8efa262f871313c022c
+SIZE (tools-901b847deda65d44f1bba16a9f47e2ea68a805be.tar.gz) = 16802251
SHA256 (rust/crates/addr2line-0.24.2.crate) = dfbe277e56a376000877090da837660b4427aad530e3028d44e0bffe4f89a1c1
SIZE (rust/crates/addr2line-0.24.2.crate) = 39015
SHA256 (rust/crates/adler2-2.0.0.crate) = 512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627
@@ -861,7 +861,7 @@ SHA256 (signalapp-curve25519-dalek-signal-curve25519-4.1.3_GH0.tar.gz) = 8dd338d
SIZE (signalapp-curve25519-dalek-signal-curve25519-4.1.3_GH0.tar.gz) = 808022
SHA256 (signalapp-libsignal-v0.73.3_GH0.tar.gz) = fa9e5e607d53367adf82fe1fca0e122a8f9f5e9c1c18fa20fbe2ff0189c696c2
SIZE (signalapp-libsignal-v0.73.3_GH0.tar.gz) = 2094958
-SHA256 (signalapp-ringrtc-v2.54.1_GH0.tar.gz) = c1e1d2f6a4b444705f88123433ed1f178585c1ff28f7cdd42e6c1901c165d653
-SIZE (signalapp-ringrtc-v2.54.1_GH0.tar.gz) = 831991
-SHA256 (signalapp-webrtc-7103e_GH0.tar.gz) = e5d10d2469c25f3c012941a86b0ccc524ea9225bfa85c7541f3388e3cbf85260
-SIZE (signalapp-webrtc-7103e_GH0.tar.gz) = 39980099
+SHA256 (signalapp-ringrtc-v2.56.0_GH0.tar.gz) = 19ef45716d343285117a5cbe276b98bfcd56088f841b7bf40181207d7ee36d32
+SIZE (signalapp-ringrtc-v2.56.0_GH0.tar.gz) = 834765
+SHA256 (signalapp-webrtc-7204a_GH0.tar.gz) = d31125c22d3784be13b78ed18b0ea7d7d0f7f7f1663a2e536c269249d9d8727a
+SIZE (signalapp-webrtc-7204a_GH0.tar.gz) = 39978978
diff --git a/multimedia/ringrtc/files/patch-build_config_BUILDCONFIG.gn b/multimedia/ringrtc/files/patch-build_config_BUILDCONFIG.gn
index 024c080d9390..384f674203f1 100644
--- a/multimedia/ringrtc/files/patch-build_config_BUILDCONFIG.gn
+++ b/multimedia/ringrtc/files/patch-build_config_BUILDCONFIG.gn
@@ -27,10 +27,10 @@
_default_toolchain = "//build/toolchain/zos:$target_cpu"
+} else if (target_os == "openbsd" || target_os == "freebsd") {
+ _default_toolchain = host_toolchain
- } else {
- assert(false, "Unsupported target_os: $target_os")
- }
-@@ -313,7 +320,11 @@ is_android = current_os == "android"
+ } else if (target_os == "emscripten") {
+ # Because it's too hard to remove all targets from //BUILD.gn that do not work with it.
+ assert(
+@@ -318,7 +325,11 @@ is_ios = current_os == "ios"
is_chromeos = current_os == "chromeos"
is_fuchsia = current_os == "fuchsia"
is_ios = current_os == "ios"
diff --git a/multimedia/ringrtc/files/patch-build_config_compiler_BUILD.gn b/multimedia/ringrtc/files/patch-build_config_compiler_BUILD.gn
index 3f7487004b34..65b46735dcc7 100644
--- a/multimedia/ringrtc/files/patch-build_config_compiler_BUILD.gn
+++ b/multimedia/ringrtc/files/patch-build_config_compiler_BUILD.gn
@@ -1,6 +1,6 @@
--- src/webrtc/src/build/config/compiler/BUILD.gn.orig 2024-06-18 16:34:35 UTC
+++ src/webrtc/src/build/config/compiler/BUILD.gn
-@@ -197,7 +197,7 @@ declare_args() {
+@@ -199,7 +199,7 @@ declare_args() {
# This greatly reduces the size of debug builds, at the cost of
# debugging information which is required by some specialized
# debugging tools.
@@ -9,7 +9,7 @@
}
declare_args() {
-@@ -254,13 +254,16 @@ config("default_include_dirs") {
+@@ -256,13 +256,16 @@ config("no_unresolved_symbols") {
# Compiler instrumentation can introduce dependencies in DSOs to symbols in
# the executable they are loaded into, so they are unresolved at link-time.
config("no_unresolved_symbols") {
@@ -27,7 +27,7 @@
}
# compiler ---------------------------------------------------------------------
-@@ -509,6 +512,10 @@ config("compiler") {
+@@ -521,6 +524,10 @@ config("compiler") {
}
}
@@ -38,7 +38,7 @@
# Linux-specific compiler flags setup.
# ------------------------------------
if (use_icf && (!is_apple || use_lld)) {
-@@ -569,7 +576,7 @@ config("compiler") {
+@@ -581,7 +588,7 @@ config("compiler") {
ldflags += [ "-Wl,-z,keep-text-section-prefix" ]
}
@@ -47,7 +47,16 @@
cflags += [ "-fcrash-diagnostics-dir=" + clang_diagnostic_dir ]
if (save_reproducers_on_lld_crash && use_lld) {
ldflags += [
-@@ -1227,7 +1234,7 @@ config("compiler_cpu_abi") {
+@@ -1233,7 +1240,7 @@ config("compiler_cpu_abi") {
+ # simplicity we always explicitly set the architecture.
+ if (current_cpu == "x64") {
+ if (is_clang && !is_android && !is_nacl && !is_fuchsia &&
+- !is_chromeos_device) {
++ !is_chromeos_device && !is_bsd) {
+ cflags += [ "--target=x86_64-unknown-linux-gnu" ]
+ ldflags += [ "--target=x86_64-unknown-linux-gnu" ]
+ } else {
+@@ -1256,7 +1263,7 @@ config("compiler_cpu_abi") {
]
}
} else if (current_cpu == "arm") {
@@ -56,7 +65,7 @@
cflags += [ "--target=arm-linux-gnueabihf" ]
ldflags += [ "--target=arm-linux-gnueabihf" ]
}
-@@ -1242,7 +1249,7 @@ config("compiler_cpu_abi") {
+@@ -1271,7 +1278,7 @@ config("compiler_cpu_abi") {
}
} else if (current_cpu == "arm64") {
if (is_clang && !is_android && !is_nacl && !is_fuchsia &&
@@ -65,7 +74,7 @@
cflags += [ "--target=aarch64-linux-gnu" ]
ldflags += [ "--target=aarch64-linux-gnu" ]
}
-@@ -1576,7 +1583,7 @@ config("compiler_deterministic") {
+@@ -1617,7 +1624,7 @@ config("compiler_deterministic") {
# different build directory like "out/feature_a" and "out/feature_b" if
# we build same files with same compile flag.
# Other paths are already given in relative, no need to normalize them.
@@ -74,7 +83,7 @@
# TODO(https://crbug.com/1231236): Use -ffile-compilation-dir= here.
cflags += [
"-Xclang",
-@@ -1634,7 +1641,7 @@ config("compiler_deterministic") {
+@@ -1683,7 +1690,7 @@ config("clang_revision") {
}
config("clang_revision") {
@@ -83,7 +92,7 @@
current_os != "zos") {
_perform_consistency_checks = current_toolchain == default_toolchain
if (llvm_force_head_revision) {
-@@ -1719,7 +1726,7 @@ config("clang_revision") {
+@@ -1775,7 +1782,7 @@ config("clang_warning_suppression") {
# e.g. by setting in the the project's .gn file.
config("clang_warning_suppression") {
# Some build configs use older versions of clang that don't support WSMs
@@ -92,7 +101,7 @@
!llvm_android_mainline && is_clang &&
clang_warning_suppression_file != "") {
from_build_root =
-@@ -2053,9 +2060,6 @@ config("default_warnings") {
+@@ -2134,9 +2141,6 @@ config("default_warnings") {
# TODO(crbug.com/40284799): Fix and re-enable.
"-Wno-thread-safety-reference-return",
@@ -102,7 +111,7 @@
]
cflags_cc += [
-@@ -2837,7 +2841,7 @@ config("afdo_optimize_size") {
+@@ -2920,7 +2924,7 @@ config("afdo") {
# There are some targeted places that AFDO regresses, so we provide a separate
# config to allow AFDO to be disabled per-target.
config("afdo") {
@@ -111,7 +120,7 @@
cflags = []
if (clang_emit_debug_info_for_profiling) {
# Add the following flags to generate debug info for profiling.
-@@ -2864,7 +2868,7 @@ config("afdo") {
+@@ -2947,7 +2951,7 @@ config("afdo") {
cflags += [ "-Wno-backend-plugin" ]
inputs = [ _clang_sample_profile ]
}
@@ -120,7 +129,7 @@
cflags = [ "-fauto-profile=${auto_profile_path}" ]
inputs = [ auto_profile_path ]
}
-@@ -3041,7 +3045,7 @@ config("symbols") {
+@@ -3136,7 +3140,7 @@ config("symbols") {
cflags += [ "-gomit-unreferenced-methods" ]
}
diff --git a/multimedia/ringrtc/files/patch-src_rust_src_webrtc_audio__device__module__utils.rs b/multimedia/ringrtc/files/patch-src_rust_src_webrtc_audio__device__module__utils.rs
index 9d75b5641e26..ec15f6b1927f 100644
--- a/multimedia/ringrtc/files/patch-src_rust_src_webrtc_audio__device__module__utils.rs
+++ b/multimedia/ringrtc/files/patch-src_rust_src_webrtc_audio__device__module__utils.rs
@@ -1,15 +1,15 @@
--- src/rust/src/webrtc/audio_device_module_utils.rs.orig 2024-11-18 16:04:01 UTC
+++ src/rust/src/webrtc/audio_device_module_utils.rs
-@@ -10,7 +10,7 @@ use cubeb_core::DevicePref;
+@@ -11,7 +11,7 @@ use cubeb_core::DevicePref;
use anyhow::anyhow;
use cubeb::{DeviceCollection, DeviceState};
use cubeb_core::DevicePref;
-#[cfg(target_os = "linux")]
+#[cfg(any(target_os = "freebsd", target_os = "linux"))]
use cubeb_core::DeviceType;
- use std::ffi::{c_uchar, c_void, CString};
+ use regex::Regex;
-@@ -18,7 +18,7 @@ pub struct MinimalDeviceInfo {
+@@ -22,7 +22,7 @@ pub struct MinimalDeviceInfo {
pub devid: *const c_void,
pub device_id: Option<String>,
pub friendly_name: Option<String>,
@@ -18,7 +18,7 @@
device_type: DeviceType,
preferred: DevicePref,
state: DeviceState,
-@@ -35,7 +35,7 @@ pub struct DeviceCollectionWrapper {
+@@ -40,7 +40,7 @@ pub struct DeviceCollectionWrapper {
device_collection: Vec<MinimalDeviceInfo>,
}
@@ -27,7 +27,7 @@
fn device_is_monitor(device: &MinimalDeviceInfo) -> bool {
device.device_type == DeviceType::INPUT
&& device
-@@ -52,7 +52,7 @@ impl DeviceCollectionWrapper {
+@@ -57,7 +57,7 @@ impl DeviceCollectionWrapper {
devid: device.devid(),
device_id: device.device_id().as_ref().map(|s| s.to_string()),
friendly_name: device.friendly_name().as_ref().map(|s| s.to_string()),
@@ -36,7 +36,7 @@
device_type: device.device_type(),
preferred: device.preferred(),
state: device.state(),
-@@ -74,7 +74,7 @@ impl DeviceCollectionWrapper {
+@@ -79,7 +79,7 @@ impl DeviceCollectionWrapper {
}
// For linux only, a method that will ignore "monitor" devices.
@@ -45,7 +45,7 @@
pub fn iter_non_monitor(
&self,
) -> std::iter::Filter<std::slice::Iter<'_, MinimalDeviceInfo>, fn(&&MinimalDeviceInfo) -> bool>
-@@ -116,7 +116,7 @@ impl DeviceCollectionWrapper {
+@@ -121,7 +121,7 @@ impl DeviceCollectionWrapper {
{
self.iter().nth(idx - 1)
}
@@ -54,12 +54,18 @@
{
// filter out "monitor" devices.
self.iter_non_monitor().nth(idx - 1)
-@@ -146,7 +146,7 @@ impl DeviceCollectionWrapper {
+@@ -149,12 +149,12 @@ impl DeviceCollectionWrapper {
+ pub fn count(&self) -> usize {
+ #[cfg(target_os = "macos")]
let count = self.iter().count();
- // Whether a monitor device is default or not, there will be an additional default,
- // so no need to do anything different.
- #[cfg(target_os = "linux")]
+ #[cfg(any(target_os = "freebsd", target_os = "linux"))]
let count = self.iter_non_monitor().count();
if count == 0 {
- 0
+ #[cfg(target_os = "macos")]
+ return 0;
+- #[cfg(target_os = "linux")]
++ #[cfg(any(target_os = "freebsd", target_os = "linux"))]
+ return
+ // edge case: if there are only monitor devices, and one is the default,
+ // allow it.
diff --git a/multimedia/ringrtc/files/patch-src_webrtc_src_testing_test.gni b/multimedia/ringrtc/files/patch-src_webrtc_src_testing_test.gni
index 133fddbcdd19..8fafdd4eed49 100644
--- a/multimedia/ringrtc/files/patch-src_webrtc_src_testing_test.gni
+++ b/multimedia/ringrtc/files/patch-src_webrtc_src_testing_test.gni
@@ -1,11 +1,11 @@
--- src/webrtc/src/testing/test.gni.orig 2022-02-18 09:31:19 UTC
+++ src/webrtc/src/testing/test.gni
-@@ -17,7 +17,7 @@ declare_args() {
+@@ -19,7 +19,7 @@ declare_args() {
# "location_tags.json", and so we don't want to try and upload the tags
# for their tests.
# And, some build configs may simply turn off generation altogether.
- tests_have_location_tags = generate_location_tags
+ tests_have_location_tags = false
- }
- if (is_android) {
+ # Build individual_fuzztest_wrapper if use_fuzztest_wrapper is set.
+ # Some projects doesn't have //base and cannot build
diff --git a/multimedia/ringrtc/files/patch-third__party_nasm_config_config-linux.h b/multimedia/ringrtc/files/patch-third__party_nasm_config_config-linux.h
index 3bb7bc175176..d6cc94a8ccf6 100644
--- a/multimedia/ringrtc/files/patch-third__party_nasm_config_config-linux.h
+++ b/multimedia/ringrtc/files/patch-third__party_nasm_config_config-linux.h
@@ -1,27 +1,18 @@
--- src/webrtc/src/third_party/nasm/config/config-linux.h.orig 2024-03-14 18:07:21 UTC
+++ src/webrtc/src/third_party/nasm/config/config-linux.h
-@@ -160,7 +160,7 @@
-
- /* Define to 1 if you have the declaration of `strlcpy', and to 0 if you
- don't. */
--#define HAVE_DECL_STRLCPY 0
-+#define HAVE_DECL_STRLCPY 1
-
- /* Define to 1 if you have the declaration of `strncasecmp', and to 0 if you
- don't. */
-@@ -183,7 +183,7 @@
+@@ -209,7 +209,7 @@
#define HAVE_DECL_STRSEP 1
/* Define to 1 if you have the <endian.h> header file. */
-#define HAVE_ENDIAN_H 1
+/* #undef HAVE_ENDIAN_H */
- /* Define to 1 if you have the `faccessat' function. */
+ /* Define to 1 if you have the 'faccessat' function. */
#define HAVE_FACCESSAT 1
-@@ -327,10 +327,10 @@
+@@ -351,10 +351,10 @@
#define HAVE_ISASCII 1
- /* Define to 1 if you have the `iscntrl' function. */
+ /* Define to 1 if you have the 'iscntrl' function. */
-/* #undef HAVE_ISCNTRL */
+#define HAVE_ISCNTRL 1
@@ -29,9 +20,9 @@
-/* #undef HAVE_MACHINE_ENDIAN_H */
+#define HAVE_MACHINE_ENDIAN_H 1
- /* Define to 1 if you have the <memory.h> header file. */
- #define HAVE_MEMORY_H 1
-@@ -357,7 +357,7 @@
+ /* Define to 1 if you have the 'mempcpy' function. */
+ #define HAVE_MEMPCPY 1
+@@ -384,7 +384,7 @@
#define HAVE_STDARG_H 1
/* Define to 1 if stdbool.h conforms to C99. */
@@ -40,16 +31,16 @@
/* Define to 1 if your compiler supports C99 extern inline */
#define HAVE_STDC_INLINE 1
-@@ -384,7 +384,7 @@
+@@ -414,7 +414,7 @@
#define HAVE_STRING_H 1
- /* Define to 1 if you have the `strlcpy' function. */
--/* #undef HAVE_STRLCPY */
+ /* Define to 1 if you have the 'strlcpy' function. */
+-/* #undef HAVE_STRLCPY */ // Shouldn\'t work with -std=c11, but configure still detects it.
+#define HAVE_STRLCPY 1
- /* Define to 1 if you have the `strncasecmp' function. */
+ /* Define to 1 if you have the 'strncasecmp' function. */
#define HAVE_STRNCASECMP 1
-@@ -411,7 +411,7 @@
+@@ -441,7 +441,7 @@
#define HAVE_SYSCONF 1
/* Define to 1 if you have the <sys/endian.h> header file. */
@@ -58,7 +49,7 @@
/* Define to 1 if you have the <sys/mman.h> header file. */
#define HAVE_SYS_MMAN_H 1
-@@ -486,13 +486,13 @@
+@@ -522,13 +522,13 @@
/* #undef HAVE__STATI64 */
/* Define to 1 if you have the `__bswap_16' intrinsic function. */
@@ -75,21 +66,3 @@
/* Define to 1 if you have the `__builtin_bswap16' intrinsic function. */
#define HAVE___BUILTIN_BSWAP16 1
-@@ -620,7 +620,7 @@
- /* Define to the equivalent of the C99 'restrict' keyword, or to
- nothing if this is not supported. Do not define if restrict is
- supported directly. */
--#define restrict __restrict
-+#define restrict __restrict__
- /* Work around a bug in Sun C++: it does not support _Restrict or
- __restrict__, even though the corresponding Sun C compiler ends up with
- "#define restrict _Restrict" or "#define restrict __restrict__" in the
-@@ -637,7 +637,7 @@
- /* Define if your snprintf function is not named snprintf. */
- /* #undef snprintf */
-
--/* Define if your typeof operator is not named typeof. */
-+/* Define if your typeof operator is not named `typeof'. */
- #define typeof __typeof
-
- /* Define to the type of an unsigned integer type wide enough to hold a
diff --git a/multimedia/ringrtc/files/patch-third__party_perfetto_src_base_string__utils.cc b/multimedia/ringrtc/files/patch-third__party_perfetto_src_base_string__utils.cc
deleted file mode 100644
index 19116d9de29f..000000000000
--- a/multimedia/ringrtc/files/patch-third__party_perfetto_src_base_string__utils.cc
+++ /dev/null
@@ -1,12 +0,0 @@
---- src/webrtc/src/third_party/perfetto/src/base/string_utils.cc.orig 2023-12-10 06:10:27 UTC
-+++ src/webrtc/src/third_party/perfetto/src/base/string_utils.cc
-@@ -39,7 +39,8 @@ namespace base {
- // Locale-independant as possible version of strtod.
- double StrToD(const char* nptr, char** endptr) {
- #if PERFETTO_BUILDFLAG(PERFETTO_OS_ANDROID) || \
-- PERFETTO_BUILDFLAG(PERFETTO_OS_LINUX_BUT_NOT_QNX) || \
-+ (PERFETTO_BUILDFLAG(PERFETTO_OS_LINUX_BUT_NOT_QNX) && \
-+ !PERFETTO_BUILDFLAG(PERFETTO_OS_BSD)) || \
- PERFETTO_BUILDFLAG(PERFETTO_OS_APPLE)
- static auto c_locale = newlocale(LC_ALL, "C", nullptr);
- return strtod_l(nptr, endptr, c_locale);
diff --git a/multimedia/ringrtc/files/patch-third__party_perfetto_src_tracing_ipc_memfd.cc b/multimedia/ringrtc/files/patch-third__party_perfetto_src_tracing_ipc_memfd.cc
index 8fc6f48670d5..849970708a27 100644
--- a/multimedia/ringrtc/files/patch-third__party_perfetto_src_tracing_ipc_memfd.cc
+++ b/multimedia/ringrtc/files/patch-third__party_perfetto_src_tracing_ipc_memfd.cc
@@ -4,9 +4,9 @@
#define PERFETTO_MEMFD_ENABLED() \
PERFETTO_BUILDFLAG(PERFETTO_OS_ANDROID) || \
-- PERFETTO_BUILDFLAG(PERFETTO_OS_LINUX_BUT_NOT_QNX)
-+ (PERFETTO_BUILDFLAG(PERFETTO_OS_LINUX_BUT_NOT_QNX) && \
-+ !PERFETTO_BUILDFLAG(PERFETTO_OS_BSD))
+- PERFETTO_BUILDFLAG(PERFETTO_OS_LINUX_BUT_NOT_QNX)
++ (PERFETTO_BUILDFLAG(PERFETTO_OS_LINUX_BUT_NOT_QNX) && \
++ !PERFETTO_BUILDFLAG(PERFETTO_OS_BSD))
#if PERFETTO_MEMFD_ENABLED()
diff --git a/multimedia/ringrtc/files/patch-third__party_webrtc_rtc__base_network.cc b/multimedia/ringrtc/files/patch-third__party_webrtc_rtc__base_network.cc
index 29d5f54e06e9..366f357f6262 100644
--- a/multimedia/ringrtc/files/patch-third__party_webrtc_rtc__base_network.cc
+++ b/multimedia/ringrtc/files/patch-third__party_webrtc_rtc__base_network.cc
@@ -1,15 +1,14 @@
--- src/webrtc/src/rtc_base/network.cc.orig 2024-06-17 12:56:06 UTC
+++ src/webrtc/src/rtc_base/network.cc
-@@ -320,7 +320,12 @@ webrtc::AdapterType GetAdapterTypeFromName(absl::strin
+@@ -312,7 +312,12 @@ AdapterType GetAdapterTypeFromName(absl::string_view n
}
#endif
-- return webrtc::ADAPTER_TYPE_UNKNOWN;
+#if defined(WEBRTC_BSD)
+ // Treat all other network interface names as ethernet on BSD
-+ return ADAPTER_TYPE_ETHERNET;
++ return webrtc::ADAPTER_TYPE_ETHERNET;
+#else
-+ return ADAPTER_TYPE_UNKNOWN;
+ return ADAPTER_TYPE_UNKNOWN;
+#endif
}
diff --git a/multimedia/ringrtc/webrtc_fetch.sh b/multimedia/ringrtc/webrtc_fetch.sh
index 2c5e9af2e2c3..ccb1fb89bd4c 100644
--- a/multimedia/ringrtc/webrtc_fetch.sh
+++ b/multimedia/ringrtc/webrtc_fetch.sh
@@ -1,6 +1,13 @@
#!/bin/sh
-WEBRTC_REV=7103e
+#Fetching https://android.googlesource.com/platform/external/perfetto.git/+archive/.tar.gz
+#fetch: https://android.googlesource.com/platform/external/perfetto.git/+archive/.tar.gz: Not Found
+
+# 'src/third_party/perfetto':
+# Var('chromium_git') + '/external/github.com/google/perfetto.git' + '@' + 'dd35b295cd359ba094404218414955f961a0d6ae',
+
+
+WEBRTC_REV=7204a
base_url="https://chromium.googlesource.com/chromium/src/base.git/+archive/"
boringssl_url="https://boringssl.googlesource.com/boringssl.git/+archive/"
@@ -13,7 +20,7 @@ libsrtp_url="https://chromium.googlesource.com/chromium/deps/libsrtp.git/+archiv
libvpx_url="https://chromium.googlesource.com/webm/libvpx.git/+archive/"
libyuv_url="https://chromium.googlesource.com/libyuv/libyuv.git/+archive/"
nasm_url="https://chromium.googlesource.com/chromium/deps/nasm.git/+archive/"
-perfetto_url="https://android.googlesource.com/platform/external/perfetto.git/+archive/"
+perfetto_url="https://chromium.googlesource.com/external/github.com/google/perfetto.git/+archive/"
protobuf_javascript_url="https://chromium.googlesource.com/external/github.com/protocolbuffers/protobuf-javascript.git/+archive/"
re2_url="https://chromium.googlesource.com/external/github.com/google/re2.git/+archive/"
testing_url="https://chromium.googlesource.com/chromium/src/testing.git/+archive/"
@@ -70,7 +77,7 @@ opus_hash=$(grep 'opus.git@' /tmp/DEPS | awk -F '@' '{print $2}' | sed -e "s#',#
printf "OPUS_REV=\t${opus_hash}\n"
printf "OPUS_REV=\t${opus_hash}\n" | portedit merge -i Makefile
-perfetto_hash=$(grep 'perfetto.git@' /tmp/DEPS | awk -F '@' '{print $2}' | sed -e "s#',##" -e "s#'##")
+perfetto_hash=$(grep 'perfetto.git' /tmp/DEPS | awk -F '+' '{print $4}' | sed -e "s# ##g" -e "s#',##" -e "s#'##")
printf "PERFETTO_REV=\t${perfetto_hash}\n"
printf "PERFETTO_REV=\t${perfetto_hash}\n" | portedit merge -i Makefile
diff --git a/multimedia/shotcut-qt6/Makefile b/multimedia/shotcut-qt6/Makefile
index 79bcfd237440..af719743b59b 100644
--- a/multimedia/shotcut-qt6/Makefile
+++ b/multimedia/shotcut-qt6/Makefile
@@ -1,5 +1,5 @@
PORTNAME= shotcut
-DISTVERSION= 25.07.26
+DISTVERSION= 25.08.16
CATEGORIES= multimedia
MASTER_SITES= https://github.com/mltframework/${PORTNAME}/releases/download/v${DISTVERSION}/
PKGNAMESUFFIX= -qt6
diff --git a/multimedia/shotcut-qt6/distinfo b/multimedia/shotcut-qt6/distinfo
index 8bd6ff6a89e1..b736c65c85b8 100644
--- a/multimedia/shotcut-qt6/distinfo
+++ b/multimedia/shotcut-qt6/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1754394044
-SHA256 (shotcut-src-250726.txz) = 0512d2c41ad6d09033058dc73571a196aac758e44981f571adf950cf1203ea3d
-SIZE (shotcut-src-250726.txz) = 287683936
+TIMESTAMP = 1756016462
+SHA256 (shotcut-src-250816.txz) = 489a5cc9efca43a76c29a638b48def0886671e0fbf3ec35911504b4a89a8ada7
+SIZE (shotcut-src-250816.txz) = 286214360
diff --git a/multimedia/simplescreenrecorder/Makefile b/multimedia/simplescreenrecorder/Makefile
index 9127c5a50df9..4d2384cff269 100644
--- a/multimedia/simplescreenrecorder/Makefile
+++ b/multimedia/simplescreenrecorder/Makefile
@@ -1,17 +1,18 @@
PORTNAME= simplescreenrecorder
-DISTVERSION= 0.4.4-9
-DISTVERSIONSUFFIX= -gc092f3e
-PORTREVISION= 4
+DISTVERSION= 0.4.4-73
+DISTVERSIONSUFFIX= -g232eac7
CATEGORIES= multimedia
MAINTAINER= yuri@FreeBSD.org
COMMENT= Screen video/audio recorder
-WWW= https://www.maartenbaert.be/simplescreenrecorder/
+WWW= https://www.maartenbaert.be/simplescreenrecorder/ \
+ https://github.com/MaartenBaert/ssr
LICENSE= GPLv3
LICENSE_FILE= ${WRKSRC}/COPYING
-LIB_DEPENDS= libavformat.so:multimedia/ffmpeg
+LIB_DEPENDS= libavformat.so:multimedia/ffmpeg \
+ libpipewire-0.3.so:multimedia/pipewire
USES= cmake compiler:c++11-lang desktop-file-utils pkgconfig qt:5 xorg
USE_QT= core gui widgets x11extras buildtools:build linguisttools:build qmake:build
diff --git a/multimedia/simplescreenrecorder/distinfo b/multimedia/simplescreenrecorder/distinfo
index b599be4ab99b..bf30a690f9cf 100644
--- a/multimedia/simplescreenrecorder/distinfo
+++ b/multimedia/simplescreenrecorder/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1679290276
-SHA256 (MaartenBaert-ssr-0.4.4-9-gc092f3e_GH0.tar.gz) = 2f0c28058c8a044c1045dca3d674e797e8815fff15ac0c84eb2577b6c9d89dd2
-SIZE (MaartenBaert-ssr-0.4.4-9-gc092f3e_GH0.tar.gz) = 1962897
+TIMESTAMP = 1756030142
+SHA256 (MaartenBaert-ssr-0.4.4-73-g232eac7_GH0.tar.gz) = 6df43cb8d46bc78f912eaf09bbb33c909477b6662222442235216ac45c51a00b
+SIZE (MaartenBaert-ssr-0.4.4-73-g232eac7_GH0.tar.gz) = 2044237
diff --git a/multimedia/simplescreenrecorder/pkg-plist b/multimedia/simplescreenrecorder/pkg-plist
index 6a4b5317a407..e4f126570375 100644
--- a/multimedia/simplescreenrecorder/pkg-plist
+++ b/multimedia/simplescreenrecorder/pkg-plist
@@ -1,5 +1,5 @@
bin/simplescreenrecorder
-share/applications/simplescreenrecorder.desktop
+share/applications/be.maartenbaert.simplescreenrecorder.desktop
share/icons/hicolor/128x128/apps/simplescreenrecorder-error.png
share/icons/hicolor/128x128/apps/simplescreenrecorder-idle.png
share/icons/hicolor/128x128/apps/simplescreenrecorder-paused.png
@@ -57,7 +57,7 @@ share/icons/hicolor/scalable/apps/simplescreenrecorder-recording.svg
share/icons/hicolor/scalable/apps/simplescreenrecorder.svg
share/man/man1/simplescreenrecorder.1.gz
share/man/man1/ssr-glinject.1.gz
-share/metainfo/simplescreenrecorder.metainfo.xml
+share/metainfo/be.maartenbaert.simplescreenrecorder.metainfo.xml
%%DATADIR%%/output-profiles/High%20Quality%20Intermediate.conf
%%DATADIR%%/output-profiles/Live%20Stream%20%281000kbps%29.conf
%%DATADIR%%/output-profiles/Live%20Stream%20%282000kbps%29.conf
@@ -76,6 +76,7 @@ share/metainfo/simplescreenrecorder.metainfo.xml
%%DATADIR%%/translations/simplescreenrecorder_id.qm
%%DATADIR%%/translations/simplescreenrecorder_it.qm
%%DATADIR%%/translations/simplescreenrecorder_ja.qm
+%%DATADIR%%/translations/simplescreenrecorder_ko.qm
%%DATADIR%%/translations/simplescreenrecorder_lt.qm
%%DATADIR%%/translations/simplescreenrecorder_nl.qm
%%DATADIR%%/translations/simplescreenrecorder_pl.qm
diff --git a/multimedia/supersonic/Makefile b/multimedia/supersonic/Makefile
index cfe4911f99ba..6a320f95fb13 100644
--- a/multimedia/supersonic/Makefile
+++ b/multimedia/supersonic/Makefile
@@ -1,7 +1,6 @@
PORTNAME= supersonic
DISTVERSIONPREFIX= v
-DISTVERSION= 0.17.0
-PORTREVISION= 1
+DISTVERSION= 0.18.0
CATEGORIES= multimedia
MAINTAINER= dtxdf@FreeBSD.org
diff --git a/multimedia/supersonic/distinfo b/multimedia/supersonic/distinfo
index 5c383d09efb9..7a903c121a67 100644
--- a/multimedia/supersonic/distinfo
+++ b/multimedia/supersonic/distinfo
@@ -1,5 +1,5 @@
-TIMESTAMP = 1754003963
-SHA256 (go/multimedia_supersonic/supersonic-v0.17.0/v0.17.0.mod) = 4d36601442856856580f2e8993941896aef130bf2bdf46a96e6ae35c382b2a44
-SIZE (go/multimedia_supersonic/supersonic-v0.17.0/v0.17.0.mod) = 2955
-SHA256 (go/multimedia_supersonic/supersonic-v0.17.0/v0.17.0.zip) = 3b8aecb5f1fe6b22bd6eaf5986bbab4fff9c3bf8b45eadc69a4dba18e3026a90
-SIZE (go/multimedia_supersonic/supersonic-v0.17.0/v0.17.0.zip) = 65439988
+TIMESTAMP = 1755710408
+SHA256 (go/multimedia_supersonic/supersonic-v0.18.0/v0.18.0.mod) = cbc00407c22c0b67a3351c5bab1ce68adbb99468971ca9d46d56ad56342a0555
+SIZE (go/multimedia_supersonic/supersonic-v0.18.0/v0.18.0.mod) = 3199
+SHA256 (go/multimedia_supersonic/supersonic-v0.18.0/v0.18.0.zip) = 9aea56cb51ab8bea9e30788d2eae919ca1c1b66a4352b4720e4046921688f50c
+SIZE (go/multimedia_supersonic/supersonic-v0.18.0/v0.18.0.zip) = 65467154
diff --git a/multimedia/svt-av1/Makefile b/multimedia/svt-av1/Makefile
index 7900e65fe6ea..93418e7a54ac 100644
--- a/multimedia/svt-av1/Makefile
+++ b/multimedia/svt-av1/Makefile
@@ -1,6 +1,6 @@
PORTNAME= svt-av1
DISTVERSIONPREFIX= v
-DISTVERSION= 3.1.0
+DISTVERSION= 3.1.2
CATEGORIES= multimedia
MAINTAINER= jbeich@FreeBSD.org
diff --git a/multimedia/svt-av1/distinfo b/multimedia/svt-av1/distinfo
index 524cd47da53c..7cc9b63920a0 100644
--- a/multimedia/svt-av1/distinfo
+++ b/multimedia/svt-av1/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1753481056
-SHA256 (SVT-AV1-v3.1.0.tar.bz2) = 8231b63ea6c50bae46a019908786ebfa2696e5743487270538f3c25fddfa215a
-SIZE (SVT-AV1-v3.1.0.tar.bz2) = 10203101
+TIMESTAMP = 1756053285
+SHA256 (SVT-AV1-v3.1.2.tar.bz2) = 802e9bb2b14f66e8c638f54857ccb84d3536144b0ae18b9f568bbf2314d2de88
+SIZE (SVT-AV1-v3.1.2.tar.bz2) = 10203273
diff --git a/multimedia/wf-recorder/files/patch-fix-ffmpeg8 b/multimedia/wf-recorder/files/patch-fix-ffmpeg8
new file mode 100644
index 000000000000..68bf8d5643ce
--- /dev/null
+++ b/multimedia/wf-recorder/files/patch-fix-ffmpeg8
@@ -0,0 +1,27 @@
+From 560bb92d3ddaeb31d7af77d22d01b0050b45bebe Mon Sep 17 00:00:00 2001
+From: Scott Moreau <oreaus@gmail.com>
+Date: Tue, 8 Oct 2024 12:56:55 -0600
+Subject: [PATCH] frame-writer: Track ffmpeg changes (#279)
+
+* frame-writer: Track ffmpeg changes
+
+The frame_rate variable has been made private API.
+
+* frame-writer: Remove comment
+---
+ src/frame-writer.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git src/frame-writer.cpp src/frame-writer.cpp
+index 2a5ba17..b8abe51 100644
+--- src/frame-writer.cpp
++++ src/frame-writer.cpp
+@@ -371,7 +371,7 @@ void FrameWriter::init_video_filters(const AVCodec *codec)
+ this->videoCodecCtx->height = filter_output->h;
+ this->videoCodecCtx->pix_fmt = (AVPixelFormat)filter_output->format;
+ this->videoCodecCtx->time_base = filter_output->time_base;
+- this->videoCodecCtx->framerate = filter_output->frame_rate; // can be 1/0 if unknown
++ this->videoCodecCtx->framerate = AVRational{1,0};
+ this->videoCodecCtx->sample_aspect_ratio = filter_output->sample_aspect_ratio;
+
+ this->hw_frame_context = av_buffersink_get_hw_frames_ctx(
diff --git a/multimedia/wl-screenrec/Makefile b/multimedia/wl-screenrec/Makefile
index 9bd743db8223..4b74e9294d3e 100644
--- a/multimedia/wl-screenrec/Makefile
+++ b/multimedia/wl-screenrec/Makefile
@@ -4,7 +4,7 @@ DISTVERSION= 0.1.5
PORTREVISION= 9
CATEGORIES= multimedia wayland
-MAINTAINER= jbeich@FreeBSD.org
+MAINTAINER= ports@FreeBSD.org
COMMENT= High performance wlroots screen recording, featuring hardware encoding
WWW= https://github.com/russelltg/wl-screenrec