liveadder: handle gap buffer flag

Remove GAP flag unless both sides have gap data, ignore
incoming data if it is gap data.

https://bugzilla.gnome.org/show_bug.cgi?id=722397
srtp: add support for rollover counters and replay protection window size

We add a new signal, get-rollover-counter, to the SRTP encoder. Given a
ssrc the signal will return the currently internal SRTP rollover counter
for the given stream.

For the SRTP decoder we have a new SRTP caps parameter "roc" that needs
to be set when a new SRTP stream is created for a given SSRC.

https://bugzilla.gnome.org/show_bug.cgi?id=726861
tsdemux: Reset pending_ts on a discont, to re-measure initial timestamps

Since all the other timestamp tracking now gets reset on a discont,
it makes sense to wait for a PCR and timestamp buffers like when
playback first starts
mpegtspacketiser: Always initialise packet AFC flags and PCR fields

Also fix a slight typo in a comment about the smoothing algorithm
tsdemux: Remove extraneous extra parameter from check_pending_buffers function
rtmpsrc: Fix position querying

It's the position we're querying, not the duration :)
rtmp: proxy logging from librtmp

Helps with debugging various librtmp issues
gl/wayland: create a dummy display instead of an EGLDisplay

Currently, GstGLWindowWaylandEGL holds the wayland display connection
If we create the EGLDisplay at the GstDisplay creation time, then
libEGL will internally open another connection to the wayland server.
These two display connections are unable to communicate resulting in
no window output/display and hangs inside libEGL.

Eventually we will move the wl_display from GstGLWindow to GstGLDisplay.
dvbsrc: improve timeout handing at locking loop

New approach attempts to be more accurate by measuring
the elapsed time by iteration. Also:

* Use a 10 seconds default timeout and a half a second
  polling step. New values should better match the tuning
  process on real-life scenarios.
* Correct elapsed_time computation.
* Add _retry_ioctl() to avoid bailing out on temporary
  ioctl EINTR failures (no need to check for EAGAIN cause
  we are opening the frontend on blocking mode)
* Small corrections to fail condition handling
dvbsrc: drop redundant assignment
schroenc: Use an arbitrary framerate if none if given

The schro encoder always requires a framerate, but some source material,
such as RTP doesn't have a fixed one, so just fake it.

https://bugzilla.gnome.org/show_bug.cgi?id=729054
hlsdemux: Reload the variant playlist if refreshing a playlist or downloading a fragment fails

This can happen if the playlists have moved due to the variant playlist
now being redirected to another target. This currently only works as long
as the referenced playlists don't change in relation to the variant
playlist, and the new location is purely due to a new path triggered by a
new redirection target of the variant playlist, or a new redirection
target of the playlist itself.

https://bugzilla.gnome.org/show_bug.cgi?id=731164
hlsdemux: Fix compiler warnings
hlsdemux: Don't store the current key in the playlist

It's per fragment and applying to all following fragments
until the next key is specified.
hlsdemux: Improve parsing quoted key URIs and apply it for I-frame-based stream URI

https://bugzilla.gnome.org/show_bug.cgi?id=730830
mpegtsdemux: Fix sticky event handling

When we receive sticky events from upstream, always return TRUE.

Fixes the issue where we receive custom sticky events (such as "uri")
and no pads are created yet.
speed: Fix position query some more

Forgot to remove code in 16fd917632c0992349ca28cf9108e9562c493ad7

CID #1139677
gdp: don't print already-freed string

CID 1221987
mpegtspacketizer: Handle early PTS conversion

When handling the PTS/DTS conversion in new groups, there's a possibility
that the PTS might be smaller than the first PCR value observed, due to
re-ordering.

When using the current group, only apply the wraparound correction when we
are certain it is one (i.e. differs by more than a second) and not when it's
just a small difference (like out-of-order PTS).

https://bugzilla.gnome.org/show_bug.cgi?id=731088
mpegtspacketizer: Fix duration evaluation in push mode

When working in push mode, we need to be able to evaluate the duration
based on a single group of observations.

To do that we use the current group values