GNOME Bugzilla – Bug 582010
audiotestsrc is-live=1 ! pulsesink unreliable
Last modified: 2009-05-25 14:56:22 UTC
Using pulseaudio 0.9.14 and the gst git from today (May 9 2009). Sometimes I get a bit of stuttering at the start and then silence and sometimes it just fails to start with: (gst-launch-0.10:17594): GStreamer-CRITICAL **: gst_clock_set_calibration: assertion `internal <= gst_clock_get_internal_time (clock)' failed
fails: gst-launch audiotestsrc is-live=true ! pulsesink gst-launch audiotestsrc is-live=true ! alsasink works: gst-launch audiotestsrc is-live=true ! jackaudiosink
Created attachment 134388 [details] debug.log with slave-method=0 I get the discontinuity warning gstbaseaudiosink.c(1449): gst_base_audio_sink_render (): /GstPipeline:pipeline0/GstPulseSink:pulsesink0: Unexpected discontinuity in audio timestamps of more than half a second (0:00:01.011564625), resyncing slave-method=1 makes the audio disappear quickly, but if I keep waiting a bit it comes back with clicks that get less and less often slave-method=2 just plays (of course)
Just notices that audiotestsrc is-live=true is not really fully implemented. audiotestsrc does not subclass audiosrc and it always timstamps buffers itself. I tried to hack it to use the pipeline clock which should fit it imho. But then its getting worse. GST_DEBUG="au*:4" gst-launch-0.10 2>debug.log audiotestsrc is-live=true ! pulsesink slave-method=1 cut -c163- debug.log >timestamps.log gnuplot set term png truecolor set output 'timestamps.png' plot 'timestamps.log' using :1 with lines, '' using :2 with lines; quit (see attached image)
Created attachment 134398 [details] timestamps
Created attachment 134401 [details] [review] set timestamp from clock in is-live mode
Should this bug be moved to gst-plugins-base then?
Jan, I am not yet sure whats the actual issue here.
hmm, sometimes I get: (gst-launch-0.10:12446): GStreamer-CRITICAL **: gst_clock_set_calibration: assertion `internal <= gst_clock_get_internal_time (clock)' failed seems to be a race as I cannot reproduce when running it under gdb.
I see that warning sometimes too when the audiosink clock is slaved. Haven't had time to look into it. I don't think this is a blocker for the current gst-plugins-good release.
I can reproduce the crash using udpsrc+rtpbin too, so its not a bug in audiotestsrc. It really is something in either BaseAudioSink or Pulsesink..
Hey, who mentioned a crash? Unless you're running with G_DEBUG=fatal-warnings?
stream-engine has fatal-criticals...
commit 03037d56f44e05eac1f0f5f1ddcb254d00cd7ab6 Author: Wim Taymans <wim.taymans@collabora.co.uk> Date: Mon May 25 16:54:25 2009 +0200 clock: remove assertion Remove an assertion, this is not really an error in all cases. Fixes #582010