audiosink: compensate for segment restart with clock's time_offset

When playing chained data the audio ringbuffer is released and
then acquired again. This makes it reset the segbase/segdone
variables, but the next sample will be scheduled to play in
the next position (right after the sample from the previous media)
and, as the segdone is at 0, the audiosink will wait the duration
of this previous media before it can write and play the new data.

What happens is this:
pointer at 0, write to 698-1564, diff 698, segtotal 20, segsize 1764, base 0

it will have to wait the length of 698 samples before being able to write.

In a regular sample playback it looks like:
pointer at 677, write to 696-1052, diff 19, segtotal 20, segsize 1764, base 0

In this case it will write to the next available position and it
doesn't need to wait or fill with silence.

This solution is borrowed from pulsesink that resets the clock to
start again from 0, which makes it reset the time_offset to the time
of the last played sample. This is used to correct the place of
writing in the ringbuffer to the new start (0 again)

https://bugzilla.gnome.org/show_bug.cgi?id=737055
videoencoder: release frame in finish_frame when no output state is configured

Otherwise, frame is leaked.

https://bugzilla.gnome.org/show_bug.cgi?id=737706
vorbisdec: don't reorder streams with channels count greater than eight

vorbis_reorder_map is defined for eight channels max. If we have more
than eight channels, it's the application which shall define the order.
Since we set audio position to none, we just interleave all the channels
without any particular reordering.

https://bugzilla.gnome.org/show_bug.cgi?id=737742
videoencoder: Stop storing if we received EOS

This was never reset when going from PAUSED->READY and resulted
in encoders being not reusable after EOS. They just rejected any
buffer because they received EOS in their previous life.

The flag wasn't used anywhere except for rejecting buffers after
EOS, and this is now handled by GstPad directly.
decodebin: Only emit the drain signal for the main decode chain, not any subchains

https://bugzilla.gnome.org/show_bug.cgi?id=738064
playsink: Use correct property enum value for video-filter property installation
audiodecoder: should post DECODE errors and not ENCODE

Fix error code for audio decoder
appsink: Fix gst_app_sink_pull() docs to transfer full for the return value

Also we get a GstSample, not a GstBuffer here.
rtspconnection: call watch notify before freeing any watch resources

This gives control to the notify function allowing it to finish other
watch related functionality.

https://bugzilla.gnome.org/show_bug.cgi?id=737752
tests: dist header file needed for ABI checks on powerpc32

Fixes 'make check' on debian powerpc32 buildbot:
libs/libsabi.c:95:26: fatal error: struct_ppc32.h: No such file or directory
Update .po files
Release 1.4.4
tcpserversink: Don't leak a `GSocket` and a `GInetSocketAddress`

when accepting a connection.

Discovered by `make check-valgrind` with the new `socketintegrationtest`.

https://bugzilla.gnome.org/show_bug.cgi?id=739544
typefind: recognize Apple Core Audio Format

(CAF) Specification 1.0

https://bugzilla.gnome.org/show_bug.cgi?id=739840
pbutils: add description for Apple Core Audio Format

https://bugzilla.gnome.org/show_bug.cgi?id=739840
playbin: fix 'attempt to unlock mutex that was not locked' in error code path

Fixes playbin unit test with latest GLib.
videoencoder: don't complain about PTS != DTS on keyframes

It is valid for streams with b-frames

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