okay so it doesn't crash when you start obs it only crashes when you try to add a linux browser source.
unrelated to the plugin obs (snap version) doesn't detect VLC.
the only error i get error: obs-linuxbrowser: shm_open error which is at the end.
you can see in the logs.
here is the log from the terminal.
case "$SNAP_ARCH" in
ARCH=x86_64-linux-gnu
OBS=64bit
cd /snap/obs-studio/3/usr/bin/64bit
exec ./obs
Gtk-Message: Failed to load module "gail"
Gtk-Message: Failed to load module "atk-bridge"
Gtk-Message: Failed to load module "canberra-gtk-module"
Qt: Session management error: None of the authentication protocols specified are supported
Attempted path: ../../data/obs-studio/locale/en-US.ini
Attempted path: ../../data/obs-studio/locale.ini
Attempted path: ../../data/obs-studio/themes/Dark.qss
Attempted path: ../../data/obs-studio/license/gplv2.txt
info: CPU Name: Intel(R) Core(TM)2 Quad CPU Q6700 @ 2.66GHz
info: CPU Speed: 1867.000MHz
info: Physical Cores: 4, Logical Cores: 4
info: Physical Memory: 5961MB Total, 388MB Free
info: Kernel Version: Linux 4.13.0-37-generic
info: Distribution: "Ubuntu Core" "16"
info: Portable mode: false
QMetaObject::connectSlotsByName: No matching signal for on_advAudioProps_clicked()
QMetaObject::connectSlotsByName: No matching signal for on_advAudioProps_destroyed()
QMetaObject::connectSlotsByName: No matching signal for on_program_customContextMenuRequested(QPoint)
info: OBS 21.1.0 (linux)
info: ---------------------------------
info: ---------------------------------
info: audio settings reset:
samples per sec: 44100
speakers: 2
info: ---------------------------------
info: Initializing OpenGL...
info: Loading up OpenGL on adapter NVIDIA Corporation GeForce GT 640/PCIe/SSE2
info: OpenGL loaded successfully, version 3.2.0 NVIDIA 384.111, shading language 1.50 NVIDIA via Cg compiler
info: ---------------------------------
info: video settings reset:
base resolution: 1440x900
output resolution: 640x400
downscale filter: Bicubic
fps: 30/1
format: NV12
YUV mode: 601/Partial
info: Audio monitoring device:
name: Default
id: default
info: ---------------------------------
libDeckLinkAPI.so: cannot open shared object file: No such file or directory
info: No blackmagic support
error: os_dlopen(libvlc.so.5->libvlc.so.5): libvlc.so.5: cannot open shared object file: No such file or directory
info: Couldn't find VLC installation, VLC video source disabled
info: ---------------------------------
info: Loaded Modules:
info: libobs-linuxbrowser.so
info: vlc-video.so
info: text-freetype2.so
info: rtmp-services.so
info: obs-x264.so
info: obs-transitions.so
info: obs-outputs.so
info: obs-libfdk.so
info: obs-filters.so
info: obs-ffmpeg.so
info: linux-v4l2.so
info: linux-pulseaudio.so
info: linux-jack.so
info: linux-decklink.so
info: linux-capture.so
info: image-source.so
info: frontend-tools.so
info: ---------------------------------
info: ==== Startup complete ===============================================
info: All scene data cleared
info: ------------------------------------------------
info: pulse-input: Server name: 'pulseaudio 10.0'
info: pulse-input: Audio format: s16le, 44100 Hz, 2 channels
info: pulse-input: Started recording from 'alsa_output.pci-0000_00_1b.0.analog-stereo.monitor'
info: pulse-input: Server name: 'pulseaudio 10.0'
info: pulse-input: Audio format: s16le, 44100 Hz, 2 channels
info: pulse-input: Started recording from 'alsa_input.pci-0000_00_1b.0.analog-stereo'
info: Switched to scene 'Scene'
info: ------------------------------------------------
info: Loaded scenes:
info: - scene 'Scene':
info: - source: 'Window Capture (Xcomposite)' (xcomposite_input)
info: - source: 'Text (FreeType 2)' (text_ft2_source)
info: - source: 'chat log' (text_ft2_source)
info: ------------------------------------------------
0x1e7e410 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window.
0x1e90ff0 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window.
0xfea9a0 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window.
0xfc7490 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window.
0x1e7d3f0 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window.
0x1f877e0 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window.
0x1ea2270 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window.
0x1e90c50 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window.
0x1e8f980 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window.
0x1e79d20 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window.
0x1e78e90 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window.
0xfc7490 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window.
0x1e90ff0 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window.
0x1e7d3f0 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window.
0x1f877e0 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window.
0x1ea2270 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window.
0x1e90c50 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window.
0x1e8f980 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window.
0x1e79d20 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window.
0x1e78e90 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window.
0x1ea2270 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window.
0x1e90c50 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window.
0x1e8f980 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window.
0x1e79d20 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window.
0x1e78e90 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window.
0x1e90ff0 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window.
0xfc7490 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window.
0x1f877e0 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window.
0x1ea2270 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window.
0x1e90c50 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window.
0x1e8f980 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window.
0x1e79d20 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window.
0x1e78e90 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window.
0x1e90ff0 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window.
0xfc7490 void QWindowPrivate::setTopLevelScreen(QScreen*, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window.
info: adding 23 milliseconds of audio buffering, total audio buffering is now 23 milliseconds
info: adding 23 milliseconds of audio buffering, total audio buffering is now 46 milliseconds
error: obs-linuxbrowser: shm_open error
Segmentation fault (core dumped)
okay so it doesn't crash when you start obs it only crashes when you try to add a linux browser source. unrelated to the plugin obs (snap version) doesn't detect VLC.
the only error i get error: obs-linuxbrowser: shm_open error which is at the end. you can see in the logs. here is the log from the terminal.
info: Couldn't find VLC installation, VLC video source disabled info: --------------------------------- info: Loaded Modules: info: libobs-linuxbrowser.so info: vlc-video.so info: text-freetype2.so info: rtmp-services.so info: obs-x264.so info: obs-transitions.so info: obs-outputs.so info: obs-libfdk.so info: obs-filters.so info: obs-ffmpeg.so info: linux-v4l2.so info: linux-pulseaudio.so info: linux-jack.so info: linux-decklink.so info: linux-capture.so info: image-source.so info: frontend-tools.so info: --------------------------------- info: ==== Startup complete =============================================== info: All scene data cleared info: ------------------------------------------------ info: pulse-input: Server name: 'pulseaudio 10.0' info: pulse-input: Audio format: s16le, 44100 Hz, 2 channels info: pulse-input: Started recording from 'alsa_output.pci-0000_00_1b.0.analog-stereo.monitor' info: pulse-input: Server name: 'pulseaudio 10.0' info: pulse-input: Audio format: s16le, 44100 Hz, 2 channels info: pulse-input: Started recording from 'alsa_input.pci-0000_00_1b.0.analog-stereo' info: Switched to scene 'Scene' info: ------------------------------------------------ info: Loaded scenes: info: - scene 'Scene': info: - source: 'Window Capture (Xcomposite)' (xcomposite_input) info: - source: 'Text (FreeType 2)' (text_ft2_source) info: - source: 'chat log' (text_ft2_source) info: ------------------------------------------------ 0x1e7e410 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window. 0x1e90ff0 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window. 0xfea9a0 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window. 0xfc7490 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window. 0x1e7d3f0 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window. 0x1f877e0 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window. 0x1ea2270 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window. 0x1e90c50 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window. 0x1e8f980 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window. 0x1e79d20 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window. 0x1e78e90 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window. 0xfc7490 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window. 0x1e90ff0 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window. 0x1e7d3f0 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window. 0x1f877e0 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window. 0x1ea2270 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window. 0x1e90c50 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window. 0x1e8f980 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window. 0x1e79d20 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window. 0x1e78e90 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window. 0x1ea2270 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window. 0x1e90c50 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window. 0x1e8f980 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window. 0x1e79d20 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window. 0x1e78e90 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window. 0x1e90ff0 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window. 0xfc7490 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window. 0x1f877e0 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window. 0x1ea2270 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window. 0x1e90c50 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window. 0x1e8f980 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window. 0x1e79d20 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window. 0x1e78e90 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window. 0x1e90ff0 void QWindowPrivate::setTopLevelScreen(QScreen, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window. 0xfc7490 void QWindowPrivate::setTopLevelScreen(QScreen*, bool) ( QScreen(0xf87c60) ): Attempt to set a screen on a child window. info: adding 23 milliseconds of audio buffering, total audio buffering is now 23 milliseconds info: adding 23 milliseconds of audio buffering, total audio buffering is now 46 milliseconds error: obs-linuxbrowser: shm_open error Segmentation fault (core dumped)