seg fault on 64 bit ARM

Rand Graham rand.graham at lge.com
Thu Jan 19 17:38:51 UTC 2017


Hello,

I am trying to run a gst-launch pipeline on 64 bit ARM architecture. The only warning I see is from libde265dec. "dec.c:860:gst_libde265_dec_handle_frame:<libde265dec0> warning: Cannot run decoder multi-threaded because stream does not support WPP (code=1000)"

Can you tell what the problem is from the following debug output?

The pipeline:

gst-launch-1.0 -v -e  --gst-debug-level=3  qtmux name=m ! filesink location=uhd1280x720swenc.mp4 filesrc location=uhd.trp ! tsdemux name=dem dem. ! queue ! h265parse ! libde265dec ! videoscale ! 'video/x-raw, width=(int)1280, height=(int)720, format=(string)I420' ! x264enc dct8x8=true ! m. dem. ! queue ! avdec_aac ! audioconvert ! voaacenc ! m. 


The output:

Setting pipeline to PAUSED ...
0:00:00.138648385 22424       0x734330 WARN                 basesrc gstbasesrc.c:3489:gst_base_src_start_complete:<filesrc0> pad not activated yet
Pipeline is PREROLLING ...
0:00:00.142918281 22424       0x728590 WARN        mpegtspacketizer mpegtspacketizer.c:2297:mpegts_packetizer_pts_to_ts: No groups, can't calculate timestamp
0:00:00.142978646 22424       0x728590 WARN        mpegtspacketizer mpegtspacketizer.c:2297:mpegts_packetizer_pts_to_ts: No groups, can't calculate timestamp
0:00:00.143011927 22424       0x728590 WARN        mpegtspacketizer mpegtspacketizer.c:2297:mpegts_packetizer_pts_to_ts: No groups, can't calculate timestamp
0:00:00.143032396 22424       0x728590 WARN        mpegtspacketizer mpegtspacketizer.c:2297:mpegts_packetizer_pts_to_ts: No groups, can't calculate timestamp
0:00:00.143054427 22424       0x728590 WARN        mpegtspacketizer mpegtspacketizer.c:2297:mpegts_packetizer_pts_to_ts: No groups, can't calculate timestamp
0:00:00.143091927 22424       0x728590 WARN        mpegtspacketizer mpegtspacketizer.c:2297:mpegts_packetizer_pts_to_ts: No groups, can't calculate timestamp
0:00:00.143124167 22424       0x728590 WARN        mpegtspacketizer mpegtspacketizer.c:2297:mpegts_packetizer_pts_to_ts: No groups, can't calculate timestamp
0:00:00.143420938 22424       0x728940 FIXME           videodecoder gstvideodecoder.c:1057:gst_video_decoder_drain_out:<libde265dec0> Sub-class should implement drain()
/GstPipeline:pipeline0/GstQueue:queue0.GstPad:src: caps = "video/x-h265\,\ stream-format\=\(string\)byte-stream\,\ alignment\=\(string\)nal"
/GstPipeline:pipeline0/GstH265Parse:h265parse0.GstPad:sink: caps = "video/x-h265\,\ stream-format\=\(string\)byte-stream\,\ alignment\=\(string\)nal"
/GstPipeline:pipeline0/GstQueue:queue0.GstPad:sink: caps = "video/x-h265\,\ stream-format\=\(string\)byte-stream\,\ alignment\=\(string\)nal"
/GstPipeline:pipeline0/GstQueue:queue1.GstPad:src: caps = "audio/mpeg\,\ mpegversion\=\(int\)2\,\ stream-format\=\(string\)adts"
/GstPipeline:pipeline0/avdec_aac:avdec_aac0.GstPad:sink: caps = "audio/mpeg\,\ mpegversion\=\(int\)2\,\ stream-format\=\(string\)adts"
/GstPipeline:pipeline0/GstQueue:queue1.GstPad:sink: caps = "audio/mpeg\,\ mpegversion\=\(int\)2\,\ stream-format\=\(string\)adts"
/GstPipeline:pipeline0/GstH265Parse:h265parse0.GstPad:src: caps = "video/x-h265\,\ stream-format\=\(string\)byte-stream\,\ alignment\=\(string\)nal\,\ parsed\=\(boolean\)true"
/GstPipeline:pipeline0/GstLibde265Dec:libde265dec0.GstPad:sink: caps = "video/x-h265\,\ stream-format\=\(string\)byte-stream\,\ alignment\=\(string\)nal\,\ parsed\=\(boolean\)true"
0:00:00.150471510 22424       0x728940 FIXME              h265parse gsth265parse.c:1639:gst_h265_parse_parse_frame:<h265parse0> Implement timestamp/duration interpolation based on SEI message
/GstPipeline:pipeline0/GstH265Parse:h265parse0.GstPad:src: caps = "video/x-h265\,\ stream-format\=\(string\)byte-stream\,\ alignment\=\(string\)nal\,\ width\=\(int\)3840\,\ height\=\(int\)2160\,\ framerate\=\(fraction\)30000/1001\,\ parsed\=\(boolean\)true\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ profile\=\(string\)main-10\,\ tier\=\(string\)main\,\ level\=\(string\)5.1"
/GstPipeline:pipeline0/GstLibde265Dec:libde265dec0.GstPad:sink: caps = "video/x-h265\,\ stream-format\=\(string\)byte-stream\,\ alignment\=\(string\)nal\,\ width\=\(int\)3840\,\ height\=\(int\)2160\,\ framerate\=\(fraction\)30000/1001\,\ parsed\=\(boolean\)true\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ profile\=\(string\)main-10\,\ tier\=\(string\)main\,\ level\=\(string\)5.1"
0:00:00.150908698 22424       0x728940 FIXME              h265parse gsth265parse.c:1639:gst_h265_parse_parse_frame:<h265parse0> Implement timestamp/duration interpolation based on SEI message
0:00:00.151043125 22424       0x728940 FIXME              h265parse gsth265parse.c:1639:gst_h265_parse_parse_frame:<h265parse0> Implement timestamp/duration interpolation based on SEI message
0:00:00.151111146 22424       0x728940 FIXME              h265parse gsth265parse.c:1639:gst_h265_parse_parse_frame:<h265parse0> Implement timestamp/duration interpolation based on SEI message
/GstPipeline:pipeline0/avdec_aac:avdec_aac0.GstPad:src: caps = "audio/x-raw\,\ format\=\(string\)F32LE\,\ layout\=\(string\)interleaved\,\ rate\=\(int\)44100\,\ channels\=\(int\)2\,\ channel-mask\=\(bitmask\)0x0000000000000003"
/GstPipeline:pipeline0/GstAudioConvert:audioconvert0.GstPad:src: caps = "audio/x-raw\,\ rate\=\(int\)44100\,\ channels\=\(int\)2\,\ format\=\(string\)S16LE\,\ layout\=\(string\)interleaved\,\ channel-mask\=\(bitmask\)0x0000000000000003"
/GstPipeline:pipeline0/GstVoAacEnc:voaacenc0.GstPad:sink: caps = "audio/x-raw\,\ rate\=\(int\)44100\,\ channels\=\(int\)2\,\ format\=\(string\)S16LE\,\ layout\=\(string\)interleaved\,\ channel-mask\=\(bitmask\)0x0000000000000003"
/GstPipeline:pipeline0/GstAudioConvert:audioconvert0.GstPad:sink: caps = "audio/x-raw\,\ format\=\(string\)F32LE\,\ layout\=\(string\)interleaved\,\ rate\=\(int\)44100\,\ channels\=\(int\)2\,\ channel-mask\=\(bitmask\)0x0000000000000003"
/GstPipeline:pipeline0/GstVoAacEnc:voaacenc0.GstPad:src: caps = "audio/mpeg\,\ mpegversion\=\(int\)4\,\ channels\=\(int\)2\,\ rate\=\(int\)44100\,\ level\=\(string\)2\,\ base-profile\=\(string\)lc\,\ profile\=\(string\)lc\,\ stream-format\=\(string\)raw\,\ codec_data\=\(buffer\)1210"
/GstPipeline:pipeline0/GstQTMux:m.GstPad:audio_0: caps = "audio/mpeg\,\ mpegversion\=\(int\)4\,\ channels\=\(int\)2\,\ rate\=\(int\)44100\,\ level\=\(string\)2\,\ base-profile\=\(string\)lc\,\ profile\=\(string\)lc\,\ stream-format\=\(string\)raw\,\ codec_data\=\(buffer\)1210"
0:00:00.169560469 22424       0x728940 FIXME              h265parse gsth265parse.c:1639:gst_h265_parse_parse_frame:<h265parse0> Implement timestamp/duration interpolation based on SEI message
0:00:00.169682083 22424       0x728940 FIXME              h265parse gsth265parse.c:1639:gst_h265_parse_parse_frame:<h265parse0> Implement timestamp/duration interpolation based on SEI message
0:00:00.275240729 22424       0x728940 WARN                 default libde265-dec.c:860:gst_libde265_dec_handle_frame:<libde265dec0> warning: Cannot run decoder multi-threaded because stream does not support WPP (code=1000)
WARNING: from element /GstPipeline:pipeline0/GstLibde265Dec:libde265dec0: Cannot run decoder multi-threaded because stream does not support WPP (code=1000)
Additional debug info:
libde265-dec.c(860): gst_libde265_dec_handle_frame (): /GstPipeline:pipeline0/GstLibde265Dec:libde265dec0
0:00:00.275635260 22424       0x728940 FIXME              h265parse gsth265parse.c:1639:gst_h265_parse_parse_frame:<h265parse0> Implement timestamp/duration interpolation based on SEI message
0:00:00.275706406 22424       0x728940 FIXME              h265parse gsth265parse.c:1639:gst_h265_parse_parse_frame:<h265parse0> Implement timestamp/duration interpolation based on SEI message
/GstPipeline:pipeline0/GstLibde265Dec:libde265dec0.GstPad:src: caps = "video/x-raw\,\ format\=\(string\)I420\,\ width\=\(int\)3840\,\ height\=\(int\)2160\,\ interlace-mode\=\(string\)progressive\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ chroma-site\=\(string\)mpeg2\,\ colorimetry\=\(string\)bt2020\,\ framerate\=\(fraction\)30000/1001"
/GstPipeline:pipeline0/GstVideoScale:videoscale0.GstPad:src: caps = "video/x-raw\,\ format\=\(string\)I420\,\ width\=\(int\)1280\,\ height\=\(int\)720\,\ interlace-mode\=\(string\)progressive\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ chroma-site\=\(string\)mpeg2\,\ colorimetry\=\(string\)bt2020\,\ framerate\=\(fraction\)30000/1001"
/GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:src: caps = "video/x-raw\,\ format\=\(string\)I420\,\ width\=\(int\)1280\,\ height\=\(int\)720\,\ interlace-mode\=\(string\)progressive\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ chroma-site\=\(string\)mpeg2\,\ colorimetry\=\(string\)bt2020\,\ framerate\=\(fraction\)30000/1001"
Redistribute latency...
/GstPipeline:pipeline0/GstX264Enc:x264enc0.GstPad:sink: caps = "video/x-raw\,\ format\=\(string\)I420\,\ width\=\(int\)1280\,\ height\=\(int\)720\,\ interlace-mode\=\(string\)progressive\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ chroma-site\=\(string\)mpeg2\,\ colorimetry\=\(string\)bt2020\,\ framerate\=\(fraction\)30000/1001"
/GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:sink: caps = "video/x-raw\,\ format\=\(string\)I420\,\ width\=\(int\)1280\,\ height\=\(int\)720\,\ interlace-mode\=\(string\)progressive\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ chroma-site\=\(string\)mpeg2\,\ colorimetry\=\(string\)bt2020\,\ framerate\=\(fraction\)30000/1001"
0:00:00.330464271 22424       0x728940 WARN               videopool gstvideopool.c:216:video_buffer_pool_set_config:<videobufferpool0> no caps in config
/GstPipeline:pipeline0/GstVideoScale:videoscale0.GstPad:sink: caps = "video/x-raw\,\ format\=\(string\)I420\,\ width\=\(int\)3840\,\ height\=\(int\)2160\,\ interlace-mode\=\(string\)progressive\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ chroma-site\=\(string\)mpeg2\,\ colorimetry\=\(string\)bt2020\,\ framerate\=\(fraction\)30000/1001"
Caught SIGSEGV
Spinning.  Please run 'gdb gst-launch-1.0 22424' to continue debugging, Ctrl-C to quit, or Ctrl-\ to dump core.
handling interrupt.
Interrupt: Stopping pipeline ...
ERROR: pipeline doesn't want to preroll.
Setting pipeline to NULL ...
/GstPipeline:pipeline0/GstQTMux:m.GstPad:audio_0: caps = "NULL"
/GstPipeline:pipeline0/GstX264Enc:x264enc0.GstPad:sink: caps = "NULL"
/GstPipeline:pipeline0/GstVoAacEnc:voaacenc0.GstPad:src: caps = "NULL"
/GstPipeline:pipeline0/GstVoAacEnc:voaacenc0.GstPad:sink: caps = "NULL"
/GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:src: caps = "NULL"
/GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:sink: caps = "NULL"
/GstPipeline:pipeline0/GstAudioConvert:audioconvert0.GstPad:src: caps = "NULL"
/GstPipeline:pipeline0/GstAudioConvert:audioconvert0.GstPad:sink: caps = "NULL"
/GstPipeline:pipeline0/GstVideoScale:videoscale0.GstPad:src: caps = "NULL"
/GstPipeline:pipeline0/GstVideoScale:videoscale0.GstPad:sink: caps = "NULL"
/GstPipeline:pipeline0/avdec_aac:avdec_aac0.GstPad:src: caps = "NULL"
/GstPipeline:pipeline0/avdec_aac:avdec_aac0.GstPad:sink: caps = "NULL"
/GstPipeline:pipeline0/GstLibde265Dec:libde265dec0.GstPad:src: caps = "NULL"

--gdb backtrace:
(gdb) backtrace
#0  0x0000007f987b20e0 in __GI___poll (fds=0x424020, nfds=2, timeout=<optimized out>) at ../sysdeps/unix/sysv/linux/generic/poll.c:38
#1  0x0000007f988b23c4 in ?? () from /lib/aarch64-linux-gnu/libglib-2.0.so.0
#2  0x00000000004ceae0 in ?? ()
Backtrace stopped: previous frame inner to this frame (corrupt stack?)


More information about the gstreamer-devel mailing list