MythMusic: Attempt to keep playing on error

Previously if the music player encountered an error it would stop playing. Now
it will try to continue playing the next track in the playlist. If it fails to
play 5 tracks in a row then it will still stop though since it's likely there
is some serious problem like an NFS server can't be reached.

This also cleans up the error reporting and changes it to use the new
notification popups.

Fixes #11681.
mythweb does not handle MESSAGEs from the backend

This changes the announce to not receive any events at all.
I could not find a reference to any uses of events with PHP, if
there are some we can turn this into a parameter.
This fixes the recording list on mythweb erroring out with the
option to select the series "UPDATE_FILE_SIZE 4092 2009-09-29T02:58:42 290586314"
if a recording is in progress and the event comes down the socket before
the list of recorded programs.

Refs #11290
MythMusic: Use MythErrorNotification in place of MythNotification

It will be more consistent with other errors. Default time for an error
notification is 10s already.

Fixes #11735.

Signed-off-by: Paul Harrison <pharrison@mythtv.org>
mytharchivehelper: comment out av_estimate_timings() in getFileInfo()

Don't know what has changed but calling that function here is causing a
segfault. Removing it doesn't seem to affect the result at all so just
comment it out for now.
Make the spelling of two strings more consistent with the others.

Thanks to Karl Dietz for reporting this!
Merge branch 'master' of code.mythtv.org:mythtv
mythburn.py: fix ejecting the DVD on some systems and file encoding fixes

Fixes #10535. Refs #4022.

Signed-off-by: Paul Harrison <pharrison@mythtv.org>
Revert "Prevent multiple instances of the same DownloadInfo pointer being added to the cancellation queue"

This reverts commit eb78c7bda7c1859831997a54a3e3eadbb0993dd7.
Revert "Fix MythDownloadManger after 997f7aa10. It was possible for queue and cancel requests to be handled out of order resulting in newly queued downloads being cancelled almost immediately. We avoid this by removing any cancelled downloads  from the download queue to a new cancellation queue, then we clean up the cancelled downloads later without affecting new additions."

This reverts commit 277feb598e975d43c68f4b0a042a3ce6d5fd48bb.
Ensure cancelling a download is done in the same thread it started; take #2

MythDownloadManager::cancelDownload() needs to wait for the cancel to actually occur as some code relies on that behaviour.
This includes the same fix as commit eb78c7bda7c1859831997a54a3e3eadbb0993dd7 "Prevent multiple instances of the same DownloadInfo"

Fixes #11663
Fix potential deadlocks.

when changing channel very quickly, and depending on when a cancel would be called, we could enter various deadlocks.
Do not use QMap::operator[] unless map definitely contains the key

QMap::operator[] would add here a NULL entry in the list of cards which would later cause a null dereference.

Fixes #11279
Fix comment typo
MpegRecorder::StartEncoding: Fix HD-PVR startup with recent kernels

(at least) with the 3.10 kernel, the V4L2_ENC_CMD_START does not reliably start the data flow.  A read() seems to consistently work, though.
MythMusic: re-acquire the pointer to the current MusicMetadata when used

Don't store a pointer to the current MusicMetadata which can become a
stale pointer if for example a playing CD is ejected which removes the
CD tracks from the active playlist. It's much safer to update it each time
it's needed and NULL check the returned pointer.

Refs #11708.
MythMusic: Stop playing if a CD is ejected and we were playing a track from it

Refs #11708.
MythMusic: Don't stop playback when ejecting a CD/DVD drive

Don't assume that all the tracks on the active playlist was removed when we
receive a media changed event for an ejected CD/DVD.

Fixes #11708.
MythMusic: Fix mismatched memory deallocation
Revert "Ensure cancelling a download is done in the same thread it started; take #2"

This reverts commit 229a4267480a59b9a0de02e2d5ad4c9a971b7c9c.
Revert "Revert "Fix MythDownloadManger after 997f7aa10. It was possible for queue and cancel requests to be handled out of order resulting in newly queued downloads being cancelled almost immediately. We avoid this by removing any cancelled downloads  from the download queue to a new cancellation queue, then we clean up the cancelled downloads later without affecting new additions.""

This reverts commit eb3a3382a21c71fd0d1c9ff57aa64480ad03b36a.