gst-discoverer-1.0 crashes with corrupted double-linked list on mp4 file
Describe your issue
$ gst-discoverer-1.0 file.mp4
Analyzing file:///home/...
corrupted double-linked list
Aborted (core dumped)
The backtrace, I used debuginfod for the files here, Arch doesn't have a debug package for gst-plugins-bad-libs which ships the gst-discoverer-1.0 binary.
Thread 26 "queue0:src" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffa3fff640 (LWP 15056)]
0x00007fffee88efe2 in ?? () from /usr/lib/dri/radeonsi_drv_video.so
#0 0x00007fffee88efe2 in () at /usr/lib/dri/radeonsi_drv_video.so
#1 0x00007ffff5b1327d in vaGetImage () at /usr/lib/libva.so.2
#2 0x00007ffff5bf1124 in () at /usr/lib/gstreamer-1.0/libgstvaapi.so
#3 0x00007ffff5bf374a in () at /usr/lib/gstreamer-1.0/libgstvaapi.so
#4 0x00007ffff79a1f4c in gst_video_frame_map_id ()
at /usr/lib/libgstvideo-1.0.so.0
#5 0x00007ffff5bddc00 in () at /usr/lib/gstreamer-1.0/libgstvaapi.so
#6 0x00007ffff5bea949 in () at /usr/lib/gstreamer-1.0/libgstvaapi.so
#7 0x00007ffff78dfd71 in () at /usr/lib/libgstbase-1.0.so.0
#8 0x00007ffff78e027c in () at /usr/lib/libgstbase-1.0.so.0
#9 0x00007ffff7e9f1d5 in () at /usr/lib/libgstreamer-1.0.so.0
#10 0x00007ffff7ea289b in () at /usr/lib/libgstreamer-1.0.so.0
#11 0x00007ffff7ea2cde in gst_pad_push () at /usr/lib/libgstreamer-1.0.so.0
#12 0x00007ffff78e0351 in () at /usr/lib/libgstbase-1.0.so.0
#13 0x00007ffff7e9f1d5 in () at /usr/lib/libgstreamer-1.0.so.0
#14 0x00007ffff7ea289b in () at /usr/lib/libgstreamer-1.0.so.0
#15 0x00007ffff7ea2cde in gst_pad_push () at /usr/lib/libgstreamer-1.0.so.0
#16 0x00007ffff70d3412 in () at /usr/lib/gstreamer-1.0/libgstcoreelements.so
#17 0x00007ffff7ecaaf1 in () at /usr/lib/libgstreamer-1.0.so.0
#18 0x00007ffff7cd8de7 in () at /usr/lib/libglib-2.0.so.0
#19 0x00007ffff7cd5da5 in () at /usr/lib/libglib-2.0.so.0
#20 0x00007ffff7a7154d in () at /usr/lib/libc.so.6
#21 0x00007ffff7af6b14 in clone () at /usr/lib/libc.so.6
Expected Behavior
To analyze the flie
Observed Behavior
Crash
Setup
- Operating System: Arch Linux
- Device: Computer
- GStreamer Version: 1.20.2
- Command line:
Steps to reproduce the bug
- Open terminal
gst-discoverer-1.0 file.mp4
How reproducible is the bug?
Always
Screenshots if relevant
None
Solutions you have tried
None
Related non-duplicate issues
None
Additional Information
This is the file information from ffprobe
:
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/path/file.mp4':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
encoder : Lavf58.9.100
Duration: 02:10:07.35, start: 0.000000, bitrate: 1191 kb/s
Stream #0:0[0x1](und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(progressive), 1280x682 [SAR 1023:1024 DAR 15:8], 1050 kb/s, 23.98 fps, 23.98 tbr, 13978 tbn (default)
Metadata:
handler_name : VideoHandler
vendor_id : [0][0][0][0]
Stream #0:1[0x2](und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 134 kb/s (default)
Metadata:
handler_name : SoundHandler
vendor_id : [0][0][0][0]
st-inspect-1.0 vaapi
Plugin Details:
Name vaapi
Description VA-API based elements
Filename /usr/lib/gstreamer-1.0/libgstvaapi.so
Version 1.20.2
License LGPL
Source module gstreamer-vaapi
Source release date 2022-05-02
Binary package gstreamer-vaapi
Origin URL Unknown package origin
vaapidecodebin: VA-API Decode Bin
vaapih264dec: VA-API H264 decoder
vaapih264enc: VA-API H264 encoder
vaapih265dec: VA-API H265 decoder
vaapijpegdec: VA-API JPEG decoder
vaapimpeg2dec: VA-API MPEG2 decoder
vaapipostproc: VA-API video postprocessing
vaapisink: VA-API sink
vaapivc1dec: VA-API VC1 decoder
9 features:
+-- 9 elements
vainfo
vainfo: VA-API version: 1.14 (libva 2.14.0)
vainfo: Driver version: Mesa Gallium driver 22.0.3 for AMD STONEY (LLVM 13.0.1, DRM 3.44, 5.17.7-arch1-1)
vainfo: Supported profile and entrypoints
VAProfileMPEG2Simple : VAEntrypointVLD
VAProfileMPEG2Main : VAEntrypointVLD
VAProfileVC1Simple : VAEntrypointVLD
VAProfileVC1Main : VAEntrypointVLD
VAProfileVC1Advanced : VAEntrypointVLD
VAProfileH264ConstrainedBaseline: VAEntrypointVLD
VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice
VAProfileH264Main : VAEntrypointVLD
VAProfileH264Main : VAEntrypointEncSlice
VAProfileH264High : VAEntrypointVLD
VAProfileH264High : VAEntrypointEncSlice
VAProfileHEVCMain : VAEntrypointVLD
VAProfileHEVCMain10 : VAEntrypointVLD
VAProfileJPEGBaseline : VAEntrypointVLD
VAProfileNone : VAEntrypointVideoProc
I can't provide the file as it is quite large, if needed I can extract a few seconds from it. Please ask if anything else is required.