SoftAE: Fix A/V sync issues caused by wrong buffer time calculation

CSoftAE::GetDelay(), CSoftAE::GetCacheTime(), and
CSoftAE::GetCacheTotal() assume in their calculations that m_buffer
contains frames that have sink/encoder frame size. However, m_buffer
actually contains frames in the format received from CSoftAEStream.

This causes varying levels of A/V de-sync depending on other conditions.
On my Linux system I encounter this always when using using HDMI audio
and having the display refresh rate set at 24Hz.

Fix those functions to use the correct frame size.
[AE/CA] - replace CoreAudioRingBuffer with AERingBuffer (which is the same duped implementation)
settings: fix listing of invisible categories and groups
[AE] - Fix wrong comparison in AERingBuffer (backport from old CoreAudioRingBuffer)
Merge pull request #3160 from Memphiz/removecaringbuffer

[CA/AE] - remove CoreAudioRingBuffer and use the duped impl called AERingBuffer
Merge pull request #3158 from anssih/fix/AE-getdelay

SoftAE: Fix A/V sync issues caused by wrong buffer time calculation
[AE/CA] - fix another comparison with unsigned int
AE: fix stream info for EAC3
AE: handle EAC-3 substreams
AE: distinguish between AC-3 and EAC-3
ActiveAE: handle setting EAC-3
linuxrenderer: do not render if upload texture fails
vdpau: redesign
vdpau: make interop gl default and remove setting, rename and intvert interop yuv
vdpau: observe ffmpeg tags for color space
vdpau: switch off de-interlacing on ff
linuxrenderer: drop method RenderMultiPass
linuxrenderer: implement progressive weave for vdpau
vdpau: set deinterlacing method to auto, if default method not supported
vdpau: calculate timestamp of second field when doing deinterlacing