Following launch application suffers Segmentation fault (core dumped) and exits. Verified with fresh install on 14.1-RELEASE-p5. Reproducible via both pkg and building port. Back trace from .core file uing gdb: Core was generated by `/usr/ports/multimedia/mkvtoolnix/work-qt6/stage/usr/local/bin/mkvtoolnix-gui'. Program terminated with signal SIGSEGV, Segmentation fault. Address not mapped to object. #0 0x0000000886da9b97 in ?? () from /usr/local/lib/qt6/plugins/multimedia/libgstreamermediaplugin.so [Current thread is 1 (LWP 112069)] (gdb) bt #0 0x0000000886da9b97 in ??? () at /usr/local/lib/qt6/plugins/multimedia/libgstreamermediaplugin.so #1 0x0000000886dd2a4e in ??? () at /usr/local/lib/qt6/plugins/multimedia/libgstreamermediaplugin.so #2 0x000000082b3da8e9 in QAudioOutput::QAudioOutput(QAudioDevice const&, QObject*) () at /usr/local/lib/qt6/libQt6Multimedia.so.6 #3 0x000000082b3da7fe in QAudioOutput::QAudioOutput(QObject*) () at /usr/local/lib/qt6/libQt6Multimedia.so.6 #4 0x000000000060c9cf in mtx::gui::Util::MediaPlayerPrivate::MediaPlayerPrivate (this=0x1f9c3b52d9d0) at src/mkvtoolnix-gui/util/media_player.cpp:23 #5 0x000000000060c49d in mtx::gui::Util::MediaPlayer::MediaPlayer (this=0x1f9c39c30620) at src/mkvtoolnix-gui/util/media_player.cpp:31 #6 0x00000000003b2fe8 in mtx::gui::App::setupMediaPlayer (this=<optimized out>) at src/mkvtoolnix-gui/app.cpp:211 #7 mtx::gui::App::mediaPlayer () at src/mkvtoolnix-gui/app.cpp:217 #8 0x0000000000482f31 in mtx::gui::MainWindow::setupConnections (this=0x1f9c3b4bc560) at src/mkvtoolnix-gui/main_window/main_window.cpp:242 #9 0x00000000004816e2 in mtx::gui::MainWindow::MainWindow (this=0x1f9c3b4bc560, parent=<optimized out>) at src/mkvtoolnix-gui/main_window/main_window.cpp:107 #10 0x00000000003b55b1 in std::__1::make_unique[abi:se180100]<mtx::gui::MainWindow>() () at /usr/include/c++/v1/__memory/unique_ptr.h:597 #11 mtx::gui::App::run (this=0x1f9c395c8d60) at src/mkvtoolnix-gui/app.cpp:617 #12 0x00000000005c3ed1 in main (argc=1, argv=0x820ce05d8) at src/mkvtoolnix-gui/mkvtoolnix_gui.cpp:91
As a workaround I built multimedia/qt6-multimedia-6.7.3 with GSTREAMER=off, whereupon mkvtoolnix-gui executes without issue. Not sure what functionality this disables.
This must be a recent regression in one of the downstream dependencies, it worked fine just a few days ago. Looking into it.
This is reproducible, coming from the update to gstreamer 1.24. Jason, any idea what's going on in qt6-multimedia?
(In reply to Thomas Zander from comment #3) I'll investigate the issue, but this seems to be a regression in qt6-multimedia 6.7.3. There were a lot of changes to the gstreamer plugin since 6.7.2, so it may take a while to sift through those. I don't think it's a problem with the gstreamer update as mkvtoolnix runs fine with gstreamer 1.24.8 and qt 6.7.2.
Sorry, but I can't reproduce this with Qt 6.7.3 and GStreamer 1.24.8 on FreeBSD-CURRENT from 2024-08-31. Some of the support libraries I have installed are not yet up-to-date, so it may be a problem with one of them, but I'm just speculating at this point.
I just updated my FreeBSD installation and all of the packages with those built by the FreeBSD package builders. Still can't reproduce this.
My builder is still crunching (rebuilding everything), will let you know when I have an update. Hopefully we can track it down soon. Fingers crossed.
I can reproduce this now with mkvtoolnix 88 and official FreeBSD packages. Whatever it is, it did not disappear. Looking...
I was finally able to reproduce this. Installing audio/gstreamer1-plugins-pulse fixed the issue for me.
(In reply to Jason E. Hale from comment #9) Wow! I can confirm that installing gstreamer1-plugins-pulse fixes the problem for me as well. How did you find out that the pulse plugin is the culprit? Did you have a gstreamer debug build? As for the resolution, it seems unlikely that mkvtoolnix is the only affected port. We might want to add a RUN_DEPENDS for the pulse plugin in qt6-multimedia. WDYT? Otherwise I'm happy to add one to mkvtoolnix referencing this bug.
(In reply to Thomas Zander from comment #10) Ultimately, I just did a debug build of qt6-multimedia 6.7.3 and lldb was a little more helpful than gdb at pointing me in the right direction. I agree that this should be fixed in the qt6-multimedia port. The plugin probably isn’t needed if qt6-multimedia is built with the PULSEAUDIO option disabled. I’ll have to check that.
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=7fac7b6b62bb55df32a6bdad4eab3374ff298fc5 commit 7fac7b6b62bb55df32a6bdad4eab3374ff298fc5 Author: Jason E. Hale <jhale@FreeBSD.org> AuthorDate: 2024-12-22 05:47:12 +0000 Commit: Jason E. Hale <jhale@FreeBSD.org> CommitDate: 2024-12-22 06:47:24 +0000 audio/gstreamer1-plugins-alsa: Add port GStreamer ALSA plugin. If multimedia/qt6-multimedia is built with both the GSTREAMER and ALSA options enabled, certain applications like multimedia/mkvtoolnix may crash if this plugin is not installed. PR: 282078 Mk/Uses/gstreamer.mk | 5 ++++- audio/Makefile | 1 + audio/gstreamer1-plugins-alsa/Makefile (new) | 16 ++++++++++++++++ audio/gstreamer1-plugins-alsa/pkg-plist (new) | 1 + .../files/patch-ext_alsa_meson.build (new) | 13 +++++++++++++ 5 files changed, 35 insertions(+), 1 deletion(-)
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=04cb7d0bcd688c3bcd88b0ae632e787a7c75a5fa commit 04cb7d0bcd688c3bcd88b0ae632e787a7c75a5fa Author: Jason E. Hale <jhale@FreeBSD.org> AuthorDate: 2024-12-22 06:38:57 +0000 Commit: Jason E. Hale <jhale@FreeBSD.org> CommitDate: 2024-12-22 06:47:51 +0000 multimedia/qt6-multimedia: Add missing deps If the GSTREAMER option is enabled, the respective audio sink for either the ALSA or PULSEAUDIO backend needs to be installed, otherwise applications like multimedia/mkvtoolnix may crash upon startup. While here, add missing graphics/libdrm dep. PR: 282078 multimedia/qt6-multimedia/Makefile | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-)
I think this should be sorted now.
Thanks for looking into this!