From 31f59cb344fc8fc1347092fedfdbcd0ca6c80f0f Mon Sep 17 00:00:00 2001 From: =?utf8?q?Sebastian=20Dr=C3=B6ge?= Date: Thu, 12 Feb 2015 11:11:19 +0200 Subject: [PATCH] avfvideosrc: Only use the duration of the sample if it is valid --- sys/applemedia/avfvideosrc.m | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/sys/applemedia/avfvideosrc.m b/sys/applemedia/avfvideosrc.m index 134316a..305274c 100644 --- a/sys/applemedia/avfvideosrc.m +++ b/sys/applemedia/avfvideosrc.m @@ -908,8 +908,10 @@ didOutputSampleBuffer:(CMSampleBufferRef)sampleBuffer if (CMSampleBufferGetOutputSampleTimingInfoArray(sbuf, 1, &time_info, &num_timings) == noErr) { timestamp = gst_util_uint64_scale (GST_SECOND, time_info.presentationTimeStamp.value, time_info.presentationTimeStamp.timescale); - duration = gst_util_uint64_scale (GST_SECOND, - time_info.duration.value, time_info.duration.timescale); + + if (CMTIME_IS_VALID (time_info.duration) && time_info.duration.timescale != 0) + duration = gst_util_uint64_scale (GST_SECOND, + time_info.duration.value, time_info.duration.timescale); now = CMClockGetTime(inputClock); inputClockNow = gst_util_uint64_scale (GST_SECOND, -- 2.7.4