[pvr] fix deviations of selected item between PVR windows and channel OSD

As discussed in our forum (http://forum.xbmc.org/showthread.php?tid=175135&pid=1795411#pid1795411) this fix the deviations of the selected item between the PVR windows and the channel osd.

I also changed the way the current playing channel is used for the selected item. It's only used if we never have valid selected item or if we switch the channel otherwise we use the stored selected item. Thanks Jönke for this suggestion.
[pvr] cosmetics: correct wrong code format
Merge pull request #5401 from xhaggi/pvr-fix-sync-selected-item

[pvr] fix deviations of selected item between PVR windows and channel OSD
omxplayer: Reset codec on flush to stop a stale timestamp from being returned
[rbp] Hardware accelerated resampling

This replaces the format conversion, up/down mixing and resampling code from ActiveAE with a GPU accelerated version.
Should significantly reduce CPU when using paplayer or dvdplayer.

Requires updated firmware
[rbp/omxplayer] When opening a stream don't try to update gui so often
[ffmpeg] Speed up wtv index creation

The index creation is O(N^2) with number of entries (typically thousands).
On a Pi this can take more than 60 seconds to execute for a recording of a few hours.

By replacing with an O(N) loop, this takes virtually zero time
adds GetTvShowSeasons
move AddSeason() public.
adds GetArt function to (video) scraper, allowing art to be fetched given the video identifier.
refresh season art if a new season is found that isn't recorded in the database yet. Fixes #14339
REMOVEME: updated thetvdb.com scraper to support art updates
[omx] Report decoded image name
logging: Add microsecond timer to log messages
videoplayer: adapt lateness detection and dropping to buffering
video player: present correct pts to user for a/v sync (after buffering in renderer)
[hifiberry] Hack: force it to be recognised as IEC958 capable to enable passthrough options
Move the reference-counting of Begin and End calls from DX and GL source files into GUIFontTTF.cpp.
Convert CGUIFontTTFBase::m_vertex to be managed as a std::vector.

Also retired CGUIFontTTFBase::m_vertex_count and
CGUIFontTTFBase::m_vertex_size because these can be derived from vector
member functions.
CGUIFontTTFBase::RenderCharacter can now append to arbitrary vectors of vertices rather than only CGUIFontTTFBase::m_vertex