splitmuxsink: Allow splitting at exactly the time/bytes threshold

76e458a119 changed the conditions from
"queued > threshold" to "queued >= threshold", which broke hlssink2 and
resulting in too small fragments being created although keyframes would
be at *exactly* the configured threshold.

https://bugzilla.gnome.org/show_bug.cgi?id=794440
This commit is contained in:
Sebastian Dröge 2018-03-19 10:58:28 +02:00
parent 47ff21ea3b
commit 42f5f3d1be

View file

@ -1320,10 +1320,10 @@ need_new_fragment (GstSplitMuxSink * splitmux,
if (g_atomic_int_get (&(splitmux->split_now)) == TRUE)
return TRUE;
if (thresh_bytes > 0 && queued_bytes >= thresh_bytes)
if (thresh_bytes > 0 && queued_bytes > thresh_bytes)
return TRUE; /* Would overrun byte limit */
if (thresh_time > 0 && queued_time >= thresh_time)
if (thresh_time > 0 && queued_time > thresh_time)
return TRUE; /* Would overrun byte limit */
/* Timecode-based threshold accounts for possible rounding errors: