oggdemux: use new gstutils helper GstFlowCombiner

Fixes the handling of GST_FLOW_EOS by using the helper object
from gstutils that does the correct combination of flow returns.

https://bugzilla.gnome.org/show_bug.cgi?id=709224
audiodecoder: return EOS when segment is over

if a buffer is clipped by being completely out of segment, check if this
buffer is after the end of the segment and return EOS upstream

https://bugzilla.gnome.org/show_bug.cgi?id=709224
videodecoder: return EOS when segment is over

if a buffer is clipped by being completely out of segment, check if this
buffer is after the end of the segment and return EOS upstream

https://bugzilla.gnome.org/show_bug.cgi?id=709224
videodecoder: actually return the push result in backwards playback

It was always returning _OK regardless of what downstream returned
tests: videodecoder: audiodecoder: add tests for eos after segment

Tests that pushing a buffer after the segment returns EOS
audio: Add a missing precondition to gst_audio_format_from_string()

https://bugzilla.gnome.org/show_bug.cgi?id=730874
decodebin: aggregate buffering messages

Aggregate buffering messages to only post the lower value
to avoid setting pipeline to playing while any multiqueue
is still buffering.

There are 3 scenarios where the entries should be removed from
the list:

1) When decodebin is set to READY
2) When an element posts a 100% buffering (already implemented)
3) When a multiqueue is removed from decodebin.

For item 3 we don't need to handle it because this should only
happen when either 1 is hapenning or when it is playing a
chained file, for which number 2 should have happened for the
previous stream to finish

https://bugzilla.gnome.org/show_bug.cgi?id=726423
mikey: Free MikeyPayload in error cases

CID #1212136
oggstream: consider all opus packets as "keyframes"

This lets oggdemux determine they are not delta units, and removes
spurious per packet warnings about being unable to determine the
packet's keyframeness.
audioencoder: Keep still meaningfull pending events on FLUSH_STOP

Only EOS and segment should be deleted in that case.

https://bugzilla.gnome.org/show_bug.cgi?id=709868
streamsplitter: Keep still meaningfull pending events on FLUSH_STOP

Only EOS and segment should be deleted in that case.

https://bugzilla.gnome.org/show_bug.cgi?id=709868
videoencoder: Keep still meaningfull pending events on FLUSH_STOP

Only EOS and segment should be deleted in that case.

https://bugzilla.gnome.org/show_bug.cgi?id=709868
audiodecoder: Keep still meaningfull pending events on FLUSH_STOP

Only EOS and segment should be deleted in that case.

https://bugzilla.gnome.org/show_bug.cgi?id=709868
videodecoder: Keep still meaningfull pending events on FLUSH_STOP

Only EOS and segment should be deleted in that case.

+ Add a testcase

https://bugzilla.gnome.org/show_bug.cgi?id=709868