rtsp-stream: improve handling of sequence numbers

Change so that gst_rtsp_stream_get_current_seqnum() returns the sequence
number of the last buffer pulled from the appsink instead of the
sequence number in the payloader. If no buffer have been pulled from the
appsink (e.g. in the case of UDP) then the sequence number in the
payloader is used instead.

This gives a more accurate reading of the current sequence number and
ensures that there is no gap in sequence numbers following
PLAY-PAUSE-PLAY when using suspend mode GST_RTSP_SUSPEND_MODE_RESET,
which would be the case without this change.
24 jobs for !122 with rtsp-stream-Improve-handling-of-sequence-numbers in 28 minutes and 11 seconds (queued for 3 seconds)
latest detached
Status Job ID Name Coverage
  Preparation
failed #2994780
gst indent

00:00:19

passed #2994778
manual
manifest

00:00:52

 
  Build
passed #2994794
gstreamer
build cerbero cross-android universal

00:07:32

passed #2994798
gst-ios-13.2
build cerbero cross-ios universal

00:19:51

passed #2994795
gstreamer
build cerbero cross win32

00:04:44

passed #2994796
gstreamer
build cerbero cross win64

00:04:17

passed #2994793
gstreamer
build cerbero fedora x86_64

00:04:49

passed #2994797
gst-macos-10.15
build cerbero macos x86_64

00:09:39

passed #2994787
build clang fedora x86_64

00:05:26

manual #2994792
1809 windows docker allowed to fail manual
build msys2
passed #2994782
build nodebug fedora x86_64

00:03:33

passed #2994783
build static fedora x86_64

00:03:35

passed #2994785
build static nodebug fedora x86_64

00:03:14

passed #2994789
1809 windows docker
build vs2017 amd64

00:22:47

passed #2994791
1809 windows docker
build vs2017 x86

00:22:59

 
  Test
passed #2994799
gstreamer
check fedora

00:05:06

passed #2994800
gstreamer
integration testsuites fedora 1/4

00:12:25

passed #2994801
gstreamer
integration testsuites fedora 2/4

00:15:53

passed #2994802
gstreamer
integration testsuites fedora 3/4

00:12:22

passed #2994803
gstreamer
integration testsuites fedora 4/4

00:14:46

 
  Integrate
passed #2994804
cross-android universal examples

00:06:28

passed #2994806
gst-ios-13.2
cross-ios universal examples

00:03:45

failed #2995399
documentation

00:03:14

failed #2994805
documentation

00:05:09

 
Name Stage Failure
failed
documentation Integrate
    extension.setup()
File "/usr/local/lib64/python3.7/site-packages/hotdoc/extensions/gst/gst_extension.py", line 537, in setup
plugin_sym = self.__parse_plugin(libfile, plugin)
File "/usr/local/lib64/python3.7/site-packages/hotdoc/extensions/gst/gst_extension.py", line 955, in __parse_plugin
self.__create_property_symbols(element, element['name'], pagename)
File "/usr/local/lib64/python3.7/site-packages/hotdoc/extensions/gst/gst_extension.py", line 770, in __create_property_symbols
prop["type"], pagename)
KeyError: 'type'
ERROR: Job failed: exit code 1
failed
gst indent Preparation
   seqnum = priv->last_seqnum;

- if (seqnum == (guint32) -1)
+ if (seqnum == (guint32) - 1)
g_object_get (G_OBJECT (priv->payloader), "seqnum", &seqnum, NULL);


return seqnum;

style diverges, please run gst-indent first
ERROR: Job failed: exit code 1