mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-27 04:01:08 +00:00
Revert "decklinkaudiosrc: Extrapolate stream/hw reference timestamps when video frame is missing"
This reverts commit 6af863916a
.
This commit is contained in:
parent
6af863916a
commit
8ee1534b80
2 changed files with 2 additions and 25 deletions
|
@ -707,27 +707,6 @@ retry:
|
|||
|
||||
// Detect gaps in stream time
|
||||
self->processed += sample_count;
|
||||
if (self->expected_stream_time != GST_CLOCK_TIME_NONE
|
||||
&& p.stream_timestamp == GST_CLOCK_TIME_NONE && !p.no_signal) {
|
||||
/* We missed a frame. Extrapolate the timestamps */
|
||||
p.stream_timestamp = self->expected_stream_time;
|
||||
p.stream_duration =
|
||||
gst_util_uint64_scale_int (sample_count, GST_SECOND, self->info.rate);
|
||||
}
|
||||
if (self->last_hardware_time != GST_CLOCK_TIME_NONE
|
||||
&& p.hardware_timestamp == GST_CLOCK_TIME_NONE && !p.no_signal) {
|
||||
/* This should always happen when the previous one also does, but let's
|
||||
* have two separate checks just in case */
|
||||
GstClockTime start_hw_offset, end_hw_offset;
|
||||
start_hw_offset =
|
||||
gst_util_uint64_scale (self->last_hardware_time, self->info.rate,
|
||||
GST_SECOND);
|
||||
end_hw_offset = start_hw_offset + sample_count;
|
||||
p.hardware_timestamp =
|
||||
gst_util_uint64_scale_int (end_hw_offset, GST_SECOND, self->info.rate);
|
||||
/* Will be the same as the stream duration - reuse it */
|
||||
p.hardware_duration = p.stream_duration;
|
||||
}
|
||||
|
||||
if (p.stream_timestamp != GST_CLOCK_TIME_NONE) {
|
||||
GstClockTime start_stream_time, end_stream_time;
|
||||
|
@ -755,15 +734,14 @@ retry:
|
|||
GST_FORMAT_TIME, timestamp);
|
||||
|
||||
msg =
|
||||
gst_message_new_qos (GST_OBJECT (self), TRUE, running_time,
|
||||
p.stream_timestamp, timestamp, duration);
|
||||
gst_message_new_qos (GST_OBJECT (self), TRUE, running_time, p.stream_timestamp,
|
||||
timestamp, duration);
|
||||
gst_message_set_qos_stats (msg, GST_FORMAT_DEFAULT, self->processed,
|
||||
self->dropped);
|
||||
gst_element_post_message (GST_ELEMENT (self), msg);
|
||||
}
|
||||
self->expected_stream_time = end_stream_time;
|
||||
}
|
||||
self->last_hardware_time = p.hardware_timestamp;
|
||||
|
||||
if (p.no_signal)
|
||||
GST_BUFFER_FLAG_SET (*buffer, GST_BUFFER_FLAG_GAP);
|
||||
|
|
|
@ -75,7 +75,6 @@ struct _GstDecklinkAudioSrc
|
|||
GstClockTime expected_stream_time;
|
||||
guint64 processed;
|
||||
guint64 dropped;
|
||||
GstClockTime last_hardware_time;
|
||||
|
||||
/* Last time we noticed a discont */
|
||||
GstClockTime discont_time;
|
||||
|
|
Loading…
Reference in a new issue