vaapisink: Segmentation faults
Describe your issue
I am trying to get GStreamer to work on videos so that I can use Cawbird more effectively. See https://github.com/IBBoard/cawbird/issues/437 for some background. gst-play-1.0
does not seem to work on some video files.
Expected Behavior
A successfully-playing video.
Observed Behavior
Sometimes the video does not play and instead an image of an arbitrary part of my desktop is displayed. Sometimes I simply get SEGV.
> gst-play-1.0 https://video.twimg.com/tweet_video/FNj3y7jXMAAcl8k.mp4
Press 'k' to see a list of keyboard shortcuts.
Now playing https://video.twimg.com/tweet_video/FNj3y7jXMAAcl8k.mp4
Prerolling...
Redistribute latency...
fish: “gst-play-1.0 https://video.twim…” terminated by signal SIGSEGV (Address boundary error)
I tried to get more debugging information out of it using GST_DEBUG
:
Using GST_DEBUG=3
> env GST_DEBUG=3 gst-play-1.0 https://video.twimg.com/tweet_video/FNj3y7jXMAAcl8k.mp4
Press 'k' to see a list of keyboard shortcuts.
Now playing https://video.twimg.com/tweet_video/FNj3y7jXMAAcl8k.mp4
Prerolling...
0:00:00.199808765 481270 0x7fde5400b6a0 WARN qtdemux qtdemux_types.c:244:qtdemux_type_get: unknown QuickTime node type pasp
0:00:00.199857627 481270 0x7fde5400b6a0 WARN qtdemux qtdemux.c:3066:qtdemux_parse_trex: failed to find fragment defaults for stream 1
0:00:00.316133183 481270 0x7fde5400b6a0 WARN vaapifilter gstvaapifilter.c:1373:gst_vaapi_filter_set_property: VA display doesn't support VPP
Redistribute latency...
0:00:00.323937431 481270 0x7fde401ec240 WARN vaapifilter gstvaapifilter.c:1373:gst_vaapi_filter_set_property: VA display doesn't support VPP
0:00:00.324832438 481270 0x7fde401ec240 WARN vaapifilter gstvaapifilter.c:1373:gst_vaapi_filter_set_property: VA display doesn't support VPP
0:00:00.331214728 481270 0x7fde401ec240 WARN vaapifilter gstvaapifilter.c:1373:gst_vaapi_filter_set_property: VA display doesn't support VPP
0:00:00.333981876 481270 0x7fddf4070460 ERROR vaapivideomemory gstvaapivideomemory.c:254:map_vaapi_memory: failed to make image current
0:00:00.333996072 481270 0x7fddf4070460 ERROR default video-frame.c:168:gst_video_frame_map_id: failed to map video frame plane 0
0:00:00.334004672 481270 0x7fddf4070460 WARN xvimagesink xvimagesink.c:1014:gst_xv_image_sink_show_frame: could not map image
0:00:00.334203537 481270 0x7fddf4070460 ERROR vaapivideomemory gstvaapivideomemory.c:254:map_vaapi_memory: failed to make image current
0:00:00.334210370 481270 0x7fddf4070460 ERROR default video-frame.c:168:gst_video_frame_map_id: failed to map video frame plane 0
0:00:00.334215822 481270 0x7fddf4070460 WARN xvimagesink xvimagesink.c:1014:gst_xv_image_sink_show_frame: could not map image
fish: “env GST_DEBUG=3 gst-play-1.0 ht…” terminated by signal SIGSEGV (Address boundary error)
Setup
- Operating System: Pop!_OS 21.10
- Device: System76 Lemur Pro
- GStreamer Version: 1.18.5 (see below)
-
Command line:
gst-play-1.0 https://video.twimg.com/tweet_video/FNj3y7jXMAAcl8k.mp4
Steps to reproduce the bug
The command with gst-play-1.0
is enough.
How reproducible is the bug?
I can never successfully view the video, but it doesn't always seg fault.
Related non-duplicate issues
I saw someone else had reported this to the Pop!_OS maintainers at https://github.com/pop-os/pop/issues/1473 but I'm not exactly sure my issue is the same as theirs. Also of course https://github.com/IBBoard/cawbird/issues/437 but that was just diagnosing it as something related to GStreamer.
Additional Information
dpkg -l '*gst*'
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-======================================-===============-============-=========================================================================
ii gir1.2-gst-plugins-bad-1.0:amd64 1.18.5-1ubuntu1 amd64 GObject introspection data for the GStreamer libraries from the "bad" set
ii gir1.2-gst-plugins-base-1.0:amd64 1.18.5-1 amd64 GObject introspection data for the GStreamer Plugins Base library
ii gir1.2-gstreamer-1.0:amd64 1.18.5-1 amd64 GObject introspection data for the GStreamer library
ii gstreamer1.0-alsa:amd64 1.18.5-1 amd64 GStreamer plugin for ALSA
un gstreamer1.0-audiosink (no description available)
un gstreamer1.0-audiosource (no description available)
ii gstreamer1.0-clutter-3.0:amd64 3.0.27-2build1 amd64 Clutter PLugin for GStreamer 1.0
un gstreamer1.0-doc (no description available)
ii gstreamer1.0-gl:amd64 1.18.5-1 amd64 GStreamer plugins for GL
ii gstreamer1.0-gtk3:amd64 1.18.5-1ubuntu2 amd64 GStreamer plugin for GTK+3
ii gstreamer1.0-libav:amd64 1.18.5-1 amd64 ffmpeg plugin for GStreamer
ii gstreamer1.0-pipewire:amd64 0.3.32-1 amd64 GStreamer 1.0 plugin for the PipeWire multimedia server
ii gstreamer1.0-plugins-bad:amd64 1.18.5-1ubuntu1 amd64 GStreamer plugins from the "bad" set
ii gstreamer1.0-plugins-bad-apps 1.18.5-1ubuntu1 amd64 GStreamer helper programs from the "bad" set
un gstreamer1.0-plugins-bad-faad (no description available)
un gstreamer1.0-plugins-bad-videoparsers (no description available)
ii gstreamer1.0-plugins-base:amd64 1.18.5-1 amd64 GStreamer plugins from the "base" set
ii gstreamer1.0-plugins-base-apps 1.18.5-1 amd64 GStreamer helper programs from the "base" set
ii gstreamer1.0-plugins-good:amd64 1.18.5-1ubuntu2 amd64 GStreamer plugins from the "good" set
ii gstreamer1.0-plugins-ugly:amd64 1.18.5-1 amd64 GStreamer plugins from the "ugly" set
un gstreamer1.0-plugins-ugly-amr (no description available)
ii gstreamer1.0-pulseaudio:amd64 1.18.5-1ubuntu2 amd64 GStreamer plugin for PulseAudio (transitional package)
ii gstreamer1.0-tools 1.18.5-1 amd64 Tools for use with GStreamer
ii gstreamer1.0-vaapi:amd64 1.18.5-1 amd64 VA-API plugins for GStreamer
un gstreamer1.0-vaapi-doc (no description available)
un gstreamer1.0-videosink (no description available)
un gstreamer1.0-videosource (no description available)
un gstreamer1.0-visualization (no description available)
ii gstreamer1.0-x:amd64 1.18.5-1 amd64 GStreamer plugins for X11 and Pango
ii libclutter-gst-3.0-0:amd64 3.0.27-2build1 amd64 Open GL based interactive canvas library GStreamer elements
ii libgstreamer-gl1.0-0:amd64 1.18.5-1 amd64 GStreamer GL libraries
ii libgstreamer-opencv1.0-0:amd64 1.18.5-1ubuntu1 amd64 GStreamer OpenCV libraries
ii libgstreamer-plugins-bad1.0-0:amd64 1.18.5-1ubuntu1 amd64 GStreamer libraries from the "bad" set
ii libgstreamer-plugins-bad1.0-dev:amd64 1.18.5-1ubuntu1 amd64 GStreamer development files for libraries from the "bad" set
ii libgstreamer-plugins-base1.0-0:amd64 1.18.5-1 amd64 GStreamer libraries from the "base" set
ii libgstreamer-plugins-base1.0-dev:amd64 1.18.5-1 amd64 GStreamer development files for libraries from the "base" set
ii libgstreamer-plugins-good1.0-0:amd64 1.18.5-1ubuntu2 amd64 GStreamer development files for libraries from the "good" set
ii libgstreamer-plugins-good1.0-dev 1.18.5-1ubuntu2 amd64 GStreamer development files for libraries from the "good" set
ii libgstreamer1.0-0:amd64 1.18.5-1 amd64 Core GStreamer libraries and elements
ii libgstreamer1.0-dev:amd64 1.18.5-1 amd64 GStreamer core development files
un libgtk-4-media-gstreamer (no description available)
un libreoffice-avmedia-backend-gstreamer (no description available)
un totem-gstreamer (no description available)
Installed flatpaks
Name Application ID Version Branch Installation
Discord com.discordapp.Discord 0.0.17 stable user
Slack com.slack.Slack 4.23.0 stable user
Steam com.valvesoftware.Steam 1.0.0.74 stable user
Freedesktop Platfo… org.freedesktop.Platform 21.08.11 21.08 user
i386 …sktop.Platform.Compat.i386 21.08 user
Mesa …esktop.Platform.GL.default 21.3.6 21.08 user
default …ktop.Platform.GL32.default 21.08 user
Intel …sktop.Platform.VAAPI.Intel 21.08 user
i386 ….Platform.VAAPI.Intel.i386 21.08 user
openh264 …edesktop.Platform.openh264 2.1.0 2.0 user
Freedesktop SDK org.freedesktop.Sdk 21.08.11 21.08 user
GNOME Application … org.gnome.Platform 41 user
Rhythmbox org.gnome.Rhythmbox3 3.4.4 stable user
Pop Gtk theme org.gtk.Gtk3theme.Pop-dark 3.22 user
Zoom us.zoom.Zoom 5.9.6.2225 stable user