rtsp: keep seqnum when performing seek
Submitted by Wonchul Lee
Link to original bug (#781386)
Description
I tried to seek on rtsp stream, for example, rtsp://184.72.239.149/vod/mp4:BigBuckBunny_115k.mov
The rtspsrc handles seek event and push the flush-start/stop event to udpsrcs what it has inside. The task running in the udpsrc stopped and restarted after rtspsrc set it's state to PLAYING. Then the udpsrc generated new segment event which has new seqnum (handled in basesrc), even if the segment event is related to the flush events from rtspsrc when performing seek.
In push mode, there seem not many cases handling seek event at upper bin or downstream element instead of Source element. It's not a good way to push segment event from the downstream element to upstream Source element, so I tried to keep the seqnum of the flush event which obviously triggers new segment event.
One problem here is that udpsrc didn't know the start / stop position of the segment what should be which was set to the seek event. I wonder it's a good way if I hook up segment event generated from udpsrc and updated start/stop position in rtspsrc in this case. please let me know if you have a good idea!