Prevent showing 0x0 artwork when a recording doesn't have Seas/Ep.

I am not sure why this solution didn't occur to me earlier,

Basically, if the season input to the methods is 0, just order
the season results descending.  That way if the user has set
artwork (or any artwork has been set for anything > 1x01),
it'll be shown in higher priority than the 0x0 artwork.

The bug still exists (it's just inverted now, you'd get TV results
if you actually had TV and movies with the same legit inetref,
but this should affect far, far, far fewer people. Many/most users
will probably never see this inversion of the bug at all.

Refs #10408
Identify DVD commentary tracks in the Audio track selection dialog.
Update Youtube player API to v3.

Thanks to Alex Halovanic for this change, allows playback for those
videos which attempt to play advertisements first.

Fixes #10463.
Make users have to figure out if their video works

Make new users use the old, legacy, UI painter that doesn't work
properly with some themes and that's missing features.  This way, people
just starting with MythTV will be stuck with using the wrong painter
unless they happen to notice the setting buried in frontend Setup, and
they happen to read the help text which says that the default value is
only for use on systems with broken OpenGL (either broken hardware
or--more likely--broken drivers or possibly even broken higher-level
software, such as X or Window Managers).

FWIW, all users who successfully used the OpenGL painter (or Direct3D
for Windows users) on 0.24-fixes should go into Setup and change "Paint
engine" to use the "Auto" setting.  The only users who should ever use
anything else are those who have broken OpenGL implementations and
cannot or choose not to fix their systems.

Restores the ThemePainter setting (originally removed in fb45eb9fe) as:
-----
Paint engine
This selects what MythTV uses to draw. Choosing 'Auto' is recommended,
unless running on systems with broken OpenGL implementations (broken
hardware or drivers or windowing systems) where only Qt works.
-----

Apologies for the last-minute string addition.  Refs #10457.
Mention the detected character encoding

in log messages to make it easier to help debug issues.
Don't display frontend status box log viewer button

The frontend log viewer doesn't work.  Its reimplementation will either
require duplicating functionality from the service API log viewer or a
client implementation that allows use of the service API from the
frontend.

This leaves a bunch of code that's no longer necessary in
statusbox.cpp--to make the change minimally invasive.  The extra code
will be removed later (after release).

Refs #9946
Use toLocal8Bit() for loading mysql.txt.

Although the reported issue is much harder to trigger after c32fcf7fd,
this fixes the old code to use toLocal8Bit() in case it's triggered.
While this old code will likely be removed after #10305, this small
change should make it easier to use MythTV with non-ASCII characters in
home directory names.

Fixes #10209
Fix Mac OS X media monitor error.

Starting up frontend with removable drives mounted would do:
2012-03-16 21:07:25.878756 E  MythMediaDevice::performMountCmd(true) - Logic Error? Device already mounted.
This adds a platform #ifdef to work around convoluted logic.
Better long-term fix would be to make onDeviceMounted() unprotected.
Pause the frontend idle timer when music is being played. Fixes #10464
Don't toggle the enteringStandby state unless we're using the 'Standby Mode' jumppoint. It's only relevant when the standby screen is being used.
Pause the frontend idle timer when mythbrowser or mythflash is being used.
Performance/bug fix in media monitor ScanMediaType().

Symlinks to other places (like /Applications on OS X disk images) can cause
unwanted scanning of irrelevant directories and a big performance hit.
Even worse is symlinks which point to themselves, or a parent directory,
which recurse forever and blow the stack. If anyone really thinks that symlinks
should be used in file counts, we can revisit and add recursion limit rules?
Fix ordering of deletes in commandlineparser destructor.
Make sure the previewWaitCondition.wakeAll() is heard by using the proper lock.
Make sure we don't deref a NULL pointer to a PreviewGenerator.
Fix VDA playback for some videos.

This fix allows playing BBC videos.
Apple Video Decode Acceleration framework doesn't handle interlaced h264 properly. So add a quick test to check if video is interlaced or not.

While our original VDA code was heavily based on XBMC implementation, it introduced some errors ; there were some minor leaks and some necessary broken h264 encoding workarounds weren't implemented (AVD just hang on those)

Additionally, XBMC has fixed bugs since and the fixes never made it to mythtv.

Tracking what changed where was too time consuming, so shamelessly remove our customisation and re-use XBMC initialisation code as-is.
Additionally, we were using a non-official ffmpeg call (ff_find_start_code) which has been renamed and moved since; so the previous code would have been broken during the next ffmpeg resync.

FFmpeg master now supports VDA decoding, but their code doesn't handle any of the borderline scenarios handled here. Making it pretty much useless for the time being

Fixes #10466
Call ItemVisible() signal earlier to reduce flickering in mythmusic.
Add debugging to PauseIdleTimer() to help diagnose any problems with this code during the 0.25 release
Don't use the PLAYBACK_START/PLAYBACK_END events to pause the idle timer, the problem is that MythMusic unpauses the timer when it recieves the PLAYBACK_START event because it's just stopped music playback. There's no simple way around this if we continue to use the events, so just call PauseIdleTimer() directly instead. Refs #10467
Merge branch 'master' into rtp