Skip to content

OBS crashes when opening Spotify while Tuna loaded (Linux) #220

@fritz-fritz

Description

@fritz-fritz

OBS Studio - 31.0.2
Tuna 1.9.10

Describe the bug
When OBS is already running with Tuna plugin loaded, launching Spotify causes OBS to crash. Verified caused by Tuna by uninstalling the plugin.

To Reproduce

  1. Install OBS
  2. Install Tuna
  3. Launch OBS
  4. Launch Spotify
    > Immediate Crash

Expected behavior
Tuna should not cause OBS to crash for any reason.

Log
OBS log
gdb.log

Relevant bits

info: [tuna] Loading v1.9.10-HEAD-1883b15 (build time 2025.03.29 10:07). Qt version: compile-time: 6.2.4, run-time: 6.7.2. libobs: compile-time: 30.2.3, run-time: 31.0.2-1-gbd501f455
warning: DEPRECATION: obs_frontend_get_global_config is deprecated. Read from global or user configuration explicitly instead.
warning: QObject::connect: Parentheses expected, slot tuna_gui::cb_download_missing_covers_clicked
warning: QObject::connect:  (sender name:   'cb_download_missing')
warning: QObject::connect:  (receiver name: 'tuna_gui')
warning: QMetaObject::connectSlotsByName: No matching signal for on_scene_changed(int)
warning: QMetaObject::connectSlotsByName: No matching signal for on_add_source()
warning: QMetaObject::connectSlotsByName: No matching signal for on_remove_source()
[New Thread 0x7ffed49f66c0 (LWP 1213488)]
warning: [tuna] [MPRIS] NOT HANDLED: message with path /org/freedesktop/DBus and member NameAcquired
warning: DEPRECATION: obs_frontend_get_global_config is deprecated. Read from global or user configuration explicitly instead.
info: [tuna] Loaded 1 outputs
info: [tuna] Not logged into Spotify.
info: [tuna] Using custom Spotify credentials. ID set: yes, secret set: yes
[New Thread 0x7ffed51f76c0 (LWP 1213489)]
info: [tuna] Webserver listening on 1608

...
[New Thread 0x7ffc1cff56c0 (LWP 1213907)]
[Thread 0x7ffc29ffb6c0 (LWP 1213895) exited]
[Thread 0x7ffc356a16c0 (LWP 1213883) exited]
[Thread 0x7ffc321ff6c0 (LWP 1213885) exited]
[Thread 0x7ffe49ffb6c0 (LWP 1213603) exited]
[New Thread 0x7ffe49ffb6c0 (LWP 1214311)]
info: [tuna] Not logged into Spotify.
info: [tuna] Using custom Spotify credentials. ID set: yes, secret set: yes
[New Thread 0x7ffc321ff6c0 (LWP 1214499)]
info: [tuna] Query thread stopped.
[Thread 0x7ffc321ff6c0 (LWP 1214499) exited]
info: [tuna] Loaded 1 outputs
info: [tuna] Not logged into Spotify.
info: [tuna] Using custom Spotify credentials. ID set: yes, secret set: yes
info: [tuna] Loaded 1 outputs
info: [tuna] Not logged into Spotify.
info: [tuna] Using custom Spotify credentials. ID set: yes, secret set: yes
[Thread 0x7ffe49ffb6c0 (LWP 1214311) exited]
[Thread 0x7fffc37fe6c0 (LWP 1213305) exited]
[Thread 0x7fffc3fff6c0 (LWP 1213304) exited]
[Thread 0x7fffdc9296c0 (LWP 1213303) exited]
[Thread 0x7fffdd32c6c0 (LWP 1213302) exited]
[Thread 0x7fffddb2d6c0 (LWP 1213301) exited]
info: [tuna] [MPRIS] Unregistering of :1.2254 as org.mpris.MediaPlayer2.spotify
info: [tuna] [MPRIS] Registration of :1.2273 as org.mpris.MediaPlayer2.spotify
dbus[1213281]: type invalid 0 not a basic type
  D-Bus not built with -rdynamic so unable to print a backtrace

Thread 81 "tuna-mpris" received signal SIGABRT, Aborted.
[Switching to Thread 0x7ffed49f66c0 (LWP 1213488)]
__pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at ./nptl/pthread_kill.c:44
warning: 44     ./nptl/pthread_kill.c: No such file or directory
(gdb) bt
#0  __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at ./nptl/pthread_kill.c:44
#1  0x00007ffff2a9debf in __pthread_kill_internal (threadid=<optimized out>, signo=6) at ./nptl/pthread_kill.c:78
#2  0x00007ffff2a49c82 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
#3  0x00007ffff2a324f0 in __GI_abort () at ./stdlib/abort.c:79
#4  0x00007fffec8f2ea4 in ??? () at /lib/x86_64-linux-gnu/libdbus-1.so.3
#5  0x00007fffec916700 in _dbus_warn_check_failed () at /lib/x86_64-linux-gnu/libdbus-1.so.3
#6  0x00007fffec91829c in ??? () at /lib/x86_64-linux-gnu/libdbus-1.so.3
#7  0x00007ffed5cef5f5 in mpris_source::parse_metadata(DBusMessageIter*, QString const&, int) () at /usr/lib/x86_64-linux-gnu/obs-plugins/tuna.so
#8  0x00007ffed5cee7f8 in mpris_source::parse_metadata(DBusMessageIter*, QString const&, int) () at /usr/lib/x86_64-linux-gnu/obs-plugins/tuna.so
#9  0x00007ffed5cf0577 in mpris_source::parse_array(DBusMessageIter*, QString const&, int) () at /usr/lib/x86_64-linux-gnu/obs-plugins/tuna.so
#10 0x00007ffed5cf0194 in mpris_source::parse_array(DBusMessageIter*, QString const&, int) () at /usr/lib/x86_64-linux-gnu/obs-plugins/tuna.so
#11 0x00007ffed5cf0d81 in mpris_source::handle_mpris(DBusMessage*) () at /usr/lib/x86_64-linux-gnu/obs-plugins/tuna.so
#12 0x00007fffec8fb899 in dbus_connection_dispatch () at /lib/x86_64-linux-gnu/libdbus-1.so.3
#13 0x00007fffec8fbf60 in ??? () at /lib/x86_64-linux-gnu/libdbus-1.so.3
#14 0x00007ffed5ced311 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<mpris_source::mpris_source()::{lambda(mpris_source*)#1}, mpris_source*> > >::_M_run() () at /usr/lib/x86_64-linux-gnu/obs-plugins/tuna.so                                                                                 
#15 0x00007ffff2ce1224 in ??? () at /lib/x86_64-linux-gnu/libstdc++.so.6
#16 0x00007ffff2a9c112 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:447
#17 0x00007ffff2b1a8f8 in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78

Additional context
I followed the instructions from other threads to get a backtrace though I'm unsure if it's helpful at all. I am using the MPRIS source. For now I just ensure I have Spotify launched before OBS.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions