mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-27 20:21:24 +00:00
[MOVED FROM GST-P-FARSIGHT] Reset the gst timestamp if the time different is too large
20080704215550-3e2dc-76eb3f600f2b977e916f7e1f654529ddaff06ac9.gz
This commit is contained in:
parent
9e7cada4a9
commit
7d52a6fc1a
1 changed files with 3 additions and 1 deletions
|
@ -270,15 +270,17 @@ gst_mimdec_chain (GstPad *pad, GstBuffer *in)
|
||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
GST_BUFFER_TIMESTAMP(out_buf) = mimdec->gst_timestamp;
|
||||||
|
|
||||||
if (mimdec->last_ts != -1) {
|
if (mimdec->last_ts != -1) {
|
||||||
int diff = mimdec->current_ts - mimdec->last_ts;
|
int diff = mimdec->current_ts - mimdec->last_ts;
|
||||||
if (diff < 0 || diff > 5000) {
|
if (diff < 0 || diff > 5000) {
|
||||||
diff = 1000;
|
diff = 1000;
|
||||||
|
mimdec->gst_timestamp = GST_CLOCK_TIME_NONE;
|
||||||
}
|
}
|
||||||
if (GST_CLOCK_TIME_IS_VALID (mimdec->gst_timestamp))
|
if (GST_CLOCK_TIME_IS_VALID (mimdec->gst_timestamp))
|
||||||
mimdec->gst_timestamp += diff * GST_MSECOND;
|
mimdec->gst_timestamp += diff * GST_MSECOND;
|
||||||
}
|
}
|
||||||
GST_BUFFER_TIMESTAMP(out_buf) = mimdec->gst_timestamp;
|
|
||||||
mimdec->last_ts = mimdec->current_ts;
|
mimdec->last_ts = mimdec->current_ts;
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue