videorate: Outputs too much data on segment updates
@bilboed
Submitted by Edward Hervey Link to original bug (#785027)
Description
When an "update" segment arrives in videorate, the next timestamps is resetted, causing a huge amount of duplicate (and late) frames to be outputted.
To reproduce, using the gst-validate media suite:
gst-launch-1.0 -v uridecodebin uri=file://$HOME/gst-validate/gst-integration-testsuites/medias/defaults/mp4/fragmented_nonseekable_sink.mp4 ! identity name=before silent=False ! videorate ! fakesink name=after silent=False
What comes in to videorate:
- segment start:0, stop:2s
- buffers from 0 to 2s
- segment start:0, stop:4s
- buffers from 2s to 4s
- etc...
What comes out of videorate
- segment start:0 stop:2s
- buffers from 0 to 2s
- segment start:0, stop:4s
- buffers from 0 to 2s /!\
** The problem is right here. Those buffers are all duplicates of the incoming 2s buffer and are all late. - buffers from 2s to 4s
Any element after videorate that assumes that timestamps are increasing is going to have a looot of problems.