Kodi v18 (Leia) changelog: Difference between revisions

From Official Kodi Wiki
Jump to navigation Jump to search
(Add Music section)
(26 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{mininav|[[Releases]] {{l2| [[Leia]] }} }}
{{mininav|[[Releases]] {{l2| [[Leia]] }} }}


{{notice|Kodi v17 (Krypton) final has just been released, so please keep in mind that a final non-alpha/beta v18 (Leia) release is still far far away into the future. As such, these new features/functions and API changes is a placeholder containing changes to the current Kodi mainline (the git master tree repository on GitHub). It is a very much a work in progress, this is only listing changes commited to the master branch after Jarvis branching, and many many many features/functions and API additions, alterations or removal are still subject to future change.}}
{{notice|Kodi's journey via non-alpha/beta v18 (Leia) releases is currently underway. As such, these new features/functions and API changes is a placeholder containing changes to the current Kodi mainline (the git master tree repository on GitHub). This is listing changes committed to the master branch after Krypton branching. The many features/functions and API additions, alterations or removal are only subject to change during the Alpha stages. The Beta stage is all about stability and bug fixing. }}
{{incomplete}}
{{incomplete}}
{{future|18}}
{{future|18}}
Line 7: Line 7:
{{see also|Kodi v18 (Leia) FAQ|Leia API changes|Releases}}
{{see also|Kodi v18 (Leia) FAQ|Leia API changes|Releases}}


This is a placeholder and Kodi Wiki copy of the condensed changelog for the future Kodi v18.x version (codename: "Leia") releases with a summery of the most important core features and functions as well as other notable changes to key areas of the application software or its user interface.
This is the Kodi Wiki version of a condensed changelog for the future Kodi v18.x version (codename: "Leia") releases with a summary of the most important core features and functions as well as other notable changes to key areas of the application software or its user interface. Please note that this condensed changelog version is not meant bug-fixes, nor minor refactoring or cosmetic changes.  


== Changelog ==
== Changelog ==


=== Gaming (Games interface and Game Clients)===
=== Gaming (Games interface and Game Clients)===
* Added a RetroPlayer player core supporting game clients as well as emulator cores via libretro API<ref name="RetroPlayer">RetroPlayer http://forum.kodi.tv/showthread.php?tid=164725</ref><ref>http://github.com/xbmc/xbmc/pull/11022</ref>
Note! Also see "Input System (Input Manager and Input APIs" section for Input System related to game controllers
* Added a "[[Games]]" window to GUI (games are managed using a basic file browser as a game library does not exist yet)
* Added a RetroPlayer player core supporting [[Game_Add-ons|game clients addons]] as well as emulator cores via [[libretro]] API<ref name="RetroPlayer">RetroPlayer http://forum.kodi.tv/showthread.php?tid=164725</ref><ref>http://github.com/xbmc/xbmc/pull/11022</ref>
* Added extentions to Kodi's Addons AP to support Game Client Addons, supporting Kodi's VFS (Virtual File System), etc.<ref name="RetroPlayer"/>
* Added extentions to Kodi's Addons AP to support Game Client Addons, supporting Kodi's VFS (Virtual File System), etc.<ref name="RetroPlayer"/>
* Added support for Game Client Addons as new type of addons with just-in-time emulator installation<ref name="RetroPlayer"/>
* Added support for Game Client Addons as new type of addons with just-in-time emulator installation<ref name="RetroPlayer"/>
Line 22: Line 24:
* Added support for in-game (save RAM) saves<ref>http://github.com/xbmc/xbmc/pull/11380</ref>
* Added support for in-game (save RAM) saves<ref>http://github.com/xbmc/xbmc/pull/11380</ref>
* Added support for Keyboard players via Joystick Emulation<ref name="RetroPlayer"/>
* Added support for Keyboard players via Joystick Emulation<ref name="RetroPlayer"/>
* Added support for libretro API and game cores (emulators and games) that support it
* Added Game API acbstraction for game controller multitaps (a.k.a. hubs) including topology GUI display<ref>https://github.com/xbmc/xbmc/pull/13499</ref>
* Added Game API acbstraction to support gamepad/joystick remapping for games (per game-addon)
* Added Game API acbstraction to support keyboard remapping for games (per game-addon)<ref>https://github.com/xbmc/xbmc/pull/13374</ref>
* Added Game API acbstraction to support mouse remapping for games (per game-addon)<ref>https://github.com/xbmc/xbmc/pull/13482</ref>
* Added support for libretro API and game cores (emulators and games) that support it as binary addons
* Added [[Game_Add-ons|game clients addons]] for many popular third-party game console emulators and native open source games *
* Added [[Game_Add-ons|game clients addons]] for many popular third-party game console emulators and native open source games *
** ''* [[Game_Add-ons|Game clients addons]] for Kodi is changing quickly so checkout the [[Game_Add-ons|game clients addons]] article for a current list''
** ''* [[Game_Add-ons|Game clients addons]] for Kodi is changing quickly so checkout the [[Game_Add-ons|game clients addons]] article for a current list''
Line 28: Line 34:


=== Live TV and PVR (Personal Video Recorder) ===
=== Live TV and PVR (Personal Video Recorder) ===
* Major GUI actions refactoring to eliminate duplicate and dead code. Add context menu support for Estuary PVR home screen widgets <ref>https://github.com/xbmc/xbmc/pull/10870</ref>
* Added support for RDS (Radio Data System) for radio channels if the PVR backend client support RDS
* Guide window: Get rid of obsolete views "channel", "now" and "next" <ref>https://github.com/xbmc/xbmc/pull/10838</ref>
* Added new settings for 'Startup action' and add 'Play TV/Radio <ref>https://github.com/xbmc/xbmc/pull/12548</ref>
* Core: Refactor and fix "play minimized" settings handling <ref>https://github.com/xbmc/xbmc/pull/11203</ref>
* Added support for global direct channel number input & global unique channel numbers<ref>https://github.com/xbmc/xbmc/pull/13135</ref><ref>https://github.com/xbmc/xbmc/pull/11434</ref>
* Guide, channel, video fullscreen, music visualisation window: Direct channel number input. <ref>https://github.com/xbmc/xbmc/pull/11434</ref>
** Added support for no delay on switch to previous channel with key 0 when using direct channel number input<ref>https://github.com/xbmc/xbmc/pull/13232</ref>
* Settings: Remove setting 'hide connection lost warning' <ref>https://github.com/xbmc/xbmc/pull/11500</ref>
* Added context menu support for Estuary (skin) PVR home screen widgets <ref>https://github.com/xbmc/xbmc/pull/10870</ref>
* Search dialog: Refactor and complete implementation of EPG search filter <ref>https://github.com/xbmc/xbmc/pull/11570</ref>
* Added percent played progress bar to PVR info panel (for recordings) in Estuary (skin)<ref>https://github.com/xbmc/xbmc/pull/13338</ref>
* Timer settings dialog: Prefill recordings folder with timer title <ref>https://github.com/xbmc/xbmc/pull/11679</ref>
* Added Info support to recently played channel widget to Estuary (skin) home screen <ref>https://github.com/xbmc/xbmc/pull/12254</ref>
* Added episode name to Live TV, recordings OSD sub label, and cleanup seekbar for Live TV in Estuary (skin) <ref>https://github.com/xbmc/xbmc/pull/12306</ref>
* Added Season/Episode info in Guide window and dialog in Estuary (skin)<ref>https://github.com/xbmc/xbmc/pull/13300</ref>
* Added support for next and previous buttons in OSD Timeshift window<ref>https://github.com/xbmc/xbmc/pull/14387</ref>
* Added feature to prefill recordings folder with timer title in the timer settings dialog<ref>https://github.com/xbmc/xbmc/pull/11679</ref>
* Added support for radio channel groups to the channelgroup manager<ref>https://github.com/xbmc/xbmc/pull/11877</ref>
* Added support for a 'Smart selection' of EPG events feature to the guide window<ref>https://github.com/xbmc/xbmc/pull/11782</ref>
* Added 'Go to date' context menu item to the guide window<ref>https://github.com/xbmc/xbmc/pull/13282</ref>
* Added support for channel groups selector to the guide window<ref>https://github.com/xbmc/xbmc/pull/13364</ref>
* Added possibility to switch between horizontal and vertical epg grid view to the guide window <ref>https://github.com/xbmc/xbmc/pull/11958</ref>
* Added support to sort content by channel number/channel name/last played, support sort order to the Guide window<ref>https://github.com/xbmc/xbmc/pull/14231</ref>
* Added support next/previous chapter in PVR recordings<ref>https://github.com/xbmc/xbmc/pull/13164</ref>
* Improved PVR seekbar and info dialog in Estuary (skin) <ref>https://github.com/xbmc/xbmc/pull/13158</ref>
* Improved PVR info panel, info dialog, and recordings window in Estuary (skin)<ref>https://github.com/xbmc/xbmc/pull/12416</ref><ref>https://github.com/xbmc/xbmc/pull/13255</ref>
* Improved support for enabling multiple PVR client addons<ref>https://github.com/xbmc/xbmc/pull/12959</ref>
* Improved support for for subchannel numbers support (ATSC)<ref>https://github.com/xbmc/xbmc/pull/13069</ref>
* Improved OSD Timeshift GUI<ref>https://github.com/xbmc/xbmc/pull/14316</ref><ref>https://github.com/xbmc/xbmc/pull/14386</ref>
* Improved the guide window for better consistency and readability <ref>https://github.com/xbmc/xbmc/pull/13402</ref>
* Changed GUI actions to eliminate duplicate and dead code (major GUI refactoring for PVR and LiveTV)
* Changed implementation of EPG search filter (EPG search dialog) completely<ref>https://github.com/xbmc/xbmc/pull/11570</ref><ref>https://github.com/xbmc/xbmc/pull/12001</ref>
* Changed Guide Window removing obsolete views "channel", "now" and "next"<ref>https://github.com/xbmc/xbmc/pull/10838</ref>
* Changed "play minimized" settings handling <ref>https://github.com/xbmc/xbmc/pull/11203</ref>
* Changed 'epg.lingertime' to an official setting, remove the respective advanced setting<ref>https://github.com/xbmc/xbmc/pull/12740</ref>
* Changed shared channel selection into an optional setting<ref>https://github.com/xbmc/xbmc/pull/13237</ref>
* Removed obsolete and unused setting 'pvrplayback.scantime' <ref>https://github.com/xbmc/xbmc/pull/12800</ref>
* Removed channel guide button from EPG event info dialog, add 'channel guide' to context menu<ref>https://github.com/xbmc/xbmc/pull/12526</ref>
* Removed setting 'hide connection lost warning' <ref>https://github.com/xbmc/xbmc/pull/11500</ref>
* Removed non-working recording settings defaults <ref>https://github.com/xbmc/xbmc/pull/11746</ref>
* Recordings window: Content view filter <ref>https://github.com/xbmc/xbmc/pull/11704</ref>
* Recordings window: Content view filter <ref>https://github.com/xbmc/xbmc/pull/11704</ref>
* Settings: Remove non-working recording settings defaults <ref>https://github.com/xbmc/xbmc/pull/11746</ref>
* PVR-Addon API changes <ref>https://github.com/xbmc/xbmc/pull/12028</ref><ref>https://github.com/xbmc/xbmc/pull/12303</ref><ref>https://github.com/xbmc/xbmc/pull/12552</ref><ref>https://github.com/xbmc/xbmc/pull/12609</ref><ref>https://github.com/xbmc/xbmc/pull/12660</ref><ref>https://github.com/xbmc/xbmc/pull/12689</ref><ref>https://github.com/xbmc/xbmc/pull/12755</ref><ref>https://github.com/xbmc/xbmc/pull/13228</ref><ref>https://github.com/xbmc/xbmc/pull/13720</ref><ref>https://github.com/xbmc/xbmc/pull/14002</ref><ref>https://github.com/xbmc/xbmc/pull/14086</ref>
* Guide window: 'Smart selection' of epg events. <ref>https://github.com/xbmc/xbmc/pull/11782</ref>
* Added, updated, and improved PVR backend clients addons for popular third-party external [[PVR backend]] platforms:
* Channelgroup manager: Add support for radio channel groups <ref>https://github.com/xbmc/xbmc/pull/11877</ref>
** New: [[Add-on:Zattoo PVR Client|Zattoo PVR Client]] PVR Addon backend client maintained and available from Kodi's community
* Guide window: Add possibility to switch between horizontal and vertical epg grid view <ref>https://github.com/xbmc/xbmc/pull/11958</ref>
** New: [[Add-on:Teleboy PVR Client|Teleboy PVR Client]] PVR Addon backend client maintained and available from Kodi's community
* Search window: improvements and fixes <ref>https://github.com/xbmc/xbmc/pull/12001</ref>
** New: [[Add-on:Sledovanitv.cz PVR Client|Sledovanitv.cz PVR Client]] PVR Addon backend client maintained and available from Kodi's community
* Estuary home screen: Add Info support to recently played channel widget <ref>https://github.com/xbmc/xbmc/pull/12254</ref>
* Estuary: Add episodename to live tv and recordings osd sub label, cleanup seek bar for live tv <ref>https://github.com/xbmc/xbmc/pull/12306</ref>
* Estuary: PVR info dialog, recordings window: cleanup and extend <ref>https://github.com/xbmc/xbmc/pull/12416</ref>
* Drop 'channel guide' button from epg event info dialog, add 'channel guide' to context menu <ref>https://github.com/xbmc/xbmc/pull/12526</ref>
* Settings: Introduce new setting 'Startup action' and add 'Play TV/Radio <ref>https://github.com/xbmc/xbmc/pull/12548</ref>
* Settings: Make 'epg.lingertime' an official setting, remove the respective advanced setting <ref>https://github.com/xbmc/xbmc/pull/12740</ref>
* Setting: Remove obsolete and unused setting 'pvrplayback.scantime' <ref>https://github.com/xbmc/xbmc/pull/12800</ref>
* Core: Fixes/Improvements for multiple enable PVR client addons <ref>https://github.com/xbmc/xbmc/pull/12959</ref>
* Core: Fixes/Improvements for subchannel numbers support (ATSC) <ref>https://github.com/xbmc/xbmc/pull/13069</ref>
* Core: Global direct channel number input & global unique channel numbers <ref>https://github.com/xbmc/xbmc/pull/13135</ref>
* Database: Fix error "Abort due to constraint violation. Query: INSERT INTO channels..." <ref>https://github.com/xbmc/xbmc/pull/13150</ref>
* Estuary: Rework PVR seekbar + Fix PVR info dialog <ref>https://github.com/xbmc/xbmc/pull/13158</ref>
* Core: Make next/previous chapter work for PVR recordings <ref>https://github.com/xbmc/xbmc/pull/13164</ref>
* Direct channel number input: No delay on switch to previous channel with key 0 <ref>https://github.com/xbmc/xbmc/pull/13232</ref>
* Settings: Make shared channel selection optional <ref>https://github.com/xbmc/xbmc/pull/13237</ref>
* Estuary: PVR info panel cleanup <ref>https://github.com/xbmc/xbmc/pull/13255</ref>
* Guide window: 'Go to date' context menu item <ref>https://github.com/xbmc/xbmc/pull/13282</ref>
* Estuary: Season/Episode info in Guide window and dialog <ref>https://github.com/xbmc/xbmc/pull/13300</ref>
* Estuary: Add percent played progress bar to PVR info panel (for recordings) <ref>https://github.com/xbmc/xbmc/pull/13338</ref>
* Guide window: Channel groups selector <ref>https://github.com/xbmc/xbmc/pull/13364</ref>
* Guide window: Tweaks for more consistency and readability <ref>https://github.com/xbmc/xbmc/pull/13402</ref>
* PVR-Addon API changes <ref>https://github.com/xbmc/xbmc/pull/12028</ref><ref>https://github.com/xbmc/xbmc/pull/12303</ref><ref>https://github.com/xbmc/xbmc/pull/12552</ref><ref>https://github.com/xbmc/xbmc/pull/12609</ref><ref>https://github.com/xbmc/xbmc/pull/12660</ref><ref>https://github.com/xbmc/xbmc/pull/12689</ref><ref>https://github.com/xbmc/xbmc/pull/12755</ref><ref>https://github.com/xbmc/xbmc/pull/13228</ref>
* Added, updated, and improved PVR backend clients addons for all popular third-party external [[PVR backend]] platforms:
** New: Zattoo PVR Client PVR Addon backend client maintained and available from Kodi's community
** New: Add-on:Teleboy PVR Client PVR Addon backend client maintained and available from Kodi's community
** [[Add-on:PVR Demo Client|PVR Demo Client]] dummy addon with fake (method stub) [[PVR backend]] for [[PVR]] skinning and regression testing
** [[Add-on:PVR Demo Client|PVR Demo Client]] dummy addon with fake (method stub) [[PVR backend]] for [[PVR]] skinning and regression testing
** [[Add-on:IPTV Simple Client|IPTV Simple Client]] PVR Addon backend client maintained and available from Kodi's community
** [[Add-on:IPTV Simple Client|IPTV Simple Client]] PVR Addon backend client maintained and available from Kodi's community
Line 88: Line 96:


=== Add-ons Framework, API, and Manager ===
=== Add-ons Framework, API, and Manager ===
For full changelogs of all Addons APIs, see [[Leia API changes]], [http://forum.kodi.tv/forumdisplay.php?fid=174 JSON-RPC], and [http://forum.kodi.tv/forumdisplay.php?fid=26 Add-ons] Development Forums
For full changelogs of all Addons APIs, see [[Leia API changes]], [https://forum.kodi.tv/showthread.php?tid=324598 JSON-RPC], and [http://forum.kodi.tv/forumdisplay.php?fid=26 Add-ons] Development Forums
* Implemented a Python 3 interpreter inside Kodi (plus enforcing Python 2 & 3 compatibility in Leia addon repository)<ref>https://kodi.tv/article/attention-addon-developers-migration-python-3</ref>
* Implemented online binary addon repository from which Kodi can now automatically installs/updates binary addon<ref>https://kodi.tv/article/kodi-v18-binary-add-ons-repository</ref><ref>https://github.com/xbmc/repo-binary-addons</ref>
* Major refactoring of Kodi's core handling and GUI management of binary addons<ref>http://github.com/xbmc/xbmc/pulls?q=label%3A%22Binary+Addons%22+is%3Aclosed</ref>
* Major refactoring of Kodi's core handling and GUI management of binary addons<ref>http://github.com/xbmc/xbmc/pulls?q=label%3A%22Binary+Addons%22+is%3Aclosed</ref>
* Added framework to support VFS (Virtual File System) as binary addons<ref>http://github.com/xbmc/xbmc/pull/8966</ref>
* Added framework to support VFS (Virtual File System) as binary addons<ref>http://github.com/xbmc/xbmc/pull/8966</ref>
Line 108: Line 118:
* Changed to new addon gui interface for list items to use on addon window<ref>https://github.com/xbmc/xbmc/pull/12214</ref>
* Changed to new addon gui interface for list items to use on addon window<ref>https://github.com/xbmc/xbmc/pull/12214</ref>
* Changed service addons to use event handlers instead of synchronous addon hooks<ref>https://github.com/xbmc/xbmc/pull/12370</ref>
* Changed service addons to use event handlers instead of synchronous addon hooks<ref>https://github.com/xbmc/xbmc/pull/12370</ref>
=== Input System (Input Manager and Input APIs) ===
* Improved the input manager and input API system for keyboards, mouses, and game controllers<ref name="Controller input system">PR #8807 Controller input system http://github.com/xbmc/xbmc/pull/8807</ref>
* Updated "Peripheral Addons" for game controllers, gamepads, joysticks, and input peripherals profiles (in Kodi-game repo<ref>http://github.com/kodi-game/ kodi-game repo on GitHub</ref>):
* Updated "Peripheral Addons" for game controllers, gamepads, joysticks, and input peripherals profiles (in Kodi-game repo<ref>http://github.com/kodi-game/ kodi-game repo on GitHub</ref>):
** [http://github.com/xbmc/peripheral.joystick Joystick Controller Addon]
** [http://github.com/xbmc/peripheral.joystick Joystick Controller Addon]
Line 113: Line 126:
** [http://github.com/kodi-game/peripheral.steamcontroller Steam Controller (gamepad) Addon]
** [http://github.com/kodi-game/peripheral.steamcontroller Steam Controller (gamepad) Addon]
** [http://github.com/kodi-game/kodi-game-controllers/tree/master/addons/game.controller.default Default Game Controller Addon  (reference game controller addon based on Xbox 360 gamepad)]
** [http://github.com/kodi-game/kodi-game-controllers/tree/master/addons/game.controller.default Default Game Controller Addon  (reference game controller addon based on Xbox 360 gamepad)]
*** [http://github.com/kodi-game/kodi-game-controllers/tree/master/addons/game.controller.ps PlayStation Game Controller Addon]
*** [https://github.com/kodi-game/controller-topology-project/tree/master/addons PlayStation Game Controller Addon]
*** [http://github.com/kodi-game/kodi-game-controllers/tree/master/addons/game.controller.nes Nintendo NES Game Controller Addon]
*** [https://github.com/kodi-game/controller-topology-project/tree/master/addons Nintendo NES Game Controller Addon]
*** [http://github.com/kodi-game/kodi-game-controllers/tree/master/addons/game.controller.snes Nintendo SNES Game Controller Addon]
*** [https://github.com/kodi-game/controller-topology-project/tree/master/addons Nintendo SNES Game Controller Addon]
*** [http://github.com/kodi-game/kodi-game-controllers/tree/master/addons/game.controller.n64 Nintendo N64 Game Controller Addon]
*** [https://github.com/kodi-game/controller-topology-project/tree/master/addons Nintendo N64 Game Controller Addon]
*** [http://github.com/kodi-game/kodi-game-controllers/tree/master/addons/game.controller.gba Nintendo GBA Game Controller Addon]
*** [https://github.com/kodi-game/controller-topology-project/tree/master/addons Nintendo GBA Game Controller Addon]
*** [http://github.com/kodi-game/kodi-game-controllers/tree/master/addons/game.controller.genesis Sega Genesis Game Controller Addon]
*** [https://github.com/kodi-game/controller-topology-project/tree/master/addons Sega Genesis Game Controller Addon]
*** [http://github.com/kodi-game/kodi-game-controllers/tree/master/addons/game.controller.dreamcast Sega Dreamcast Game Controller Addon]
*** [https://github.com/kodi-game/controller-topology-project/tree/master/addons Sega Dreamcast Game Controller Addon]
* ?
* ?


Line 164: Line 177:
** [http://github.com/peak3d/inputstream.smoothstream SmoothStream InputStream Addon for MS-SSTR (SmoothStreamingMedia) Smooth Streaming Protocol]  
** [http://github.com/peak3d/inputstream.smoothstream SmoothStream InputStream Addon for MS-SSTR (SmoothStreamingMedia) Smooth Streaming Protocol]  
** [http://github.com/mapfau/inputstream.nxmsl NXMSL InputStream Addon for Netflix style manifests over MSL]
** [http://github.com/mapfau/inputstream.nxmsl NXMSL InputStream Addon for Netflix style manifests over MSL]
* Updated FFmpeg multimedia codec and demux libraries to stable branch release version [http://www.ffmpeg.org/download.html#release_3.3.2 FFmpeg 3.3 (3.3.2)]<ref>http://git.videolan.org/?p=ffmpeg.git;a=blob_plain;f=Changelog;hb=release/3.3.2 FFmpeg 3.3.2 release changelog</ref><ref>https://github.com/xbmc/xbmc/pull/12358</ref>
* Updated FFmpeg multimedia codec and demux libraries to stable branch release version [http://www.ffmpeg.org/download.html#release_4.0.2 FFmpeg 4.0 (4.0.2)]<ref>http://git.videolan.org/?p=ffmpeg.git;a=blob_plain;f=Changelog;hb=release/4.0.2 FFmpeg 4.0.2 release changelog</ref><ref>https://github.com/xbmc/xbmc/pull/14212</ref>
* Removed certain audio codecs from core and made them into audio decoder and audio encoder add-ons
* Removed certain audio codecs from core and made them into audio decoder and audio encoder binary add-ons
* Removed certain video codecs from core and made them into video decoder add-ons<ref name="Addon video codec implementation"/>
* Removed certain video codecs from core and made them into video decoder binary add-ons<ref name="Addon video codec implementation"/>
* Removed certain image codecs from core and made them into image decoder add-ons
* Removed certain image codecs from core and made them into image decoder binary add-ons
* ?
* ?


=== Library ===
=== General Library ===
* Addded support to use the Favourites function in context menus<ref>https://github.com/xbmc/xbmc/pull/11967</ref>
* Added support to use the Favourites function in context menus<ref>https://github.com/xbmc/xbmc/pull/11967</ref>
* Added support for context menus to favourites home screen widget<ref>https://github.com/xbmc/xbmc/pull/11929</ref>
* Added support for context menus to favourites home screen widget<ref>https://github.com/xbmc/xbmc/pull/11929</ref>
* Added support for  processing of WRITER tag for ID3 v2, Vorbis and APE formats<ref>https://github.com/xbmc/xbmc/pull/11735</ref>
* Added support for sorting using artist sort name tags in music<ref>https://github.com/xbmc/xbmc/pull/11738</ref>
* Added support to "Sort By Date Added" in Music Video title node<ref>https://github.com/xbmc/xbmc/pull/12495</ref>
* Added support to "Sort By Date Added" in Music Video title node<ref>https://github.com/xbmc/xbmc/pull/12495</ref>
* Changed to never cache listing of PVR directories on library scans<ref>https://github.com/xbmc/xbmc/pull/11761</ref>
* ?


=== Music ===
=== Music Library ===
* Fix- Issue of empty Song Info in Party Mode, Playlist and Singles node. <ref>https://github.com/xbmc/xbmc/pull/11286</ref>
* Added an option to rescan the music file tags for existing items in the library <ref>https://github.com/xbmc/xbmc/pull/11557</ref>
* Fix- Crash that occurs when trying to view a current playlist with a large number of items <ref>https://github.com/xbmc/xbmc/pull/11475</ref>
* Added processing of WRITER tag for ID3 v2, Vorbis and APE formats <ref>https://github.com/xbmc/xbmc/pull/11735</ref>
* Fix- User rating label on music OSD not updating for "no rating" in some instances <ref>https://github.com/xbmc/xbmc/pull/11513</ref>
* Added processing of ARTISTSORT (TSOP), ALBUMARTISTSORT (TS02) and COMPOSERSORT (TSOC) tags to provide a sort name for artists. <ref>https://github.com/xbmc/xbmc/pull/11738</ref>
* Fix- Freeze on opening some internet radio station streams, by avoiding reading ID3 tags from Shoutcasts <ref>https://github.com/xbmc/xbmc/pull/11530</ref><ref>https://github.com/xbmc/xbmc/pull/11759</ref><ref>https://github.com/xbmc/xbmc/pull/11771</ref>
* Added a new dialog for selection of both artist and album scraper addons, and their settings.<ref>https://github.com/xbmc/xbmc/pull/12987</ref><ref>https://github.com/xbmc/xbmc/pull/12943</ref>
* Fix- The use of BAND and ENSEMBLE (Vorbis and APE) tags. <ref>https://github.com/xbmc/xbmc/pull/11735</ref>
* Added additional artist data that Musicbrainz provides: type (person, group, orchestra, choir etc.), gender, and disambiguation comments that help to differentiate artists with the same name <ref>https://github.com/xbmc/xbmc/pull/12963</ref>
* Fix- Hang with music library clean, both on library update, and from settings menu, on very large MySQL (or MariaDB) databases.<ref>https://github.com/xbmc/xbmc/pull/11803</ref><ref>https://github.com/xbmc/xbmc/pull/13117</ref>
* Added an Artist Information Folder - a single location for artist artwork and nfo. This solves numerous issues related to artwork, artist data import and general folder and file structure <ref>https://github.com/xbmc/xbmc/pull/12891</ref>
* Fix- Issue of replay gain not being applied if peak value was missing, and also removed the avoid clipping setting. <ref>https://github.com/xbmc/xbmc/pull/11868</ref><ref>https://github.com/xbmc/xbmc/pull/11865</ref>
* Added support for Extended Artwork, making the local art that is picked up automatically on scan configurable. <ref>https://github.com/xbmc/xbmc/pull/13352</ref><ref>https://github.com/xbmc/xbmc/pull/13848</ref><ref>https://github.com/xbmc/xbmc/pull/13491</ref><ref>https://github.com/xbmc/xbmc/pull/13101</ref><ref>https://github.com/xbmc/xbmc/pull/13871</ref>
* Fix- Clean On Update which prevented scraping in some circumstances <ref>https://github.com/xbmc/xbmc/pull/11609</ref>
* Added an option to prefer scraped album covers to embedded images <ref>https://github.com/xbmc/xbmc/pull/13812</ref>
* Fix- Merge function of scraped Album Type & Label <ref>https://github.com/xbmc/xbmc/pull/12216</ref>
* Added a filter to sort music items by media source <ref>https://github.com/xbmc/xbmc/pull/14012</ref><ref>https://github.com/xbmc/xbmc/pull/14082</ref>
* Fix- Throttling of Musicbrainz requests for songs that have no MusicBrains ID's <ref>https://github.com/xbmc/xbmc/pull/12402</ref>
* Improved use of BAND and ENSEMBLE (Vorbis and APE) tags. <ref>https://github.com/xbmc/xbmc/pull/11735</ref>
* Fix- Missing "* Item Folder" entry when browsing for artist fanart from Artist Info Dialog <ref>https://github.com/xbmc/xbmc/pull/12625</ref>
* Improved handling of duplicate MusicBrainzTrackID within the same album<ref>https://github.com/xbmc/xbmc/pull/12079</ref>
* Fix- Handling of duplicate MusicBrainzTrackID within the same album. Previous assumption was that the MusicBrainzTrackID is unique within the same album <ref>https://github.com/xbmc/xbmc/pull/12079</ref>
* Improved handling of Cue Sheets<ref>https://github.com/xbmc/xbmc/pull/12082</ref>
* Fix- Sort names for artists that are only album artists <ref>https://github.com/xbmc/xbmc/pull/13030</ref>
* Improved online scraping of additional artist and album information making better use of Musicbrainz IDs<ref>https://github.com/xbmc/xbmc/pull/12120</ref><ref>https://github.com/xbmc/xbmc/pull/12597</ref>
* Fix- Wrong playback order for smartplaylists, playlists and upnp <ref>https://github.com/xbmc/xbmc/pull/13059</ref>
* Improved on clean installs, change default song sort order to Track Number <ref>https://github.com/xbmc/xbmc/pull/12834</ref>
* Fix- Cancelling of music library export which continued in the background even after cancel button clicked on progress dialog <ref>https://github.com/xbmc/xbmc/pull/13105</ref>
* Improved FileItem::IsSamePath for albums and artists to prevent false matches<ref>https://github.com/xbmc/xbmc/pull/13585</ref>
* Fix- env vars out of sync in debug mode regression <ref>https://github.com/xbmc/xbmc/pull/13490</ref>
* Improved album genre inconsistencies<ref>https://github.com/xbmc/xbmc/pull/13042</ref>
* Fix- Fetching local art for multi-folder albums (disc sets) <ref>https://github.com/xbmc/xbmc/pull/13769</ref>
* Improved performance by avoiding unnecessary db access by GUI when app processing GUI_MSG_UPDATE_ITEM messages<ref>https://github.com/xbmc/xbmc/pull/13640</ref>
* Fix- Endless rescraping of unfound album <ref>https://github.com/xbmc/xbmc/pull/13752</ref>
* Improved support for fetching local art for multi-folder albums (disc sets) <ref>https://github.com/xbmc/xbmc/pull/13769</ref>
* Fix- Art type "thumb" was sometimes being added to a song with an empty URL, preventing artist fanart from being shown on playback of library items from file view. <ref>https://github.com/xbmc/xbmc/pull/13854</ref>
* Changed Artist/Album Information Dialog <ref>https://github.com/xbmc/xbmc/pull/13672</ref>
* Fix- ''Audiolibrary.GetAlbums'' was not returning values for the "songgenres" field after this was added by #13051 because of a misplaced comma in ''CMusicDatabase::GetGenresByAlbum''.<ref>https://github.com/xbmc/xbmc/pull/13938</ref>
* Changed Song Information Dialog <ref>https://github.com/xbmc/xbmc/pull/13533</ref>
* Fix- Event server keypress input <ref>https://github.com/xbmc/xbmc/pull/14084</ref>
* Improve- Tag parsing to include additional ID3v2 tags. <ref>https://github.com/xbmc/xbmc/pull/11300</ref>
* Improve- Update TagLib to v1.11.1 <ref>https://github.com/xbmc/xbmc/pull/11522</ref>
* Improve- The way songs are fetched for random playback. Large libraries will see quicker load times. <ref>https://github.com/xbmc/xbmc/pull/11680</ref>
* Improve- Slow loading of Smart Playlists <ref>https://github.com/xbmc/xbmc/pull/11702</ref>
* Improve- Speedup Songs node by skipping pointless fetch of cuesheet data <ref>https://github.com/xbmc/xbmc/pull/11785</ref>
* Improve- Handling of Cue Sheets <ref>https://github.com/xbmc/xbmc/pull/12082</ref>
* Improve- Online scraping of additional artist and album information a bit more efficient - avoid futile repeat requests and make better use of Musicbrainz IDs. <ref>https://github.com/xbmc/xbmc/pull/12120</ref><ref>https://github.com/xbmc/xbmc/pull/12597</ref>
* Improve- Minor query change to better handle GetGenresByArtist that have relationship with song via album and album artist rather than song artist. <ref>https://github.com/xbmc/xbmc/pull/12748</ref>
* Improve- On clean installs, change default song sort order to Track Number <ref>https://github.com/xbmc/xbmc/pull/12834</ref>
* Improve- FileItem::IsSamePath for albums and artists to prevent false matches <ref>https://github.com/xbmc/xbmc/pull/13585</ref>
* Improve- Minor fix of overwrite of artist art for Container.Art on music nav windows when album has multiple album artists <ref>https://github.com/xbmc/xbmc/pull/13491</ref>
* Improve- Album genre inconsistencies <ref>https://github.com/xbmc/xbmc/pull/13042</ref>
* Improve- Avoid unnecessary db access by GUI when app processing GUI_MSG_UPDATE_ITEM messages <ref>https://github.com/xbmc/xbmc/pull/13640</ref>
* Improve- Refactor Artist/Album Information Dialog <ref>https://github.com/xbmc/xbmc/pull/13672</ref>
* Improve- efactor Song Information Dialog <ref>https://github.com/xbmc/xbmc/pull/13533</ref>
* Remove- ''':''' and '''|''' as default library separators as these characters can appear in artist names and be misidentified <ref>https://github.com/xbmc/xbmc/pull/11873</ref>
* Remove- Visualisations and set to none as default for all platforms <ref>https://github.com/xbmc/xbmc/pull/13358</ref>
* Add- Option to rescan the music file tags for existing items in the library <ref>https://github.com/xbmc/xbmc/pull/11557</ref>
* Add- REMIXER as alternative name for MIXARTIST tag in Vorbis and APE tags. <ref>https://github.com/xbmc/xbmc/pull/11725</ref>
* Add- Add processing of WRITER tag for ID3 v2, Vorbis and APE formats <ref>https://github.com/xbmc/xbmc/pull/11735</ref>
* Add- Processing of ARTISTSORT (TSOP), ALBUMARTISTSORT (TS02) and COMPOSERSORT (TSOC) tags to provide a sort name for artists. <ref>https://github.com/xbmc/xbmc/pull/11738</ref>
* Add- .m4v to music tag loader factory as valid extension<ref>https://github.com/xbmc/xbmc/pull/12682</ref>
* Add- New dialog for selection of both artist and album scraper addons, and their settings.<ref>https://github.com/xbmc/xbmc/pull/12987</ref><ref>https://github.com/xbmc/xbmc/pull/12943</ref>
* Add- JSON RPC handling for some additional artist data that Musicbrainz provides: type (person, group, orchestra, choir etc.), gender, and disambiguation comments that help to differentiate artists with the same name <ref>https://github.com/xbmc/xbmc/pull/12963</ref>
* Add- Support for the Artist Information Folder that allows Artist artwork and nfo files to be kept in a unique folder which solves numerous issues related to artwork, artist data import and general folder and file structure <ref>https://github.com/xbmc/xbmc/pull/12891</ref>
* Add- "art" parameter to audio library Get and Set methods <ref>https://github.com/xbmc/xbmc/pull/13101</ref>
* Add- Extended Artwork scanned and made available without requiring add-ons. <ref>https://github.com/xbmc/xbmc/pull/13352</ref><ref>https://github.com/xbmc/xbmc/pull/13848</ref>
* Add- Add option to prefer scraped album covers to embedded images <ref>https://github.com/xbmc/xbmc/pull/13812</ref>
* Add- Fetch artist art for songs not in the library for display in fileview and on playback from file view. <ref>https://github.com/xbmc/xbmc/pull/13871</ref>
* Add- Filter music items by media source <ref>https://github.com/xbmc/xbmc/pull/14012</ref><ref>https://github.com/xbmc/xbmc/pull/14082</ref>


=== Web Scrapers ===
=== Web Scrapers ===
Line 251: Line 229:
* Improved Darwin sink for [[AudioEngine#ActiveAE|ActiveAE]] for (Mac) OS X and iOS
* Improved Darwin sink for [[AudioEngine#ActiveAE|ActiveAE]] for (Mac) OS X and iOS
* Renamed AE_SINK to KODI_AE_SINK
* Renamed AE_SINK to KODI_AE_SINK
* ?
* PulseAudio Sink now honors users' server settings, starting with PA version 11.0 means: it does not do overwrite servers' mixing policy. Check: remixing-use-all-sink-channels server setting.


=== Other ===
=== Other ===
Line 257: Line 235:
* Added support to build Kodi with support for Bluetooth<ref>http://github.com/xbmc/xbmc/pull/11137</ref>
* Added support to build Kodi with support for Bluetooth<ref>http://github.com/xbmc/xbmc/pull/11137</ref>
* Added possibility for CMake build system to add additional libraries on install<ref>https://github.com/xbmc/xbmc/pull/12423</ref>
* Added possibility for CMake build system to add additional libraries on install<ref>https://github.com/xbmc/xbmc/pull/12423</ref>
* Updated and improved mappings for new and existing remote controls
* Added and updated many audio visualization and screensaver addons for Kodi<ref>https://github.com/xbmc/repo-binary-addons</ref>
* Improved Kodi's JSON-RPC API
* Improved Kodi's JSON-RPC API
* Improved code stability, performance. and security, as well as general code clean-up in many core areas
* Improved compiling/building and code documentation (following doxygen coding guidelines)
* Improved compiling/building and code documentation (following doxygen coding guidelines)
* Changed to use spdlog for Kodi logging as well as improved and further optimized logging (including debug logs)<ref>https://github.com/xbmc/xbmc/pull/11833</ref>
* Changed to use spdlog for Kodi logging as well as improved and further optimized logging (including debug logs)<ref>https://github.com/xbmc/xbmc/pull/11833</ref>
* Changed XML format of setting values for Kodi's settings configuration<ref>https://github.com/xbmc/xbmc/pull/12277</ref>
* Changed XML format of setting values for Kodi's settings configuration<ref>https://github.com/xbmc/xbmc/pull/12277</ref>
* Updated and improved mappings for new and existing remote controls
* Updated default web interface (webinterface is called "Chorus2" and is currently at version 2.4.4)<ref>https://github.com/xbmc/xbmc/pull/11872</ref>
* Updated default web interface (webinterface is called "Chorus2" and is currently at version 2.4.4)<ref>https://github.com/xbmc/xbmc/pull/11872</ref>
* Updated critical dependency libraries such as openssl, gnutls, and CMake (used to compile Kodi and its binary addons)
* Updated critical dependency libraries such as openssl, gnutls, and CMake (used to compile Kodi and its binary addons)
Line 269: Line 249:


=== Android Specific ===
=== Android Specific ===
* Moved to Android API 26 and SDK 26 with NDK 18 as minimum (meaning at least Android 5.0 is still required)
* Added support for speech-to-text in Kodi OSD keyboard on Android TV (triggered by voice button on remote)
* Added support for speech-to-text in Kodi OSD keyboard on Android TV (triggered by voice button on remote)
* Added support for Android to move the Kodi app to SD card<ref>https://github.com/xbmc/xbmc/pull/12168</ref>
* Added support for Android to move the Kodi app to SD card<ref>https://github.com/xbmc/xbmc/pull/12168</ref>
* Added support for Android TV Leanback search and recommendations meta data from Kodi<ref>|https://github.com/xbmc/xbmc/pull/11901</ref>
* Added support for Android TV Leanback search and recommendations meta data from Kodi<ref>|https://github.com/xbmc/xbmc/pull/11901</ref>
** Default setting for Android TV Leanback suggestion to random unwatched movies and music albums<ref>https://github.com/xbmc/xbmc/pull/11963</ref>
** Default setting for Android TV Leanback suggestion to random unwatched movies and music albums<ref>https://github.com/xbmc/xbmc/pull/11963</ref>
* Moved to Android NDK 16
* Changed Rendertype from GUILayer to VideoLayer for Android MediaCodecSurface<ref>https://github.com/xbmc/xbmc/pull/12097</ref>
* Changed Rendertype from GUILayer to VideoLayer for Android MediaCodecSurface<ref>https://github.com/xbmc/xbmc/pull/12097</ref>
* Changed to use NDK native C interface for Android MediaCodec (for performance gains)<ref>https://github.com/xbmc/xbmc/pull/11931</ref>
* Changed to use NDK native C interface for Android MediaCodec (for performance gains)<ref>https://github.com/xbmc/xbmc/pull/11931</ref>
Line 288: Line 268:


=== Linux Specific ===
=== Linux Specific ===
* Added support for a generic DRM/KMS implementation using GBM to create required surfaces<ref>https://github.com/xbmc/xbmc/pull/11955</ref>
* Added support for a generic DRM/KMS implementation using GBM to create surfaces and V4L2 for video acceleration<ref>https://github.com/xbmc/xbmc/pull/11955</ref>
* Added support for Mir windowing system (Mir 1.0) for Kodi<ref>http://github.com/xbmc/xbmc/pull/10898</ref> and added support for VAAPI on Mir using DRM<ref>http://github.com/xbmc/xbmc/pull/11040</ref>
* Added support for Mir windowing system (Mir 1.0) for Kodi<ref>http://github.com/xbmc/xbmc/pull/10898</ref> and added support for VAAPI on Mir using DRM<ref>http://github.com/xbmc/xbmc/pull/11040</ref>
* Added support for the middle mouse button on embedded platforms<ref>https://github.com/xbmc/xbmc/pull/11956</ref>
* Added support for the middle mouse button on embedded platforms<ref>https://github.com/xbmc/xbmc/pull/11956</ref>

Revision as of 19:34, 11 December 2018

Home icon grey.png   ▶ Releases
▶ Leia
▶ Kodi v18 (Leia) changelog
Emblem-important-yellow.png NOTICE:
Kodi's journey via non-alpha/beta v18 (Leia) releases is currently underway. As such, these new features/functions and API changes is a placeholder containing changes to the current Kodi mainline (the git master tree repository on GitHub). This is listing changes committed to the master branch after Krypton branching. The many features/functions and API additions, alterations or removal are only subject to change during the Alpha stages. The Beta stage is all about stability and bug fixing.
Incomplete.png INCOMPLETE:
This page or section is incomplete. Please add information or correct uncertain data which is marked with a ?
Future.png FUTURE Leia FEATURE:
This page or section describes features that are a future part of the Kodi v18 release, codename "Leia". For more information see development builds.

This is the Kodi Wiki version of a condensed changelog for the future Kodi v18.x version (codename: "Leia") releases with a summary of the most important core features and functions as well as other notable changes to key areas of the application software or its user interface. Please note that this condensed changelog version is not meant bug-fixes, nor minor refactoring or cosmetic changes.

Changelog

Gaming (Games interface and Game Clients)

Note! Also see "Input System (Input Manager and Input APIs" section for Input System related to game controllers

  • Added a "Games" window to GUI (games are managed using a basic file browser as a game library does not exist yet)
  • Added a RetroPlayer player core supporting game clients addons as well as emulator cores via libretro API[1][2]
  • Added extentions to Kodi's Addons AP to support Game Client Addons, supporting Kodi's VFS (Virtual File System), etc.[1]
  • Added support for Game Client Addons as new type of addons with just-in-time emulator installation[1]
  • Added a Games window and Game OSD (On-Screen-Display) entries to the GUI[1][3]
  • Added a gaming and game configuration interface for Game settings to the GUI[1]
  • Added support for Game Info Tags (game info tag) and exposed properties to Python list items[1]
  • Added a savestate (savestate) manager to Kodi for games[4]
  • Added initial support for basic gameplay persistence (auto-save & auto-load)[5]
  • Added support for in-game (save RAM) saves[6]
  • Added support for Keyboard players via Joystick Emulation[1]
  • Added Game API acbstraction for game controller multitaps (a.k.a. hubs) including topology GUI display[7]
  • Added Game API acbstraction to support gamepad/joystick remapping for games (per game-addon)
  • Added Game API acbstraction to support keyboard remapping for games (per game-addon)[8]
  • Added Game API acbstraction to support mouse remapping for games (per game-addon)[9]
  • Added support for libretro API and game cores (emulators and games) that support it as binary addons
  • Added game clients addons for many popular third-party game console emulators and native open source games *
  • ?

Live TV and PVR (Personal Video Recorder)

  • Added support for RDS (Radio Data System) for radio channels if the PVR backend client support RDS
  • Added new settings for 'Startup action' and add 'Play TV/Radio [10]
  • Added support for global direct channel number input & global unique channel numbers[11][12]
    • Added support for no delay on switch to previous channel with key 0 when using direct channel number input[13]
  • Added context menu support for Estuary (skin) PVR home screen widgets [14]
  • Added percent played progress bar to PVR info panel (for recordings) in Estuary (skin)[15]
  • Added Info support to recently played channel widget to Estuary (skin) home screen [16]
  • Added episode name to Live TV, recordings OSD sub label, and cleanup seekbar for Live TV in Estuary (skin) [17]
  • Added Season/Episode info in Guide window and dialog in Estuary (skin)[18]
  • Added support for next and previous buttons in OSD Timeshift window[19]
  • Added feature to prefill recordings folder with timer title in the timer settings dialog[20]
  • Added support for radio channel groups to the channelgroup manager[21]
  • Added support for a 'Smart selection' of EPG events feature to the guide window[22]
  • Added 'Go to date' context menu item to the guide window[23]
  • Added support for channel groups selector to the guide window[24]
  • Added possibility to switch between horizontal and vertical epg grid view to the guide window [25]
  • Added support to sort content by channel number/channel name/last played, support sort order to the Guide window[26]
  • Added support next/previous chapter in PVR recordings[27]
  • Improved PVR seekbar and info dialog in Estuary (skin) [28]
  • Improved PVR info panel, info dialog, and recordings window in Estuary (skin)[29][30]
  • Improved support for enabling multiple PVR client addons[31]
  • Improved support for for subchannel numbers support (ATSC)[32]
  • Improved OSD Timeshift GUI[33][34]
  • Improved the guide window for better consistency and readability [35]
  • Changed GUI actions to eliminate duplicate and dead code (major GUI refactoring for PVR and LiveTV)
  • Changed implementation of EPG search filter (EPG search dialog) completely[36][37]
  • Changed Guide Window removing obsolete views "channel", "now" and "next"[38]
  • Changed "play minimized" settings handling [39]
  • Changed 'epg.lingertime' to an official setting, remove the respective advanced setting[40]
  • Changed shared channel selection into an optional setting[41]
  • Removed obsolete and unused setting 'pvrplayback.scantime' [42]
  • Removed channel guide button from EPG event info dialog, add 'channel guide' to context menu[43]
  • Removed setting 'hide connection lost warning' [44]
  • Removed non-working recording settings defaults [45]
  • Recordings window: Content view filter [46]
  • PVR-Addon API changes [47][48][49][50][51][52][53][54][55][56][57]
  • Added, updated, and improved PVR backend clients addons for popular third-party external PVR backend platforms:
  • ?

Add-ons Framework, API, and Manager

For full changelogs of all Addons APIs, see Leia API changes, JSON-RPC, and Add-ons Development Forums

  • Implemented a Python 3 interpreter inside Kodi (plus enforcing Python 2 & 3 compatibility in Leia addon repository)[58]
  • Implemented online binary addon repository from which Kodi can now automatically installs/updates binary addon[59][60]
  • Major refactoring of Kodi's core handling and GUI management of binary addons[61]
  • Added framework to support VFS (Virtual File System) as binary addons[62]
  • Added framework support for binary addons for video decoder codecs[63]
  • Added framework support for binary addons for image (picture) decoder codecs
  • Added extentions to Kodi's Addons API to support binary addons for video decoder codecs[63]
  • Added extentions to Kodi's Addons API to support binary addons for image decoder codecs
  • Added support for Python addons to use PyCryptoDome crypto module for decryption[64]
  • Added option to pass HTTP cookies with AVOption to Kodi's Video Player[65]
  • Added support to allow addons to edit all used controls on their processed window[66]
  • Added support to allow Python addons to set the videoinfotag path[67]
  • Added support to allow Python addons to get/set the dbid of a (music) listitem[68]
  • Added support for mediatype to musicinfotag tag retrieving via Python API[69]
  • Added support "int/float slider" to Kodi's Python API[70]
  • Added support "setContent for mediawindows" to Kodi's Python API[71]
  • Added help for load of shared library and allow the use of their own addon temp folder[72]
  • Added support to inspect add-on dependencies prior to installation[73]
  • Added ability to remove add-on settings upon uninstall[74]
  • Changed to new addon gui interface for list items to use on addon window[75]
  • Changed service addons to use event handlers instead of synchronous addon hooks[76]

Input System (Input Manager and Input APIs)

GUI Engine (Skinning Engine)

For full changelog on changes to the skinning engine, see Leia API changes and the Skin Development Forum

  • Added windows to support Games and Game OSD in the new default skins (Estuary and Estouchy)
  • Added player process info dialog to Kodi's default skin (Estuary)[79]
  • Added support for addons to use banner and ClearLogo[80]
  • Added support for skins/gui to allow implicit container referencing for non-media windows[81]
  • Added support for addons to add "Enable/Disable" to context menu[82]
  • Added support for remember last used keyboard layout in GUI[83]
  • Added support for ISO 639-2/T language code retrieval (required by libbluray)[84]
  • Added window that display Kodi privacy policy in GUI settings under system info[85]
  • Added support to map a key to browse for subtitle in video fullscreen window[86]
  • Improved Kodi's GUI engine with optimizations for message handling and SmartRedraw[87]
  • Improved Kodi's GUI engine support for scaling container layouts[88]
  • Improved Kodi's GUI engine by allowing %-values for origin, camera and animation attribs[89]
  • Changed so that context menu reloading loads async to aviod GUI lockup on wait[90]
  • Updated guilib ABI (for libgui) to version 5.13.0[91]
  • Updated keyboard layout for some languages and added support Croatian, Slovenian, and Thai (Kedmanee)
  • Updated image resource addons (as example weather icons, weather fanart, studio logos, and genre icons)
  • ?

Platform Independent Playback

General Library

  • Added support to use the Favourites function in context menus[103]
  • Added support for context menus to favourites home screen widget[104]
  • Added support to "Sort By Date Added" in Music Video title node[105]

Music Library

  • Added an option to rescan the music file tags for existing items in the library [106]
  • Added processing of WRITER tag for ID3 v2, Vorbis and APE formats [107]
  • Added processing of ARTISTSORT (TSOP), ALBUMARTISTSORT (TS02) and COMPOSERSORT (TSOC) tags to provide a sort name for artists. [108]
  • Added a new dialog for selection of both artist and album scraper addons, and their settings.[109][110]
  • Added additional artist data that Musicbrainz provides: type (person, group, orchestra, choir etc.), gender, and disambiguation comments that help to differentiate artists with the same name [111]
  • Added an Artist Information Folder - a single location for artist artwork and nfo. This solves numerous issues related to artwork, artist data import and general folder and file structure [112]
  • Added support for Extended Artwork, making the local art that is picked up automatically on scan configurable. [113][114][115][116][117]
  • Added an option to prefer scraped album covers to embedded images [118]
  • Added a filter to sort music items by media source [119][120]
  • Improved use of BAND and ENSEMBLE (Vorbis and APE) tags. [121]
  • Improved handling of duplicate MusicBrainzTrackID within the same album[122]
  • Improved handling of Cue Sheets[123]
  • Improved online scraping of additional artist and album information making better use of Musicbrainz IDs[124][125]
  • Improved on clean installs, change default song sort order to Track Number [126]
  • Improved FileItem::IsSamePath for albums and artists to prevent false matches[127]
  • Improved album genre inconsistencies[128]
  • Improved performance by avoiding unnecessary db access by GUI when app processing GUI_MSG_UPDATE_ITEM messages[129]
  • Improved support for fetching local art for multi-folder albums (disc sets) [130]
  • Changed Artist/Album Information Dialog [131]
  • Changed Song Information Dialog [132]

Web Scrapers

  • Added support for Python (script) based web scrapers for Kodi[133]
  • Refactored and updated many XML based scrapers in Kodi for music, movies, tv shows, and music videos
  • Updated music, movies, tv shows, and music video scrapers for Kodi
  • ?

AudioEngine

  • Added a new Sndio sink for ActiveAE for BSD, other BSD Unix based systems, and Linux[134]
  • Improved the default cross-platform event driven active state machine pattern ActiveAE (Kodi's AudioEngine)
  • Improved ALSA sink for ActiveAE for Linux Desktop and generic Linux based Embedded Systems
  • Improved PulseAudio sink for ActiveAE for Linux Desktop
  • Improved OSS (Open Sound System) sink for ActiveAE for BSD, like FreeBSD and similar BSD Unix based systems
  • Improved AUDIOTRACK sink for ActiveAE for Amlogic
  • Improved Pi Audio sink for ActiveAE for Raspberry Pi
  • Improved DirectSound sink for ActiveAE for Windows
  • Improved WASAPI sink for ActiveAE for Windows
  • Improved CoreAudio sink for ActiveAE for (Mac) OS X and iOS
  • Improved Darwin sink for ActiveAE for (Mac) OS X and iOS
  • Renamed AE_SINK to KODI_AE_SINK
  • PulseAudio Sink now honors users' server settings, starting with PA version 11.0 means: it does not do overwrite servers' mixing policy. Check: remixing-use-all-sink-channels server setting.

Other

  • Added a new unified setting for "Startup action" and added "Play TV/Radio"[135]
  • Added support to build Kodi with support for Bluetooth[136]
  • Added possibility for CMake build system to add additional libraries on install[137]
  • Added and updated many audio visualization and screensaver addons for Kodi[138]
  • Improved Kodi's JSON-RPC API
  • Improved code stability, performance. and security, as well as general code clean-up in many core areas
  • Improved compiling/building and code documentation (following doxygen coding guidelines)
  • Changed to use spdlog for Kodi logging as well as improved and further optimized logging (including debug logs)[139]
  • Changed XML format of setting values for Kodi's settings configuration[140]
  • Updated and improved mappings for new and existing remote controls
  • Updated default web interface (webinterface is called "Chorus2" and is currently at version 2.4.4)[141]
  • Updated critical dependency libraries such as openssl, gnutls, and CMake (used to compile Kodi and its binary addons)
  • Removed last dependencies of SDL (Simple DirectMedia Layer) which was hardware abstraction for input devices[142][143]
  • Removed all glew (libglew library) dependencies in Kodi's code[144]
  • ?

Android Specific

  • Moved to Android API 26 and SDK 26 with NDK 18 as minimum (meaning at least Android 5.0 is still required)
  • Added support for speech-to-text in Kodi OSD keyboard on Android TV (triggered by voice button on remote)
  • Added support for Android to move the Kodi app to SD card[145]
  • Added support for Android TV Leanback search and recommendations meta data from Kodi[146]
    • Default setting for Android TV Leanback suggestion to random unwatched movies and music albums[147]
  • Changed Rendertype from GUILayer to VideoLayer for Android MediaCodecSurface[148]
  • Changed to use NDK native C interface for Android MediaCodec (for performance gains)[149]
  • Changed to support ZeroConf via native Android API (and deprecates mDNSresponder)[150]
  • Changed to support network information via native Android API (and deprecates POSIX)[151]
  • Changed handling of Kodi's Java interfaces via JNI for better consistency[152]
  • ?

BSD Specific

  • Improved Kodi support for BSD (operating system) on FreeBSD, PC-BSD, and other similar BSD platforms
  • Improved VAAPI (Video Acceleration API) support (requires VAAPI compatible hardware and drivers)
  • Improved VDPAU (NVIDIA) Hardware Video Acceleration (requires VDPAU compatible hardware and drivers)
  • ?

Linux Specific

  • Added support for a generic DRM/KMS implementation using GBM to create surfaces and V4L2 for video acceleration[153]
  • Added support for Mir windowing system (Mir 1.0) for Kodi[154] and added support for VAAPI on Mir using DRM[155]
  • Added support for the middle mouse button on embedded platforms[156]
  • Added support more yuv420p bitwidths for direct rendering on Linux[157]
  • Added support for using VAAPI hardware video decoding with OpenGL ES[158]
  • Added support for build Kodi with imx support using CMake[159]
  • Moved the CMake build system to the top of the code tree (moved to root)[160]
  • Improved support for UltraHD decoding / 4K resolution output when hardware supports it
  • Improved ARM processor architecture (using Raspberry Pi as reference device)
  • Improved OpenGL ES and EGL support (using Raspberry Pi as reference device)
  • Improved VAAPI (Video Acceleration API) support (requires VAAPI compatible hardware and drivers)
  • Improved VDPAU (NVIDIA) Hardware Video Acceleration (requires VDPAU compatible hardware and drivers)
  • Improved XvBA (AMD/ATI) Hardware Video Acceleration (requires XvBA compatible hardware and drivers)
  • Improved dedicated AMLCodec hardware accelerated video decoding support for Linux on Amlogic devices
  • Removed the unused and unmaintained OpenMAX video decoder from Kodi's VideoPlayer[161]
  • Removed support for autotools based build system for Kodi and binary addons (in favour of CMake)[162]
  • ?

iOS Specific

  • Added support for iOS 10.0 by adding support for compiling Kodi with Xcode 8 IDE and iOS SDK 10.0[163]
  • Improved Apple VDADecoder Video Acceleration support for iOS (on iPad, iPhone, and iPod iDevices)
  • Improved support for TVOS (Apple's iOS fork for Apple TV 4) in Kodi mainline
  • Improved support for iOS on ARM64 (64-bit iOS)
  • ?

OS X Specific

  • Added support for compiling Kodi with Xcode 8 IDE for OSX 10.11 (El Capitan) and macOS 10.12 (Sierra)
  • Improved Apple VDADecoder Video Acceleration support for (Mac) OS X
  • ?

Windows Specific

  • Added support to build Kodi for Windows 64 / Windows for Intel 64-bit (x86-64)[164]
  • Added support for 3D LUT (3D Lookup Table) and dithering to Windows video renderer[165]
  • Improved support to compiling Kodi for Microsoft's UWP (Universal Windows Platform) APIs
  • Changed the inner working of render buffers and rendering methods[165]
  • Changed to using unicode win32 api methods[166]
  • Changed windowing systems for screen saver handling on Windows OS platforms
  • Changed to make Kodi for Windows platform independent of posix/main.cpp[167]
  • Removed support for Windows Vista as the operating-system is no longer supported by Microsoft[168]
  • ?

References

  1. 1.0 1.1 1.2 1.3 1.4 1.5 1.6 RetroPlayer http://forum.kodi.tv/showthread.php?tid=164725
  2. http://github.com/xbmc/xbmc/pull/11022
  3. https://github.com/xbmc/xbmc/pull/12367
  4. http://github.com/xbmc/xbmc/pull/11034
  5. https://github.com/xbmc/xbmc/pull/12434
  6. http://github.com/xbmc/xbmc/pull/11380
  7. https://github.com/xbmc/xbmc/pull/13499
  8. https://github.com/xbmc/xbmc/pull/13374
  9. https://github.com/xbmc/xbmc/pull/13482
  10. https://github.com/xbmc/xbmc/pull/12548
  11. https://github.com/xbmc/xbmc/pull/13135
  12. https://github.com/xbmc/xbmc/pull/11434
  13. https://github.com/xbmc/xbmc/pull/13232
  14. https://github.com/xbmc/xbmc/pull/10870
  15. https://github.com/xbmc/xbmc/pull/13338
  16. https://github.com/xbmc/xbmc/pull/12254
  17. https://github.com/xbmc/xbmc/pull/12306
  18. https://github.com/xbmc/xbmc/pull/13300
  19. https://github.com/xbmc/xbmc/pull/14387
  20. https://github.com/xbmc/xbmc/pull/11679
  21. https://github.com/xbmc/xbmc/pull/11877
  22. https://github.com/xbmc/xbmc/pull/11782
  23. https://github.com/xbmc/xbmc/pull/13282
  24. https://github.com/xbmc/xbmc/pull/13364
  25. https://github.com/xbmc/xbmc/pull/11958
  26. https://github.com/xbmc/xbmc/pull/14231
  27. https://github.com/xbmc/xbmc/pull/13164
  28. https://github.com/xbmc/xbmc/pull/13158
  29. https://github.com/xbmc/xbmc/pull/12416
  30. https://github.com/xbmc/xbmc/pull/13255
  31. https://github.com/xbmc/xbmc/pull/12959
  32. https://github.com/xbmc/xbmc/pull/13069
  33. https://github.com/xbmc/xbmc/pull/14316
  34. https://github.com/xbmc/xbmc/pull/14386
  35. https://github.com/xbmc/xbmc/pull/13402
  36. https://github.com/xbmc/xbmc/pull/11570
  37. https://github.com/xbmc/xbmc/pull/12001
  38. https://github.com/xbmc/xbmc/pull/10838
  39. https://github.com/xbmc/xbmc/pull/11203
  40. https://github.com/xbmc/xbmc/pull/12740
  41. https://github.com/xbmc/xbmc/pull/13237
  42. https://github.com/xbmc/xbmc/pull/12800
  43. https://github.com/xbmc/xbmc/pull/12526
  44. https://github.com/xbmc/xbmc/pull/11500
  45. https://github.com/xbmc/xbmc/pull/11746
  46. https://github.com/xbmc/xbmc/pull/11704
  47. https://github.com/xbmc/xbmc/pull/12028
  48. https://github.com/xbmc/xbmc/pull/12303
  49. https://github.com/xbmc/xbmc/pull/12552
  50. https://github.com/xbmc/xbmc/pull/12609
  51. https://github.com/xbmc/xbmc/pull/12660
  52. https://github.com/xbmc/xbmc/pull/12689
  53. https://github.com/xbmc/xbmc/pull/12755
  54. https://github.com/xbmc/xbmc/pull/13228
  55. https://github.com/xbmc/xbmc/pull/13720
  56. https://github.com/xbmc/xbmc/pull/14002
  57. https://github.com/xbmc/xbmc/pull/14086
  58. https://kodi.tv/article/attention-addon-developers-migration-python-3
  59. https://kodi.tv/article/kodi-v18-binary-add-ons-repository
  60. https://github.com/xbmc/repo-binary-addons
  61. http://github.com/xbmc/xbmc/pulls?q=label%3A%22Binary+Addons%22+is%3Aclosed
  62. http://github.com/xbmc/xbmc/pull/8966
  63. 63.0 63.1 63.2 63.3 https://github.com/xbmc/xbmc/pull/12340
  64. https://github.com/xbmc/xbmc/pull/11477
  65. https://github.com/xbmc/xbmc/pull/12257
  66. https://github.com/xbmc/xbmc/pull/12259
  67. http://github.com/xbmc/xbmc/pull/11012
  68. http://github.com/xbmc/xbmc/pull/10858
  69. http://github.com/xbmc/xbmc/pull/11110
  70. http://github.com/xbmc/xbmc/pull/11230
  71. http://github.com/xbmc/xbmc/pull/11258
  72. https://github.com/xbmc/xbmc/pull/12379
  73. https://github.com/xbmc/xbmc/pull/12242
  74. https://github.com/xbmc/xbmc/pull/11499
  75. https://github.com/xbmc/xbmc/pull/12214
  76. https://github.com/xbmc/xbmc/pull/12370
  77. PR #8807 Controller input system http://github.com/xbmc/xbmc/pull/8807
  78. http://github.com/kodi-game/ kodi-game repo on GitHub
  79. https://github.com/xbmc/xbmc/pull/11718
  80. https://github.com/xbmc/xbmc/pull/12244
  81. http://github.com/xbmc/xbmc/pull/10883
  82. http://github.com/xbmc/xbmc/pull/11124
  83. http://github.com/xbmc/xbmc/pull/11242
  84. https://github.com/xbmc/xbmc/pull/12258
  85. https://github.com/xbmc/xbmc/pull/10785
  86. https://github.com/xbmc/xbmc/pull/11649
  87. https://github.com/xbmc/xbmc/pull/12213
  88. http://github.com/xbmc/xbmc/pull/11229
  89. http://github.com/xbmc/xbmc/pull/11233
  90. https://github.com/xbmc/xbmc/pull/11841
  91. http://github.com/xbmc/xbmc/pull/11306
  92. https://github.com/xbmc/xbmc/pull/12428
  93. https://github.com/xbmc/xbmc/pull/12339
  94. https://github.com/xbmc/xbmc/pull/12310
  95. https://github.com/xbmc/xbmc/pull/12488
  96. 96.0 96.1 https://github.com/xbmc/xbmc/pull/12212
  97. http://github.com/xbmc/xbmc/pull/11417
  98. https://github.com/xbmc/xbmc/pull/11671
  99. https://github.com/xbmc/xbmc/pull/12305
  100. http://git.videolan.org/?p=libbluray.git;a=blob;f=ChangeLog
  101. http://git.videolan.org/?p=ffmpeg.git;a=blob_plain;f=Changelog;hb=release/4.0.2 FFmpeg 4.0.2 release changelog
  102. https://github.com/xbmc/xbmc/pull/14212
  103. https://github.com/xbmc/xbmc/pull/11967
  104. https://github.com/xbmc/xbmc/pull/11929
  105. https://github.com/xbmc/xbmc/pull/12495
  106. https://github.com/xbmc/xbmc/pull/11557
  107. https://github.com/xbmc/xbmc/pull/11735
  108. https://github.com/xbmc/xbmc/pull/11738
  109. https://github.com/xbmc/xbmc/pull/12987
  110. https://github.com/xbmc/xbmc/pull/12943
  111. https://github.com/xbmc/xbmc/pull/12963
  112. https://github.com/xbmc/xbmc/pull/12891
  113. https://github.com/xbmc/xbmc/pull/13352
  114. https://github.com/xbmc/xbmc/pull/13848
  115. https://github.com/xbmc/xbmc/pull/13491
  116. https://github.com/xbmc/xbmc/pull/13101
  117. https://github.com/xbmc/xbmc/pull/13871
  118. https://github.com/xbmc/xbmc/pull/13812
  119. https://github.com/xbmc/xbmc/pull/14012
  120. https://github.com/xbmc/xbmc/pull/14082
  121. https://github.com/xbmc/xbmc/pull/11735
  122. https://github.com/xbmc/xbmc/pull/12079
  123. https://github.com/xbmc/xbmc/pull/12082
  124. https://github.com/xbmc/xbmc/pull/12120
  125. https://github.com/xbmc/xbmc/pull/12597
  126. https://github.com/xbmc/xbmc/pull/12834
  127. https://github.com/xbmc/xbmc/pull/13585
  128. https://github.com/xbmc/xbmc/pull/13042
  129. https://github.com/xbmc/xbmc/pull/13640
  130. https://github.com/xbmc/xbmc/pull/13769
  131. https://github.com/xbmc/xbmc/pull/13672
  132. https://github.com/xbmc/xbmc/pull/13533
  133. http://github.com/xbmc/xbmc/pull/9984
  134. https://github.com/xbmc/xbmc/pull/11962
  135. https://github.com/xbmc/xbmc/pull/12548
  136. http://github.com/xbmc/xbmc/pull/11137
  137. https://github.com/xbmc/xbmc/pull/12423
  138. https://github.com/xbmc/repo-binary-addons
  139. https://github.com/xbmc/xbmc/pull/11833
  140. https://github.com/xbmc/xbmc/pull/12277
  141. https://github.com/xbmc/xbmc/pull/11872
  142. https://github.com/xbmc/xbmc/pull/12272
  143. https://github.com/xbmc/xbmc/pull/11881
  144. http://github.com/xbmc/xbmc/pull/11128
  145. https://github.com/xbmc/xbmc/pull/12168
  146. |https://github.com/xbmc/xbmc/pull/11901
  147. https://github.com/xbmc/xbmc/pull/11963
  148. https://github.com/xbmc/xbmc/pull/12097
  149. https://github.com/xbmc/xbmc/pull/11931
  150. http://github.com/xbmc/xbmc/pull/11393
  151. https://github.com/xbmc/xbmc/pull/12243
  152. https://github.com/xbmc/xbmc/pull/12292
  153. https://github.com/xbmc/xbmc/pull/11955
  154. http://github.com/xbmc/xbmc/pull/10898
  155. http://github.com/xbmc/xbmc/pull/11040
  156. https://github.com/xbmc/xbmc/pull/11956
  157. https://github.com/xbmc/xbmc/pull/12479
  158. https://github.com/xbmc/xbmc/pull/12113
  159. http://github.com/xbmc/xbmc/pull/11288
  160. http://github.com/xbmc/xbmc/pull/10446
  161. https://github.com/xbmc/xbmc/pull/12197
  162. http://github.com/xbmc/xbmc/pull/10429
  163. https://github.com/xbmc/xbmc/pull/10539
  164. https://github.com/xbmc/xbmc/pull/12065
  165. 165.0 165.1 https://github.com/xbmc/xbmc/pull/12475
  166. https://github.com/xbmc/xbmc/pull/11780
  167. https://github.com/xbmc/xbmc/pull/12215
  168. https://github.com/xbmc/xbmc/pull/11953

See also

Template:Changelogs