ximagesink: only extrapolate alpha mask for 32-bit depth

Instead of passing bogus alpha mask values when there's no alpha.

https://bugzilla.gnome.org/show_bug.cgi?id=727188
rtspconnection: add flush method

Add a method to set/unset the flushing state that makes _wait_backlog()
unlock.

See https://bugzilla.gnome.org/show_bug.cgi?id=725898
videodecoder: In reverse playback mode we need to finish the subclass after passing all frames to it
videodecoder: Log event types of events that are pushed downstream
videodecoder: Handle reverse playback with multiple GOPs per discont group properly

baseparse will reverse each GOP for us already, so the segment events can
be after our keyframe. Make sure to get it and all other relevant sticky
events before starting to decode.
videodecoder: Flush the decoder once per discont group, not once per keyframe
videodecoder: Always drain the decoder after a discont group in reverse playback mode
rtspconnection: Added gst_rtsp_watch_set_flushing to list.

Added gst_rtsp_watch_set_flushing to list in file
libgstrtsp.def
playbin: Drop reference to any source element in NULL state

Drop the reference instead of waiting for either finalize(), or
for a new source when reused. Everyone else already forgot about
the old source.
mikey: Fix the KEMAC payload

The KEMAC payload actually needs to have subpayloads and the key should
go into the KEY_DATA subpayload. Add support for subpayloads and
implement the KEY_DATA payload.
Add some pointers to the conversion functions that allow us to add
encryption and decryption later.
audiobasesink: clip start samples to match clipped start time

Clock slaving can clip start time to zero, giving us a shorted
duration than we originally got. To keep in sync, we must then
discard the samples falling before that zero timestamp.

This possibly fixes random distortion caused by constant PA
underflows which are never resynced.
videodecoder: do not deactivate the bufferpool, just unref

Videodecoder does late renegotiation, it will wait for the next
buffer before renegotiating its caps and bufferpool. It might happen
that downstream element switched from passthrough to non-passthrough
and sent a reconfigure upstream (that caused this renegotiation).
This downstream element will ask the video sink below for the bufferpool
with an allocation query and will get the same bufferpool that
videodecoder is holding, too.

When renegotiating, if videodecoder deactivates its bufferpool it
might be deactivating the bufferpool that some element downstream
is using and cause the pipeline to fail.

https://bugzilla.gnome.org/show_bug.cgi?id=727498
tools: update gst-play-1.0 man page
subtitleoverlay: Consider all caps for overlays, not just the first.

Check all supported caps on the overlay video pad, not just the
first of (possibly) many.
audioringbuffer: parse channels field from compressed audio caps

Also parse channels as an optional field in the caps for compressed
audio formats.
adder: rework the logic to check if eos has to be sent.

Checking the size available was incorrect, and the infos
for per-pad EOS are available.

Same logic as audiomixer.

fixes: https://bugzilla.gnome.org/show_bug.cgi?id=727025
sdp: guard against address parse errors.
decodebin: In adaptive streaming mode, only have a fixed buffer limit for the non-buffering multiqueue
video-event: Update the running times in the force-keyunit events from the pad offsets
oggdemux: do not dereference NULL pad in warning message

Coverity 1197695