[Bug]: Video doesn't play in the Snap package
Describe the bug
I tried to play a video posted by someone in the app, and it didn't play. There was only a cross icon shown up
Steps To Reproduce
- Select any video
- Play it
- See the error
Logs and/or Screenshots
MESA-INTEL: warning: ../src/intel/vulkan/anv_formats.c:763: FINISHME: support YUV colorspace with DRM format modifiers
MESA-INTEL: warning: ../src/intel/vulkan/anv_formats.c:794: FINISHME: support more multi-planar formats with DRM modifiers
Instance Backend
Mastodon
Operating System
Ubuntu
Package
Snap
Troubleshooting information
os: Ubuntu Core 24
prefix: /usr
flatpak: false
version: 0.8.4 (production)
gtk: 4.14.4 (4.14.4)
libadwaita: 1.5.2 (1.5.2)
libsoup: 3.4.4 (3.4.4)
libgtksourceview: 5.12.1 (5.12.1)
Additional Context
No response
The log looks like a gpu driver issue. Could you hover over the X icon and tell me the tooltip log?
Error from element /GstPlayBin3:playbin3/
GstURIDecodeBin3:uridecodebin3/GstDecodebin3:decodebin3-0:
Your GStreamer installation is missing a plug-in.
Your GStreamer installation is missing a plug-in.
../gst/playback/gstdecodebin3.c(2476):
check_slot_reconfiguration (): /GstPlayBin3:playbin3/
GstURIDecodeBin3:uridecodebin3/GstDecodebin3:decodebin3-0:
No suitable plugins found
Okay, this is interesting. I always face these and takes me ages to solve.
I can't get snapcraft to work right now, so feel free to try yourself by adding the followiing to the snap config
- libgstreamer1.0-dev
- libgstreamer-plugins-base1.0-dev
- libgstreamer-plugins-good1.0-dev
Thanks for the report! The last snap update includes gstreamer & co.
I'm still getting this issue in latest version :(
I feel you may need to add gstreamer1.0-plugins-bad to the stage packages (and make gstreamer to load them)?
❯ snap run tuba
/usr/share/libdrm/amdgpu.ids: No such file or directory
** (dev.geopjr.Tuba:17161): WARNING **: 16:35:05.744: Could not open /sys/class/dmi/id/chassis_type: Apertura del file «/sys/class/dmi/id/chassis_type» non riuscita: Permission denied
** (dev.geopjr.Tuba:17161): WARNING **: 16:35:05.744: Could not open /sys/firmware/acpi/pm_profile: Apertura del file «/sys/firmware/acpi/pm_profile» non riuscita: Permission denied
/usr/share/libdrm/amdgpu.ids: No such file or directory
** (process:19296): WARNING **: 16:35:06.134: Could not open /sys/class/dmi/id/chassis_type: Apertura del file «/sys/class/dmi/id/chassis_type» non riuscita: Permission denied
** (process:19296): WARNING **: 16:35:06.134: Could not open /sys/firmware/acpi/pm_profile: Apertura del file «/sys/firmware/acpi/pm_profile» non riuscita: Permission denied
/usr/share/libdrm/amdgpu.ids: No such file or directory
** (process:19618): WARNING **: 16:35:06.648: Could not open /sys/class/dmi/id/chassis_type: Apertura del file «/sys/class/dmi/id/chassis_type» non riuscita: Permission denied
** (process:19618): WARNING **: 16:35:06.648: Could not open /sys/firmware/acpi/pm_profile: Apertura del file «/sys/firmware/acpi/pm_profile» non riuscita: Permission denied
** (WebKitWebProcess:19618): WARNING **: 16:35:07.597: The GStreamer FDK AAC plugin is missing, AAC playback is unlikely to work.
WebKit wasn't able to find a WebVTT encoder. Subtitles handling will be degraded unless gst-plugins-bad is installed.
GStreamer element fakevideosink not found. Please install it
WebKit wasn't able to find a WebVTT encoder. Subtitles handling will be degraded unless gst-plugins-bad is installed.
WebKit wasn't able to find a WebVTT encoder. Subtitles handling will be degraded unless gst-plugins-bad is installed.
WebKit wasn't able to find a WebVTT encoder. Subtitles handling will be degraded unless gst-plugins-bad is installed.
** (process:19919): WARNING **: 16:35:09.625: Could not open /sys/class/dmi/id/chassis_type: Apertura del file «/sys/class/dmi/id/chassis_type» non riuscita: Permission denied
** (process:19919): WARNING **: 16:35:09.625: Could not open /sys/firmware/acpi/pm_profile: Apertura del file «/sys/firmware/acpi/pm_profile» non riuscita: Permission denied
Honestly, my hands are tied. I can take another look but the snap is a black box to me at this point. It's here: https://github.com/GeopJr/tuba-snap/blob/main/snapcraft.yaml
Note that this issue is from a year ago, and since then we switched to libclapper by default from GtkVideo. I'm positive that at the time of this issue this was fixed.
(fwiw, webkit doesn't work either, even though I'm positive that I followed the way other snaps added do it)
webkit seems to work properly to me (if you mean the embedded browser), but I did not tried videos there
I can take another look but the snap is a black box to me at this point.
Technically it's just about installing the gstreamer plugins packages (bad and even ugly if you want) and set GST_PLUGIN_PATH=$SNAP/path-of-those-plugins:$GST_PLUGIN_PATH
the snap is a black box to me at this point
Unfortunately, after adding the stage-packages, setting the env vars and verifying the plugins are there using --shell, I reached another roadblock 🤷
/snap/tuba/x1/usr/bin/dev.geopjr.Tuba: symbol lookup error: /snap/tuba/x1/gnome-platform/usr/lib/x86_64-linux-gnu/libharfbuzz-subset.so.0: undefined symbol: hb_free
I'll continue tomorrow and maybe ask on the forum, but sadly it's still a black box for me.
Probably you can filter out those dependencies that it brings in (use prime: [-usr/lib/*/libharfbuzz*]) since those should be provided by the gnome extension anyway