videoencoder: produces incorrect dts with vtenc, when crossing segment boundary
Submitted by Nick Kallen
Link to original bug (#779088)
Description
This bug is subtle and involves segment boundaries:
GstVideoEncoderBase, if dts == -1, will attempt to set it to a sane value.
In one case, it picks the "lowest unsent PTS". However, consider the case where there are e.g. 2 outstanding frames: one from one segment and another in a different segment. You cannot compare the PTS of these frames without factoring in the segment base. However, the code does not do that at all:
https://github.com/GStreamer/gst-plugins-base/blob/master/gst-libs/gst/video/gstvideoencoder.c#L2114
Version: 1.11.1