summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorJan Schmidt <jan@centricular.com>2016-02-04 14:25:12 +1100
committerTim-Philipp Müller <tim@centricular.com>2016-04-06 14:09:24 +0100
commit692a8719b6d829cc5e12660080a253a35fa5f9be (patch)
tree4f011bd38a0a69a9a5f1a53139206bfe7ddb71ee /sys
parent1e963c77029c1da114f18810e7bcfe5d74de152a (diff)
downloadgstreamer-plugins-bad-692a8719b6d829cc5e12660080a253a35fa5f9be.tar.gz
decklinkaudiosrc: Fix discont tracking
Don't reset the marker that's tracking disconts until either the discont disappears or we resync.
Diffstat (limited to 'sys')
-rw-r--r--sys/decklink/gstdecklinkaudiosrc.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/decklink/gstdecklinkaudiosrc.cpp b/sys/decklink/gstdecklinkaudiosrc.cpp
index a9284d193..1171ff368 100644
--- a/sys/decklink/gstdecklinkaudiosrc.cpp
+++ b/sys/decklink/gstdecklinkaudiosrc.cpp
@@ -556,9 +556,10 @@ gst_decklink_audio_src_create (GstPushSrc * bsrc, GstBuffer ** buffer)
self->next_offset, start_offset);
GST_BUFFER_FLAG_SET (*buffer, GST_BUFFER_FLAG_DISCONT);
self->next_offset = end_offset;
+ // Got a discont and adjusted, reset the discont_time marker.
+ self->discont_time = GST_CLOCK_TIME_NONE;
} else {
// No discont, just keep counting
- self->discont_time = GST_CLOCK_TIME_NONE;
timestamp =
gst_util_uint64_scale (self->next_offset, GST_SECOND, self->info.rate);
self->next_offset += sample_count;