GStreamer-CRITICAL **: gst_segment_to_running_time: assertion `segment->format == format' failed

Tim-Philipp Müller t.i.m at zen.co.uk
Mon Sep 23 15:34:28 PDT 2013


On Mon, 2013-09-23 at 15:44 +0200, Peter Maersk-Moller wrote:

> I have a pipeline that reports:
> 
>   GStreamer-CRITICAL **:  gst_segment_to_running_time: assertion
> `segment->format == format' failed
> 
> 
> I tried to search mailing list and the web, but found no obvious ideas
> to what it means. What does it mean? And how does one goes around
> mitigating this? It should be said that the pipeline plays. The
> version used is 1.1.90
> 
> 
> 
> The pipeline is shown below. I notice that the CRITICAL message is no
> longer present, if I remove the pipeline elements AFTER the 'filesink'
> element. So quite likely something between decodebin and shmsink
> provokes the critical message, but I'm not really sure what to look
> for.
> 
> CAPS='application/x-rtp, media=(string)video, clock-rate=(int)90000,
> encoding-name=(string)H264, sprop-parameter-sets=(string)"Z0JAKLtAKALb
> +AokAAADAAQAAAMAwYEAALcbAAtx73vheEQjUA\=\=\,aM44gA\=\=",
> payload=(int)96'
> MIXERFORMAT='    video/x-raw, format=(string)BGRA,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> width=(int)1280, height=(int)720'
> 
> /usr/local/bin/gst-launch-1.0 -v \
>     fdsrc fd=0 !\
>     $CAPS !\
>     rtph264depay !\
>     h264parse !\
>     tee name=t1 !\
>     queue !\
>     rtph264pay !\
>     udpsink host=192.168.1.1 port=19044 t1. !\
>     queue !\
>     mpegtsmux !\
>     tsparse !\
>     filesink location=somefile.ts t1. !\
>     queue !\
>     decodebin !\
>     videoscale !\
>     videoconvert !\
> 
>     $MIXERFORMAT !\
>     shmsink socket-path=/tmp/feed3-control-pipe shm-size=22118400
> wait-for-connection=0 sync=false
> 
> 
> A producing pipeline could be something similar to
> 
> 
> gst-launch -q videotestsrc is-live=true do-timestamp=true !\
> 
>     $MIXERFORMAT !\
> 
>     x264enc !\
> 
>     h264parse !\
> 
>     rtph264pay !\
> 
>     fdsink fd=3 sync=true 3>&1 1>&2

It complains because fdsrc does not send a segment event in TIME format.

What kind of socket is fd=3 ? Sending rtp packets over a stream
connection won't work usually, because that won't maintain the
packetisation.

Cheers
 -Tim




More information about the gstreamer-devel mailing list