gst_video_aggregator_sink_event: assertion failed: (seg.format == GST_FORMAT_TIME)
Describe your issue
Using a shmsrc in combination with a compositor results in a core dump due to an assertion error.
Expected Behavior
The compositor pipeline should start just fine.
Observed Behavior
The compositor pipeline aborts with a core dump due to an assertion error.
Setup
- Operating System: Manjaro Linux 21.2.1 (Qonos)
- Device: Computer
- GStreamer Version: 1.18.5
- Command line: bash
Steps to reproduce the bug
- open terminal
- type
gst-launch-1.0 -v videotestsrc ! shmsink socket-path=/tmp/bla
- open another terminal
- type
gst-launch-1.0 -v compositor name=compositor ! autovideosink videotestsrc ! compositor. shmsrc socket-path=/tmp/bla ! 'video/x-raw, format=(string)AYUV64, width=(int)320, height=(int)240, framerate=(fraction)30/1, multiview-mode=(string)mono, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive' ! videoconvert ! compositor.
How reproducible is the bug?
Always
The same assertion error also happens on Ubuntu Linux 20.04 which runs GStreamer version 1.16.2.
Additional Information
Full log output from the two terminal commands:
$ gst-launch-1.0 -v videotestsrc ! shmsink socket-path=/tmp/bla
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
/GstPipeline:pipeline0/GstVideoTestSrc:videotestsrc0.GstPad:src: caps = video/x-raw, format=(string)AYUV64, width=(int)320, height=(int)240, framerate=(fraction)30/1, multiview-mode=(string)mono, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive
/GstPipeline:pipeline0/GstShmSink:shmsink0.GstPad:sink: caps = video/x-raw, format=(string)AYUV64, width=(int)320, height=(int)240, framerate=(fraction)30/1, multiview-mode=(string)mono, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
0:00:00.0 / 99:99:99.
$ gst-launch-1.0 -v compositor name=compositor ! autovideosink videotestsrc ! compositor. shmsrc socket-path=/tmp/bla ! 'video/x-raw, format=(string)AYUV64, width=(int)320, height=(int)240, framerate=(fraction)30/1, multiview-mode=(string)mono, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive' ! videoconvert ! compositor.
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
/GstPipeline:pipeline0/GstVideoTestSrc:videotestsrc0.GstPad:src: caps = video/x-raw, width=(int)320, height=(int)240, framerate=(fraction)30/1, format=(string)Y412_LE, multiview-mode=(string)mono, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive
/GstPipeline:pipeline0/GstCompositor:compositor.GstCompositorPad:sink_0: caps = video/x-raw, width=(int)320, height=(int)240, framerate=(fraction)30/1, format=(string)Y412_LE, multiview-mode=(string)mono, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive
/GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:src: caps = video/x-raw, format=(string)AYUV64, width=(int)320, height=(int)240, framerate=(fraction)30/1, multiview-mode=(string)mono, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive
/GstPipeline:pipeline0/GstVideoConvert:videoconvert0.GstPad:src: caps = video/x-raw, width=(int)320, height=(int)240, framerate=(fraction)30/1, interlace-mode=(string)progressive, multiview-mode=(string)mono, pixel-aspect-ratio=(fraction)1/1, format=(string)Y412_LE
/GstPipeline:pipeline0/GstCompositor:compositor.GstCompositorPad:sink_1: caps = video/x-raw, width=(int)320, height=(int)240, framerate=(fraction)30/1, interlace-mode=(string)progressive, multiview-mode=(string)mono, pixel-aspect-ratio=(fraction)1/1, format=(string)Y412_LE
**
ERROR:../gst-plugins-base/gst-libs/gst/video/gstvideoaggregator.c:2322:gst_video_aggregator_sink_event: assertion failed: (seg.format == GST_FORMAT_TIME)
/GstPipeline:pipeline0/GstVideoConvert:videoconvert0.GstPad:sink: caps = video/x-raw, format=(string)AYUV64, width=(int)320, height=(int)240, framerate=(fraction)30/1, multiview-mode=(string)mono, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive
Bail out! ERROR:../gst-plugins-base/gst-libs/gst/video/gstvideoaggregator.c:2322:gst_video_aggregator_sink_event: assertion failed: (seg.format == GST_FORMAT_TIME)
Aborted (core dumped)