[omxplayer] Allow small audio packets to be concatenated to make better use of audio fifo

Some audio codecs produce small packets which causes a high overhead when submitting to GPU, and doesn't make full use of GPU side buffering.
TrueHD in particular can produce packets with 40 samples (so 1200 packets per second) which causes very high overhead.

What this aims to do is to concatenate audio packets until they approach the ideal audio packet size,
and then deal with the awkardness of concatenated planar formats.
[omxplayer] Use media time for determing audio delay and cache time

I've also added caching to the call to OMXMediaTime as the GPU round trip is expensive when called too frequently
Merge pull request #4777 from popcornmix/small_audio

[omxplayer] Allow small audio packets to be concatenated to make better use of audio fifo
videoplayer: adapt lateness detection and dropping to buffering
video player: present correct pts to user for a/v sync (after buffering in renderer)
videoplayer: some rework and documentation
renderer: bump buffers to 5
videoplayer: update frametime, it might change due to fps detection
videoplayer: give streams with invalid fps a chance for fps detection
dvdplayer: allow rewinding at end of stream, do a seek after rewind
dvdplayer: observe pts counter overflow
dvdplayer: avoid short screen flicker caused by unnecessary reconfigure of renderer
vdpau: advanced settings for auto deinterlacing
player: fix rewind
OMXPlayer: some caching fixes for pvr
fix incorrect display of fps when dr kicks in
renderer: allow some lateness within vblank interval
ActiveAE: slightly reduce buffer size
Revert "vdpau: comment some features that will be added later"

This reverts commit e00b4f65864d623ab4d2e9e5c06db138e661f1cf.
ffmpeg demuxer: faster channel change for PVR addons without internal demuxing
(such as MediaPortal, ArgusTV, MythTV, NextPVR)
Credits: FernetMenta, Davilla, Popcornmix, Whaupt