<div dir="ltr"><div>Hello,</div><div><br></div><div>I have a pipeline where data is produced upstream by an appsrc element, passes through some elements and at the end there is a sink (pulsesink, alsasink) that outputs to the soundcard.</div><div><br></div><div>Data is produced in the appsrc like that<br></div><div><br></div><div>appsrc_needdata_cb(GstElement *appsrc, guint bytes, gpointer) {</div><div>  static guint64 bytescounter = 0;</div><div>  GstBuffer *buffer;<br></div><div><br></div><div>  /* allocate buffer and produce data */</div><div><br></div><div>  GST_BUFFER_PTS(buffer) = bytescounter;<br>  GST_BUFFER_DURATION(buffer) = bytes;<br>  bytescount += bytes;<br></div><div>}<br></div><div><br></div><div>everything is fine as long as I don't get underruns. If i underrun for say 1 second, the sink knows that and the clock increases as well by 1 second, but the appsrc callback doesn't detect that condition and timestamps data past the running time.<br></div><div><br></div><div>How can I acknowledge for this in appsrc?</div><div><br></div><div>Thank you very much!</div><div>Luca B.<br></div></div>