Implement copying one VideoFrame into another where strides are different

copy(VideoFrame*, VideoFrame*) is buggy in that it simply copy the content of one frame into another, ignoring resolution and stride size.

For now, only handle copying a frame into another where the resolution is the same but the strides are different.
This is required for VAAPI Null video output as typically, the frame extracted doesn't have a stride equal to the width of the video, and instead is 32 bytes aligned.

Code could be optimised and SSE accelerated, to come

(cherry picked from commit 520b8bceb57235bba397fe7c15e12bc25f365ca5)
Fix VAAPI accelerated PiP

PiP wasn't possible with VAAPI playback. There was the issue that only one VAAPI context was allowed at a time, and then the frame retrieved couldn't be used as-is (fixed with 520b8bceb57235bba397fe7c15e12bc25f365ca5)

Drop VAAPI NV12 frame format support, the conversion to YV12 as it is is buggy and from a quick search/test, all VAAPI backends support either YV12 or YUV420P format, so there's no use for it anyway.

(cherry picked from commit ef54e6602da8e64b155337929e626030a62c835f)
Internet Content: Fix manual update of RSS subscriptions

When triggered from MythFrontend, an RSS update would never complete, leaving
a busy dialog open forever.

(cherry picked from commit b5ca595879cdce2c400b79b1a0b543734295383c)
Enable forward-only cursors with all prepared database connections.

QT docs indicate that there are significant speed ups and a reduction
in memory usage by enabling forward-only cursors. Since mysql only
supports forward only cursors QT must cache the entire result set in
memory in order to support bi-directional iteration and seeking. By
explicitly telling QT that we only care about iterating forward
through the result set QT can avoid this caching.

Unconditionally enable this since all existing uses of the database
iterate forward over the result set.

(cherry picked from commit 18511f814933c5f4494f4afd97f159ef2e3bdeed)