diff options
author | Sebastian Dröge <sebastian@centricular.com> | 2015-01-15 13:13:51 +0100 |
---|---|---|
committer | Sebastian Dröge <sebastian@centricular.com> | 2015-01-15 13:13:51 +0100 |
commit | efb74ca0df86954d2cbb51109e3bc214d814f874 (patch) | |
tree | 26e88c40c65ce562298c8c15040dd77b3b86ea11 | |
parent | e734c3cf134d2c57b5ffaaee585eedb19cf9bb1e (diff) |
interaudiosink: Make sure that buffer time is always bigger than period time
-rw-r--r-- | gst/inter/gstinteraudiosink.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/gst/inter/gstinteraudiosink.c b/gst/inter/gstinteraudiosink.c index d8e34ea77..58e78325e 100644 --- a/gst/inter/gstinteraudiosink.c +++ b/gst/inter/gstinteraudiosink.c @@ -300,6 +300,16 @@ gst_inter_audio_sink_render (GstBaseSink * sink, GstBuffer * buffer) buffer_time = interaudiosink->surface->audio_buffer_time; period_time = interaudiosink->surface->audio_period_time; + + if (buffer_time < period_time) { + GST_ERROR_OBJECT (interaudiosink, + "Buffer time smaller than period time (%" GST_TIME_FORMAT " < %" + GST_TIME_FORMAT ")", GST_TIME_ARGS (buffer_time), + GST_TIME_ARGS (period_time)); + g_mutex_unlock (&interaudiosink->surface->mutex); + return GST_FLOW_ERROR; + } + buffer_samples = gst_util_uint64_scale (buffer_time, interaudiosink->info.rate, GST_SECOND); |