rtpjitterbuffer: fix crash when do-retransmission=true and a lot of buffers are lost

The problem here was that the jitterbuffer lock was unlocked to push
the event, but that caused another thread to remove the timer currently
being processed, probably because the amount of rtx events
(and therefore timers) was getting too high. The solution is to
unlock and push the event only after timer processing has finished.

fixes https://bugzilla.gnome.org/show_bug.cgi?id=711131
rtpjitterbuffer: avoid mapping the buffer

Reuse the parsed structure to get the timestamps.
rtptheoradepay: handle packets > 0xffff

Reorganize some things in the depayloader so that it can handle packets larger
than 16 bits.
Remove the size restriction on the payloader.
rtpvorbisdepay: handle packets > 0xffff

Handle input packet sizes larger than 16 bits in the depayloader.
Remove size restrictions on the payloader.
rtpjitterbuffer: pass downstream flowreturn to upstream

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=712722
rtpjitterbuffer: fix wake-up when new buffers come in after running empty

Spotted by 'gratias' on IRC. Probably introduced in recent refactoring.

https://bugzilla.gnome.org/show_bug.cgi?id=715039
rtpjitterbuffer: improve clear-pt-map handling

Don't reset the expected output seqnum when clearing the pt map because this
could stall the jitterbuffer forever.
Add a unit test for this.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=709800
matroska-demux: Allow a bit more variation when detecting common framerates

Instead of +/- 1ns we allow 2ns now. Due to rounding errors there are
some Matroska files out there with 33.333331ms per frame for 30fps.
matroskamux: correctly handle negative relative timestamps

... rather than scaling these as unsigned.

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

Based on patch by Krzysztof Kotlenga <pocek@users.sf.net>
matroskademux: Use GstVideoInfo helper to create caps for raw video

This way we do not miss mandatory fields in caps.
At the same time use the gst_pb_utils_get_codec_description helper to
get codec description.

https://bugzilla.gnome.org/show_bug.cgi?id=712328
qtdemux: Use GstVideoInfo helper to create caps for raw video

This way we do not miss mandatory fields in caps.
At the same time use the gst_pb_utils_get_codec_description
helper to get codec description.

https://bugzilla.gnome.org/show_bug.cgi?id=712335
v4l2: clear cached caps on close

A different device with different caps may be used for the next open.

https://bugzilla.gnome.org/show_bug.cgi?id=712611
jitterbuffer: advance expected seqnum after dropping

After dropping a buffer, move our expected seqnum

Conflicts:
	gst/rtpmanager/gstrtpjitterbuffer.c
ac3parse: correctly handle timestamps when parsing x-private1-ac3

... the way it has always worked fine in a52dec.
matroskademux: Avoid division by zero assert in gst_matroska_demux_search_pos

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