AESinkALSA: Fix S24NE4MSB incorrectly reported as S24NE4

The ALSA sink reports both S24NE4 (sample in LSB) and 24-bit S32NE
(sample in MSB) as AE_FMT_S24NE4.

Report the latter correctly as AE_FMT_S24NE4MSB instead, otherwise
sample conversion goes wrong resulting in noise.
ffmpeg: fix failing filter caused by invalid time_base.num or aspect_ratio.num
Merge pull request #5300 from FernetMenta/pict

ffmpeg: fix failing filter caused by invalid time_base.num or aspect_rat...
Merge pull request #5297 from anssih/fix/alsa-s24

AESinkALSA: Fix S24NE4MSB incorrectly reported as S24NE4
FIX: [droid] re-add default joystick keymap
Merge pull request #5301 from koying/quickpr

FIX: [droid] re-add default joystick keymap
[omxplayer] Merge in latest dvdplayer changes
[dvdplayer] Make players pointers rather than objects
[dvdplayer] Create a base class for audio and video players
[dvdplayer] Add dummy hooks in useful places
[omxplayer] Rework trickplay to reduce changes to dvdplayer
[omxplayer] Make omxplayer use dvdplayer as base class
[omxplayer] Allow choice of omxplayer through acceleration settings
[players] Remove omxplayer as separately selectable player
omxplayer: Reset codec on flush to stop a stale timestamp from being returned
[omxplayer] Don't flush queued data on general reset

We were flushing the queue of data to gpu (which can be a number of seconds worth) on a general reset.
However this is generated on inoccuous events like a chapter change in dvd playback.

This results in a few seconds loss of audio, and a temporary audio/video sync error
[dvdplayer] Allow UpdateCorrection to handle audio and video jumping asynchronously

This is sequence of timestamps (before correction) from The Grand Budapest Host chapter 3.

12:07:04 T:2730484832   DEBUG: CDVDPlayer::UpdateCorrection - stream:0 dts:  95502.94 pts:  95502.94 correction:      0.00 size:   46475
12:07:04 T:2730484832   DEBUG: CDVDPlayer::UpdateCorrection - stream:1 dts:  95502.80 pts:  95502.80 correction:      0.00 size:    1792
12:07:04 T:2730484832   DEBUG: CDVDPlayer::UpdateCorrection - stream:0 dts:  95502.98 pts:  95502.98 correction:      0.00 size:   47057
12:07:04 T:2730484832   DEBUG: CDVDPlayer::UpdateCorrection - stream:1 dts:     59.12 pts:     59.12 correction:      0.00 size:    1792
12:07:04 T:2730484832   DEBUG: CDVDPlayer::UpdateCorrection - stream:1 dts:     59.12 pts:     59.12 correction: -95443.72 size:    1792
12:07:04 T:2730484832   DEBUG: CDVDPlayer::UpdateCorrection - stream:0 dts:  95503.03 pts:      0.00 correction: -95443.72 size:   60924
12:07:08 T:2730484832   DEBUG: CDVDPlayer::UpdateCorrection - stream:1 dts:     59.15 pts:     59.15 correction: -95443.72 size:    1792
12:07:08 T:2730484832   DEBUG: CDVDPlayer::UpdateCorrection - stream:1 dts:     59.18 pts:     59.18 correction: -95443.72 size:    1792
12:07:08 T:2730484832   DEBUG: CDVDPlayer::UpdateCorrection - stream:0 dts:  95503.08 pts:  95503.08 correction: -95443.72 size:   46031
12:07:08 T:2730484832   DEBUG: CDVDPlayer::UpdateCorrection - stream:1 dts:     59.21 pts:     59.21 correction: -95443.72 size:    1792
12:07:08 T:2730484832   DEBUG: CDVDPlayer::UpdateCorrection - stream:0 dts:  95503.11 pts:  95503.11 correction: -95443.72 size:   43036
12:07:08 T:2730484832   DEBUG: CDVDPlayer::UpdateCorrection - stream:1 dts:     59.25 pts:     59.25 correction: -95443.72 size:    1792
12:07:08 T:2730484832   DEBUG: CDVDPlayer::UpdateCorrection - stream:0 dts:  95503.14 pts:      0.00 correction: -95443.72 size:   59193
12:07:08 T:2730484832   DEBUG: CDVDPlayer::UpdateCorrection - stream:1 dts:     59.28 pts:     59.28 correction: -95443.72 size:    1792
12:07:08 T:2730484832   DEBUG: CDVDPlayer::UpdateCorrection - stream:1 dts:     59.31 pts:     59.31 correction: -95443.72 size:    1792
12:07:08 T:2730484832   DEBUG: CDVDPlayer::UpdateCorrection - stream:2 dts:     59.49 pts:     59.49 correction: -95443.72 size:    4868
12:07:08 T:2730484832   DEBUG: CDVDPlayer::UpdateCorrection - stream:1 dts:     59.34 pts:     59.34 correction: -95443.72 size:    1792
12:07:08 T:2730484832   DEBUG: CDVDPlayer::UpdateCorrection - stream:1 dts:     59.37 pts:     59.37 correction: -95443.72 size:    1792
12:07:08 T:2730484832   DEBUG: CDVDPlayer::UpdateCorrection - stream:0 dts:  95503.19 pts:  95503.19 correction: -95443.72 size:   42475
12:07:08 T:2730484832   DEBUG: CDVDPlayer::UpdateCorrection - stream:1 dts:     59.41 pts:     59.41 correction: -95443.72 size:    1792
12:07:08 T:2730484832   DEBUG: CDVDPlayer::UpdateCorrection - stream:0 dts:     59.53 pts:     59.56 correction: -95443.72 size:   49850
12:07:08 T:2730484832   DEBUG: CDVDPlayer::UpdateCorrection - stream:0 dts:  95503.24 pts:  95503.28 correction: -95443.72 size:   49850
12:07:08 T:2730484832   DEBUG: CDVDPlayer::UpdateCorrection - stream:1 dts:     59.44 pts:     59.44 correction:-190887.44 size:    1792
12:07:13 T:2730484832   DEBUG: CDVDPlayer::UpdateCorrection - stream:1 dts:     59.47 pts:     59.47 correction:-190887.44 size:    1792

Note that audio and video jump at different times.

At the end of this correction should be -95443.72, but it actually jumps twice to double that.

The timestamps arriving at PlayerVideo are not continuous, but jump from 95443 to 190887.

This patch chooses to wait until audio and video have both jumped, and while only one has jumped, it gets timestamps of DVD_NOPTS_VALUE.

This fixes the problem on my dvd, and appears to also fix this issue:
http://forum.xbmc.org/showthread.php?tid=201944
[rbp] Hardware accelerated resampling

This replaces the format conversion, up/down mixing and resampling code from ActiveAE with a GPU accelerated version.
Should significantly reduce CPU when using paplayer or dvdplayer.

Requires updated firmware
[rbp/omxplayer] When opening a stream don't try to update gui so often
[ffmpeg] Speed up wtv index creation

The index creation is O(N^2) with number of entries (typically thousands).
On a Pi this can take more than 60 seconds to execute for a recording of a few hours.

By replacing with an O(N) loop, this takes virtually zero time