MythMusic string consistency fixes.

Closes #10356

Signed-off-by: Nicolas Riendeau <nriendeau@mythtv.org>
Added a -C (collection) option

Log:
    Added the -C (collection) option with corresponding XML output
    Add a <collectionref> XML tag to Search and Query XML output

Signed-off-by: Robert McNamara <rmcnamara@mythtv.org>
Merge branch 'master' of github.com:/MythTV/mythtv
Fix recording deletion to always stop recording too.

If AutoExpireInsteadOfDelete was enabled and a recording was still in
progress when it was "deleted", it would keep recording.  There was
code in MainServer::DoHandleDeleteRecording() to stop the recording,
but because of a bad assumption, that code never got executed.  This
change unconditionally stops the recording.  The code for the
AutoExpireInsteadOfDelete disabled case already does this.

The bad assumption was that the recstatus was accurate and would be
either rsRecording or rsTuning for an in-progress recording.  Because
only the chanid and recstartts are passed to the backend for delete
recording requests, the remaining information needed to populate the
recinfo object is pulled from the recorded table and recstatus is
unconditinally set to rsRecorded.

This same bad assumption is made in a few other places.  It's possible
that other "finished recording" processing masks any other problems
caused by it.  The proper fix is probably to pass a complete
ProgramInfo or RecordingInfo object to the backend.  I'll let that
wait until 0.26 or later unless another problem is noticed.
Fix depends behaviour with button list. Also restrict depends scope to siblings and exclude standalone widgets in base files from the depends map.
Add build dependency to audio headers
Add Collection support to developmental tmdb3 grabber.
Add Collection support to developmental tmdb3 grabber.
Metadata Classes: Support lookup of series level artwork.

This is essentially a bugfix at present-- when a recording/program
did not have a 1x01 episode defined, as many long-running programs
do not (news programs of many varieties, many BBC shows, etc), the
recording lookups just plain failed.  This happened in spite of the
fact that there may have been series level artwork.

For those with many recording rules for shows like the above, the
experience with the new metadata classes should be vastly improved.
Where nothing was found before, it should be possible to get inetrefs,
find generic series artwork, etc.

This same functionality will be the basis for future new UI/a brand
new video library based upon the concept of a collection.  A TV series
would be one collection, the "Star Wars" movies might be another, etc.,
all with metadata at both the series, season, and episode level.

Bumps plugin API, varios service APIs, etc., so make distclean.
Better handling of exiting playback of a program in use elsewhere.

If a recording contains a cutlist with a final cut region at the end,
and EndOfRecordingExitPrompt is set to true, and the recording is in
use elsewhere (e.g., playing on another frontend) when the end is
reached, it gets into a loop of popping up the "can't delete because
it's already in use" dialog while the final cut region continues
playing in the background.  This is fixed by exiting without waiting
for user input in that situation.
Fix copying of recording rule inetref to recordings.

Uses the same fix for generic episode lookup-- I swear this used to work...
Correct handling of IP addresses in Python bindings.

This adds support for proper forward and reverse host resolution using
the new BackendServerIP6 setting.
Fix prefix ++ for non-primitives (cppcheck)
Add hdmi audio device type detection

This commit add ELD (EDID Like Data) detection. It allows myth to detect the various capabilities of the audio device connected via HDMI or DisplayPort.
At present, this information is informative only (except for StereoPCM) and is displayed in the device description in the Audio Settings screen.
It will also show if a device is connected or not on the HDMI or DP port making it much easier to identify which HDMI ALSA device to use (there are often 3 presented, when only one is actually working)

To benefit from this option, you must run alsa drivers >= 1.0.25 or linux kernel 3.2 or later.

StereoPCM advanced user option is now detected automatically if the device ELD is available.
Setting it in the advanded settings will only override this option. As the worse side effect should it be detected improperly is that AC3 re-encoding will occur; I believe the benefits overweigh the downside (if there are any).

This commit includes other minor cosmetic fixes, such as allowing translating the default audio device names in the audio setup screen.

In the future, should ELD be available, the aim is to completely remove the use for audio user settings when using HDMI or DP audio.
Fix visibility of digital options in the audio setup screen.

If we are certain that the audio device doesn't allow passthrough, do not mark TrueHD, DTS-HD or E-AC3 as being available
Always display StereoPCM option when digital audio is available.

It was previously only visible if both LPCM and digital were available. This allows to always override it, which is useful should ELD becomes temporarily available
Merge branch 'master' of github.com:MythTV/mythtv
Remove include which was randomly added by Kdevelop
Fix PPC build

Was missing a #include "mythconfig.h"
Merge branch 'master' of github.com:MythTV/mythtv