Fix NUV playback

dbb38743501ac4dd361b248fcaa337d00a85329c introduced the regression.

(cherry picked from commit ba0fc4e29d9d27edc6ad25d16cdf7b799c66548f)
Change VideoFrame default value

dbb38743501ac4dd361b248fcaa337d00a85329c introduced a new behavior which is properly handled only in two places now, there are still other areas using VideoFrame.
Change default VideoFrame values so it uses the original behaviour for those instances

(cherry picked from commit 315b354ac8010c9a20e638832b7998b777147904)
Revert "Fix NUV playback"

This is not required with 315b354ac, and I'm afraid it could introduce regression.
Better safe than sorry

This reverts commit ba0fc4e29d9d27edc6ad25d16cdf7b799c66548f.

(cherry picked from commit 4a764c3d6fecf7e378318e3e387afaa97215c91e)
Wait shortly for QApplication to register the screen change before continuing.

When there’s a screen resolution change, QApplication::desktop() will continue to report the old resolution causing incorrect sizing at startup.

Now, create a QEventLoop that will process the required events during a short period of time.

(cherry picked from commit f4db08f363d2fd83a2d4f84fc33d6d20769f92ee)
Fix build on big endian system

Fixes #11136

(cherry picked from commit 0967877b0a71e15e6682b29171928524deb8bc7e)
Revert "Fix build on big endian system"

This reverts commit 87152adc39ea8e15f1b67df4d80e55f03c718fd8.
Fix build on big endian system

Fixes #11136

(cherry picked from commit 1b56fcc29ab868b2f06ec7e0f8d02c01581daae5)
Load themes for the current tagged release in addition to the branch.

(cherry picked from commit 2144495d82978c04fee081a2005d6a3ecf79b3cf)
Updated German MythFrontend and MythMusic translation
from Florian Bittner

Thank you Florian!

Closes #12152

Signed-off-by: Nicolas Riendeau <nriendeau@mythtv.org>
Add additional european short date formats
from Angela Schmid

Thank you Angela!

Closes #12064

Signed-off-by: Nicolas Riendeau <nriendeau@mythtv.org>
Locale file for de_CH
from Eduard Iten

Thank you Eduard!

Closes #12102

Signed-off-by: Nicolas Riendeau <nriendeau@mythtv.org>
Move focus to first real entry when entering a directory in navigation mode
Only use VDPAU hwaccel API for mpeg container

The use of VDPAU hwaccel API was an attempt to fix #11377. However, the underlying problem is a FFmpeg libavformat bug (https://trac.ffmpeg.org/ticket/2915).

FFmpeg 1.2's VDPAU hwaccel is clearly unstable. 24fps AVI would play at half that rate, cause crashes with nouveau or visual distortion with AMD

As the aim is only to fix #11377, only enable the hwaccel API for the mpeg container.

Add a "vdpauhwaccel" setting override to completely disable VDPAU hwaccel under all circumstances

Fixes #12162
Remove hack forcing MPEG1 video to be treated as MPEG2

This hack was added to fix #287, which was a problem with XvMC decoding.
It makes no sense today, and actually break genuine MPEG1 videos.

Fixes #12160

(cherry picked from commit fee00c36f79dd06432392dd9d4891efc5d253fd2)
Don't attempt to issue DB query if there's nothing to do

Prevent harmless SQL statement error messages to be logged when the position map is empty

Regression introduced in b4be8e24f9fab5b6a71f62df8e2c0403bedf4805

Fixes #12161

(cherry picked from commit d90af2d6b09bc5197a39d1e1d09baff2aafe9a2a)
Try to fix corner cases when stopping in-progress recordings.

The backend uses EncoderLink::MatchesRecording(), which in turn uses
ProgramInfo::IsSameRecording(), to determine which recorder to stop.
Unfortunately the logic used is too strict in some respects and too
loose in others.  It is too strict in that it requires an exact match
on ProgramInfo::recstartts when there are many places in the code
where the exact recstartts used by the recorder is not known.  The
result is the stop recording request is ignored in those cases.  It is
too loose in that it doesn't only uses chanid and recstartts.  The
result is that it can stop the wrong recording in some cases.

This change attempts to resolve at least some of the issues.  Changed
PI:IsSameRecording() to also check the program title.  Changed
EL::MatchesProgram() to check PI::IsSameProgramWeakCheck() and the
inputids instead of PI::IsSameRecording() when the inputid is known.
This handles the cases where the exact recstartts isn't known.
Finally, removed a work-around for this problem in ScheduleCommon that
didn't always work.

(cherry picked from commit 8116fde7f46494dda0c7ca7658c3bf22e9340b34)
Revert "Try to fix corner cases when stopping in-progress recordings."

This broke livetv for many people. The auto-expirer would delete the in-use file
during playback.

This reverts commit a1b5067688bce06141ecd10b33dea91091f5e9a7.
Revert "Only use VDPAU hwaccel API for mpeg container"

Better fix coming

This reverts commit 2502f4a3c45b76684d1d37b9b6d39112c3fffd09.
Do not use VDPAU hwaccel API for mpeg4 videos

FFmpeg 1.2's VDPAU hwaccel is clearly unstable. 24fps mpeg4 in AVI would play at half that rate, cause crashes with nouveau or visual distortion with AMD

Add a "vdpauhwaccel" setting override to completely disable VDPAU hwaccel under all circumstances

Fixes #12162
Channel scanning: unbreak the cli.  Teardown() frees and NULLs
sigmonScanner, so testing it to be non-zero is always going to fail.
Further, if sigmonScanner is invalid, then transports will be empty, so that
is all the test we need.

(cherry picked from commit 1582de655661622de08e23be13e38f06b1fab325)