[pvr] refactor: define map type for epg container
[pvr] refactor: use map to improve recording lookup in recordings container
[pvr] refactor: use std::string for recording id to avoid implicit casts
[pvr] cosmetics: fix minor typos in comments
[pvr] add optional support for playing recordings from epg timeline or epg osd
[confluence] add "has recording" marker to programmes having associated recordings in epg timeline view, epg osd and programme search results
[videodb] clear out art from tvshow/seasons that were combined in the v85 database update, as the triggers would not have kicked off
Merge pull request #4999 from jmarshallnz/season_cleanup

[videodb] clear out art from tvshow/seasons that were combined
[videodb] we can't use REPLACE INTO when updating values during UpdateTables as analytics aren't in place. fixes problems where a show path appearing in more than one multipath being duplicated on update (thus failing). fixes #15334
Merge pull request #5002 from jmarshallnz/tvshow_multipath_update_fix

[videodb] we can't use REPLACE INTO when updating values during UpdateTables
[pvr] add ability to delete a whole recordings folder
Merge pull request #4776 from Jalle19/delete-recordings-folder

[pvr] add ability to delete a whole recordings folder
Merge pull request #3900 from vkosh/epg-recording

[pvr] add optional support for playing recordings from epg timeline or epg osd
videoplayer: adapt lateness detection and dropping to buffering
video player: present correct pts to user for a/v sync (after buffering in renderer)
videoplayer: some rework and documentation
renderer: bump buffers to 5
videoplayer: update frametime, it might change due to fps detection
videoplayer: give streams with invalid fps a chance for fps detection
dvdplayer: allow rewinding at end of stream, do a seek after rewind