identity: Non-live upstream have no max latency

sync=TRUE implementation changes the latency query of a non-live
upstream into live, though it wrongly set the upstream max latency to 0.
As non-live sources won't loose data if we wait longer, this should have
been reported as have no max latency limite (-1).
This commit is contained in:
Nicolas Dufresne 2019-07-19 21:57:09 -04:00
parent 9ec55072d2
commit 86b9f78788

View file

@ -976,8 +976,12 @@ gst_identity_query (GstBaseTransform * base, GstPadDirection direction,
GST_OBJECT_LOCK (identity);
if (live)
identity->upstream_latency = min;
else
else {
identity->upstream_latency = 0;
/* if we interface a non-live source, then we know there is no
* limit in the maximum latency */
max = -1;
}
GST_OBJECT_UNLOCK (identity);
gst_query_set_latency (query, live || identity->sync, min, max);