metadata: return both movie and TV results when in non-automatic mode

This allows not having to fiddle with season or episode #. TV or movie entries are presented first depending on the guessed type.
We only do so if multiple results were already found
metadata: also look for artwork when scanning a single recording

no point waiting a day or having to run a full artwork scan
frontend: add search abilities to “change recording metadata” screen.

This will allow to search for inetref and set season/episode as well as subtitle and description.
Themes will have to be updated to enjoy this functionality by adding a “query_button” button.
mythtranscode: fix incorrect memory allocation

Fixes #12213
mythtranscode: always check if audio stream still exists

This doesn’t cater for when there’s a change in audio format or new audio stream, but it prevents the crash when that occurs.

Fixes #12207
Revert "mythtranscode: fix incorrect memory allocation"

this would leak as av_copy_packet doesn't free the destination packet first

This reverts commit b04e14b6a919578865a8771a64e8fadfd08f3fb0.
mythtranscode: fix incorrect memory allocation

Use proper FFmpeg API to allocate AVPacket
Fixes #12213
SendReceiveStringList: handle the UNKNOWN_COMMAND response properly

Change it to return false and log the error rather than return true
and carry on as though nothing is wrong.

This should never happen in reality but if it does SendReceiveStringList
should not return true and carry on as normal since we don't handle that
well in a lot of places.
corecontext: Add IsThisBackend API

Will determine if we are a backend, and we are the requested host
remotefile: use IsThisBackend API

We really want each backend to look after the hostname they are managing, and not forward everything through the master backend.
MainServer: send an ERROR response back for malformed commands

The protocol server was not sending any response back for any bad commands
received such as commands with an invalid number of parameters. This caused
any client to wait for a reply which would never come. The FE for example
would lock up for 30 seconds waiting for a reply if SendReceiveStringList()
was called from the UI thread.
Merge remote-tracking branch 'upstream/master'

Conflicts:
	mythtv/programs/mythfrontend/playbackbox.h