video-chroma: don't crash on NULL resamplers

Make dummy resamplers for all cases and only execute the horizontal
resampler instead of crashing.

See https://bugzilla.gnome.org/show_bug.cgi?id=722742
videoconvert: tweak the scoring algorithm

Make a little table of conversions and manually score them. Use this
info to define better weights for the scoring algorithm.
give separate scores for doing changes and the impact of the change,
This allows us to avoid conversion when we can but still allow fairly
lossless changes.
The old code did not penalize GRAY conversions, PAL conversions were
punished too low and depth conversions too high.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=722656
uridecodebin: Drop hardcoded list of media suitable for download buffering

Discussion on IRC indicated that the main reason for this list was to
prevent demuxers that can trigger a lot of seeking from using
progressive buffering using queue2 (which due to being seekable triggers
that behaviour).

However given that upstream can indicate seeks are possible but should
be avoided via a scheduling query, this extra whitelisting shouldn't be
necessary for well-behaved demuxers.

https://bugzilla.gnome.org/show_bug.cgi?id=704933
rtpbasepayload: Add statistics property

This property allows for an atomically retrieved set of properties that
can e.g. be used to generate RTP-Info headers.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=719415
decodebin: make it possible to register multiple handlers for autoplug-select

Change the way autoplug-select is accumulated so that it's possible to have
multiple handlers. The handlers keep getting called as long as they keep
returning GST_AUTOPLUG_SELECT_TRY.

One practical example of when this is needed is when hooking into playbin's
uridecodebin, which is perhaps not very elegant but the only way to influence
which streams playbin autoplugs/exposes.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=723096
rtpbasepayload: Fix typos in documentation for properties

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=719383
rtpbasepayload: Improve documentation for perfect-rtptime

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=719383
rtpbasepayload: Expose running-time of payloaded stream

https://bugzilla.gnome.org/show_bug.cgi?id=719415
rtpbasepayload: Do cosmetic changes to rtptime calculations

 * Change running time type to guint64
 * Use GST_CLOCK_TIME_NONE() to check for invalid timestamps
 * Name variables so ns-based and hz-based timestamps are evident

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=719383
tests: videoencoder: basic videoencoder base class test

Adds a single test for video encoding
videoencoder: push tags and events before eos

if any tags or events are pending, push them before pushing eos
tests: videoencoder: check that tags are pushed before eos

Check that if a new tag event is received right before eos it
is pushed before the eos
audioencoder: push pending events and tags before EOS

if there are tags or events pending and an EOS is received, push those
events and tags before the EOS.
tests: audioencoder: add tests analogous to the videoencoder ones
streamsplitter: push pending events before eos

Push any pending events downstream before pushing eos
Automatic update of common submodule

From d48bed3 to 1a07da9