Fixes #10649. Add toString() medthod to TeletextDescriptor.

Signed-off-by: Daniel Kristjansson <danielk@cuymedia.net>
Refs #10649. Minor rejigging of [bf7b8386c]; move toString() implementation to .cpp and make more consistend with atsc/scte output.
Refs #10311. Port MythSocket code to ReferenceCounter.
Refs #10311. Port zoneminder use for MythSocket to ReferenceCounter.
Update ./configure qt version check to allow Qt5.

Note: MythTV will not compile, much less run under Qt5. This just makes porting a little bit easier.
Rework ownership of RingBuffer and MythPlayer in transcode

Refs #10616

Signed-off-by: Gavin Hurlbut <ghurlbut@mythtv.org>
Bump API version due to the extensive log changes

*might* be unnecessary, but better safe than sorry.
Qt5 compatibility fixes.
Fix some issues found by cppcheck

Serves me right for not running cppcheck on the branch pre-merge.  There were
some memory leakage opportunities, some uninitialized members and even some
pass by reference recommendations.  Fun.
Remove unused DBCleanup housekeeping job.

The DBCleanup job was added 4 years ago in 9c0fa01f47 as a workaround
for an issue reported in #5482.  However, the job's last run time was
never updated, meaning the job only ever ran a single time on any MythTV
system since it was added.  This seems to indicate that running it as a
daily job is unnecessary.  Furthermore, DB connection handling has been
completely rewritten to use per-thread connection pools, and both MySQL
and Qt-MySQL have changed significantly in that time, so the old
workaround for an old MySQL issue is no longer required.  And
MDBManager::PurgeIdleConnections() is now used by MDBManager's
push/popConnection() functions and MPoolThread::run(), so the
originally-intended function of the patch (cleaning up idle connections
when no longer required) is now handled--more responsively--by the DB
connection pooling code, itself.
Fix transposed args in comment

for HandleQueryFileExists() even though this doesn't seem to be
doxygen/isn't in the docs...
Add log message for 1302 DB upgrade
Disable strict mode in MySQL connections.

We have a lot of code that fails in MySQL strict mode, so ensure that
we're using compatible mode for MythTV DB connections.  This will likely
fix issues such as that fixed in 96cf1cfce , which I couldn't reproduce
without enabling strict mode.

Also changes line setting time_zone to use session, instead of its
synonym, local, to make it easier to find in MySQL docs.
Add support for icc & icpc compilation in configure.
Fix some icc compiler warnings.
Some const fixes to make icc happy.
Eliminate ConstFilterInfo_. There is no constructor which means we need to rely on a gcc c++ extension for initialization.

Technically this extension has been incorporated into c++11 but it makes existing non-gcc compilers like icpc unhappy.
Subtitles: Favor forced tracks for auto-track selection.  Refs #10808

For first-time auto-track selection, we put highest priority on forced
tracks, second priority on user language preference, and third
priority on track order.

This changes the previous behavior only by adding the forced flag to
the criteria.
Subtitles: Be less aggressive about auto-selecting a forced track.

1. Don't favor a forced subtitle track if DefaultCCMode=1 (i.e., the
user already wants subtitles or captions which are likely to also
contain the force subtitles).

2. Don't favor a forced subtitle track if AllowForcedSubtitles=0
(i.e., the user doesn't want to be inflicted with forced subtitles).

3. Only favor a forced track if it is a subtitle track.  (Do any other
track types ever have the forced flag set?)

Note that this still may not be perfect, e.g. a user may end up
auto-displaying cc608 captions where a forced subtitle track is still
needed for the complete experience.
Append prefix to the command line when starting mythlogserver.

We append the installation prefix when starting most commands with
MythSystem to make sure we run the correct ones.  mythlogserver was
recently added and slipped through without using the prefix.