Archive:Kodi v17 (Krypton) changelog

From Official Kodi Wiki
Jump to navigation Jump to search
Home icon grey.png   ▶ Releases
▶ Krypton
▶ Kodi v17 (Krypton) changelog
Emblem-important-yellow.png NOTICE:
Kodi v16 (Jarvis) final have just recently been released, so please keep in mind that a final non-alpha/beta v17 (Krypton) release is still 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 Jatvis branching, and many many many features/functions and API additions or removals are subject to future change.
Incomplete.png INCOMPLETE:
This page or section is incomplete. Please add information or correct uncertain data which is marked with a ?
Future.png FUTURE Krypton FEATURE:
This page or section describes features that are a future part of the Kodi v17 release, codename "Krypton". For more information see development builds.

This is a placeholder and Kodi Wiki copy of the condensed changelog for the future Kodi v17.x version (codename: "Krypton") 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.

Changelog

Live TV and PVR (Personal Video Recorder)

  • Added enhancement & improvements to PVR addon API (connection state change handling, asynchronous updates & more)[1] [2][3]
  • Refactorered PVR Manager (PVRManager) so addons are now owned by the addon system[4]
  • Added support for navigation controls between EDL (commercial skipping) during PVR recodings playback[5]
  • Recordings window: Separate TV and Radio recordings[6]
  • Recordings window: make 'group items' setting persistent.[7]
  • Channels window: Add support for sorting channels by 'last played'[8]
  • Added support to changing of timer type for existing timers to ex. change a episode timer to a series timer[9]
  • Separate windows for 'Timer Rules' from 'Timers'[10]
  • Timer rules window: Echo up important Status info to Timer Rules[11]
  • Timer window: Add option to hide disabled timers (trac #15914)[12]
  • EPG & Search window: Add 'Edit timer' & 'Delete timer' rules to context menu[13][14]
  • EPG window: Allow timer creation for EPG in recent past[15]
  • EPG window: Use timer logos depending on its state (needs skin support)[16]
  • EPG window: performance improvements, especially on first open[17][18][19][20]
  • Make instant recording behavior configurable (fixed-time vs. current show vs. interactive)[21]
  • Added "ShowTimerRule" builtin to allow key mapping for "add timer" dialog pre-filled for epg-based timer rule[22]
  • Added support for JSON-RPC API sync PVR types fields with current implementation[23]
  • Extend Kodi eventlog with PVR events, namely 'create/delete timers and timer rules' and 'start/stop recordings'[24]
  • ?

Add-ons Framework, API, and Manager

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

  • Added a new API level system to binary addons, refactoring the binary addon library interface for Kodi[25]
  • Added a new input system with an API for keyboard and game controllers as "Peripheral Addons"[26]
  • Added API support for "Peripheral Addons" for updatable configuration of input devices[26]
  • Added support for game controller to system addons[27]
  • Added a user-mappable Joystick (Peripheral) Addon for joysticks and gamepad abstraction APIs[28][26][29]
  • Added support for "InputStream" binary addon extension point that can serve as input stream for VideoPlayer[30][31]
  • Added support for inputstream (input stream) to system addons[32]
  • Added a lot of Doxygen related Addons documentation regarding builtin commands to Documentation[33]
  • ?

GUI Engine (Skinning Engine)

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

  • Added a new default skin called Estuary (and moved old default skin Confluence to addon repo)[34]
  • Added new default touch-screen enabled skin called Estouchy (moving Re-Touched to addon repo)[35]
  • Added experimental limited support to guilib for animated APNG images in skin textures and backgrounds/posters[36]
  • Added experimental limited support to guilib for animated GIF images in skin textures and backgrounds/posters[37]
  • Added support for commercial skipping notifications and toggle action[38]
  • Added Skin.SelectBool builtin support for skinning[39]
  • Update guilib ABI (for libgui) to version 5.11.0[40]
  • Added support for multi-touch to display adjustment for touch panel calibration[41]
  • Updated keyboard layout for some languages and added a new keyboard layout for French AZERTY
  • Changed context menus by refactoring to a global item based system to unify them[42]
  • Changed GetThumbSize() to m_imageResso so bookmark/chapter images are same resolution as posters
  • Changed background loading of thumbnails so that it is enabled by default
  • Changed default icons with updated versions
  • ?

Platform Independent Playback

  • Major refactoring of Kodi's built-in video player core (which will also be renamed from "DVDPlayer" to "VideoPlayer")[43][44]
  • Separated graphics rendering from main thread (part of VideoPlayer refactoring)[43]
  • Added video stream selection to audio/subtitle dialogue to choose between multiple videos[43][44]
  • Added support for dithering for OpenGL rendering (part of VideoPlayer refactoring)[43][44]
  • Added support for gapless playback on stream change (with the new VideoPlayer)[45]
  • Added method for requesting desired video resolution to demuxer to new VideoPlayer[46]
  • Added multi-stream input demuxer to support a video stream with external audio tracks/streams[47]
  • Added support to change playback speed with audio enabled between 0.8 and 1.5 of normal speed with 'tempo' controls[48][49]
  • Added support for external PGS/.sup (Blu-ray Disc) subtitles[50]
  • Improved A/V sync during video playback which reduce time required for audio sync (part of VideoPlayer refactoring)[43][44]
  • Improved switching refresh rates during video playback (part of VideoPlayer refactoring)[43][44]
  • Improved audio pass-through support during video playback (part of VideoPlayer refactoring)[43][44]
  • Improved MMAL playback of H.264 MVC (Blu-ray 3D) stereoscopic video decoding on Raspberry Pi
  • Upgraded FFmpeg multimedia codec and demux libraries to stable branch release version FFmpeg 3.0[51][52]
  • ?

Library

  • Added support for user rating to the OSD (On Screen Display) for music playback[53]
  • Added artist roles to the music library to handle Composer, Conductor, DJMixer etc. Tags[54]
  • Added support for MOOD tag scanning for FLAC, Ogg, Xiph, Vorbis, ASF and MP4 audio files to music library[55]
  • Added support for showning "in progress tv shows" in the filesystem-tree[56]
  • Added support to sort discography ascending by years
  • Improved database performance for addons
  • ?

Web Scrapers

  • ?

AudioEngine

  • ?

Other

  • Added support for AppVeyor CI (CI for Windows) build server for regression testing of Kodi and binary addons[57]
  • Added support building binary addons to Travis build server for regression testing of Kodi[58]
  • Updated critical dependency libraries such as openssl (used to compile binary addons)[59]
  • Removed support for RAW image decoding (with removal of CxImage as FFmpeg do not support RAW[60][61])
  • Removed CxImage, Libgif, and JpegIO (C/C++ libraries) as dependencies in favor of FFmpeg image decoding[62][63][64]
  • Removed all Boost (C++ libraries) as dependencies[65]
  • Removed libsquish as dependency[66]
  • ?

Android Specific

  • Moved to Android API 21 and SDK 21 with NDK 10 as minimum, meaning at least Android 5.0 is now required[67][68][69]
  • ?

BSD Specific

  • ?

Linux Specific

  • Added new CMake based build system of Kodi and binary addons for Linux (as well as for OSX and Windows[70]
  • Added support for EGL for X11 (which adds zero copy rendering for VAAPI)[43][44]
  • Added support for zero copy interface to FFmpeg for MMAL renderer on Raspberry Pi[71]
  • Removed Wayland display server protocol support (as depended heavily on removed Boost C++ libraries)[72]
  • Added support for Clang compiler building of Kodi
  • Added support for generating Debian packages with Kodi's shiny new CMake/CPack system[73]
  • ?

iOS Specific

  • Add TVOS (Apple's iOS fork for Apple TV 4) support to Kodi mainline
  • Add support to build iOS for ARM64 (64-bit iOS)
  • ?

OS X Specific

  • Added new CMake based build system of Kodi and binary addons for OSX (as well as for Linux and Windows[74]
  • ?

Windows Specific

  • Added new CMake based build system of Kodi and binary addons for Windows (as well as for Linux and OSX)[75]
  • Added support for HEVC Main 10 profile (10-bit) hardware video decoding via DXVA on Windows when hardware and driver supports exist
  • Added support for 10 to 16 bit video output through the DXVA renderer
  • Improved DXVA/DXVA2 (DirectX Video Acceleration) support (requires DXVA/DXVA2 compatible hardware and drivers)
  • Removed the unneeded DXVA to D3D11VA wrapper as we now build FFmpeg with D3D11VA support and use it directly
  • ?

References

  1. http://github.com/xbmc/xbmc/pull/8736
  2. http://github.com/xbmc/xbmc/pull/9295
  3. http://github.com/xbmc/xbmc/pull/9662
  4. http://github.com/xbmc/xbmc/pull/9429
  5. https://github.com/xbmc/xbmc/pull/10064
  6. http://github.com/xbmc/xbmc/pull/9319
  7. http://github.com/xbmc/xbmc/pull/10101
  8. http://github.com/xbmc/xbmc/pull/9248
  9. http://github.com/xbmc/xbmc/pull/10057
  10. http://github.com/xbmc/xbmc/pull/8561
  11. http://github.com/xbmc/xbmc/pull/8732
  12. http://github.com/xbmc/xbmc/pull/8543
  13. http://github.com/xbmc/xbmc/pull/8713
  14. http://github.com/xbmc/xbmc/pull/9370
  15. http://github.com/xbmc/xbmc/pull/8447
  16. http://github.com/xbmc/xbmc/pull/9012
  17. http://github.com/xbmc/xbmc/pull/9370
  18. http://github.com/xbmc/xbmc/pull/9453
  19. http://github.com/xbmc/xbmc/pull/9636
  20. http://github.com/xbmc/xbmc/pull/9657
  21. http://github.com/xbmc/xbmc/pull/9847
  22. http://github.com/xbmc/xbmc/pull/9370
  23. http://github.com/xbmc/xbmc/pull/10074
  24. http://github.com/xbmc/xbmc/pull/8374
  25. https://github.com/xbmc/xbmc/pull/9659
  26. 26.0 26.1 26.2 PR #8807 Controller input system http://github.com/xbmc/xbmc/pull/8807
  27. http://github.com/xbmc/xbmc/pull/9374
  28. http://github.com/kodi-game/peripheral.joystick
  29. http://github.com/xbmc/xbmc/pull/9376
  30. http://github.com/xbmc/xbmc/pull/9173
  31. http://github.com/xbmc/xbmc/pull/9162
  32. http://github.com/xbmc/xbmc/pull/9373
  33. https://github.com/xbmc/xbmc/pull/9433
  34. http://github.com/xbmc/xbmc/pull/9235
  35. http://github.com/xbmc/xbmc/pull/9222
  36. http://github.com/xbmc/xbmc/pull/8937
  37. http://github.com/xbmc/xbmc/pull/8937
  38. https://github.com/xbmc/xbmc/pull/9399
  39. http://github.com/xbmc/xbmc/pull/8303
  40. https://github.com/xbmc/xbmc/pull/8948
  41. http://github.com/xbmc/xbmc/pull/9160
  42. https://github.com/xbmc/xbmc/pull/9257
  43. 43.0 43.1 43.2 43.3 43.4 43.5 43.6 43.7 VideoPlayer Development Forum (developers only) http://forum.kodi.tv/forumdisplay.php?fid=240
  44. 44.0 44.1 44.2 44.3 44.4 44.5 44.6 PR #8486 VideoPlayer refactoring initial pull request http://github.com/xbmc/xbmc/pull/8486
  45. http://github.com/xbmc/xbmc/pull/8886
  46. https://github.com/xbmc/xbmc/pull/9531
  47. http://github.com/xbmc/xbmc/pull/9286
  48. https://github.com/xbmc/xbmc/pull/10216
  49. https://github.com/xbmc/xbmc/pull/10164
  50. https://github.com/xbmc/xbmc/pull/9559
  51. http://git.videolan.org/?p=ffmpeg.git;a=blob_plain;f=Changelog;hb=release/3.0 FFmpeg 3.0 release changelog
  52. http://github.com/xbmc/xbmc/pull/9491
  53. https://github.com/xbmc/xbmc/pull/9094
  54. http://github.com/xbmc/xbmc/pull/8015
  55. https://github.com/xbmc/xbmc/pull/8905
  56. http://github.com/xbmc/xbmc/pull/8261
  57. http://github.com/xbmc/xbmc/pull/9258
  58. http://github.com/xbmc/xbmc/pull/9103
  59. http://github.com/xbmc/xbmc/pull/9244
  60. https://github.com/xbmc/xbmc/pull/8662
  61. https://github.com/xbmc/xbmc/pull/8583
  62. http://github.com/xbmc/xbmc/pull/8662
  63. http://github.com/xbmc/xbmc/pull/8583
  64. http://github.com/xbmc/xbmc/pull/9055
  65. http://github.com/xbmc/xbmc/pull/9021
  66. http://github.com/xbmc/xbmc/pull/9092
  67. http://github.com/xbmc/xbmc/pull/9688
  68. http://github.com/xbmc/xbmc/pull/9517
  69. http://github.com/xbmc/xbmc/pull/9528
  70. http://github.com/xbmc/xbmc/pull/9083
  71. https://github.com/xbmc/xbmc/pull/9384
  72. http://github.com/xbmc/xbmc/pull/8980
  73. https://github.com/xbmc/xbmc/pull/9987
  74. http://github.com/xbmc/xbmc/pull/9083
  75. http://github.com/xbmc/xbmc/pull/9083

See also

Template:Changelogs