Check exists before listing dir, to avoid produce error log, fix #14210
Add recursive parameter to Playlist.Item directories

Default to false to keep consistency with Frodo
[GUIInfoManager] Cache the audio/video info for video player labels.
The cache period is one frame (move).
[GUIInfoManager] Cache the audio info for music player labels.
The cache period is one frame (move).
Merge pull request #2535 from ace20022/info_cache

[GUIInfoManager] Add a cache for audio and video info labels
changed: Cosmetics
fixed: We should only try to extract/show thumbs/flags for file-like items (fixes #14176)
fixed: The check for determining whether we're done was wrong
fixed: Auto flags didn't work for items without a VideoInfoTag
changed: Improve logic in GetStreamDetails() for items without a (complete) VideoInfoTag
fixed: Setting streamdetails for auto thumbs/flags didn't work for items with incomplete/empty infotags
fixed: Make sure item has a VideoInfoTag before accessing it
Merge pull request #2559 from Tolriq/recursive_playlistitem

json-rpc: add recursive parameter to Playlist.Item directories
upnp: missing playlist & musicvideo nodes for music library
upnp: smartplaylists had incorrect upnp:class
Add support for new libcec method, PowerOnScreensaver
upnp: fixed missing fanart and thumbs for playlist items. fixes #13945
Add isvideo info for slideshow window.
[musicdb] cosmetic: remove CSongMap and just use an std::map instead
[musicdb] cosmetic: make the path / filename index unique