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 Color Manager to handle loading of madVR 3D LUT ICC profiles for color correction[34]
  • Added a new default skin called Estuary (and moved old default skin Confluence to addon repo)[35]
  • Added new default touch-screen enabled skin called Estouchy (moving Re-Touched to addon repo)[36]
  • Added experimental limited support to guilib for animated APNG images in skin textures and backgrounds/posters[37]
  • Added experimental limited support to guilib for animated GIF images in skin textures and backgrounds/posters[38]
  • Added support for commercial skipping notifications and toggle action[39]
  • Added Skin.SelectBool builtin support for skinning[40]
  • Update guilib ABI (for libgui) to version 5.11.0[41]
  • Added support for multi-touch to display adjustment for touch panel calibration[42]
  • 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[43]
  • 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")[44][45]
  • Separated graphics rendering from main thread (part of VideoPlayer refactoring)[44]
  • Added support for 3D LUT (3D Lookup Table) & simple ICC profile linking support for color correction[46]
  • Added video stream selection to audio/subtitle dialogue to choose between multiple videos[44][45]
  • Added support for dithering for OpenGL rendering (part of VideoPlayer refactoring)[44][45]
  • Added support for gapless playback on stream change (with the new VideoPlayer)[47]
  • Added method for requesting desired video resolution to demuxer to new VideoPlayer[48]
  • Added multi-stream input demuxer to support a video stream with external audio tracks/streams[49]
  • Added support to change playback speed with audio enabled between 0.8 and 1.5 of normal speed with 'tempo' controls[50][51]
  • Added support for external PGS/.sup (Blu-ray Disc) subtitles[52]
  • Improved A/V sync during video playback which reduce time required for audio sync (part of VideoPlayer refactoring)[44][45]
  • Improved switching refresh rates during video playback (part of VideoPlayer refactoring)[44][45]
  • Improved audio pass-through support during video playback (part of VideoPlayer refactoring)[44][45]
  • 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[53][54]
  • ?

Library

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

Web Scrapers

  • ?

AudioEngine

  • ?

Other

  • Added support for game controller haptics (rumble motors) when the user receives a notification[59]
  • Added support for AppVeyor CI (CI for Windows) build server for regression testing of Kodi and binary addons[60]
  • Added support building binary addons to Travis build server for regression testing of Kodi[61]
  • Updated critical dependency libraries such as openssl (used to compile binary addons)[62]
  • Removed support for RAW image decoding (with removal of CxImage as FFmpeg do not support RAW[63][64])
  • Removed CxImage, Libgif, and JpegIO (C/C++ libraries) as dependencies in favor of FFmpeg image decoding[65][66][67]
  • Removed all Boost (C++ libraries) as dependencies[68]
  • Removed libsquish as dependency[69]
  • ?

Android Specific

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

BSD Specific

  • ?

Linux Specific

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

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[77]
  • ?

Windows Specific

  • Added new CMake based build system of Kodi and binary addons for Windows (as well as for Linux and OSX)[78]
  • 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. https://github.com/xbmc/xbmc/pull/9731
  35. http://github.com/xbmc/xbmc/pull/9235
  36. http://github.com/xbmc/xbmc/pull/9222
  37. http://github.com/xbmc/xbmc/pull/8937
  38. http://github.com/xbmc/xbmc/pull/8937
  39. https://github.com/xbmc/xbmc/pull/9399
  40. http://github.com/xbmc/xbmc/pull/8303
  41. https://github.com/xbmc/xbmc/pull/8948
  42. http://github.com/xbmc/xbmc/pull/9160
  43. https://github.com/xbmc/xbmc/pull/9257
  44. 44.0 44.1 44.2 44.3 44.4 44.5 44.6 44.7 VideoPlayer Development Forum (developers only) http://forum.kodi.tv/forumdisplay.php?fid=240
  45. 45.0 45.1 45.2 45.3 45.4 45.5 45.6 PR #8486 VideoPlayer refactoring initial pull request http://github.com/xbmc/xbmc/pull/8486
  46. https://github.com/xbmc/xbmc/pull/9731
  47. http://github.com/xbmc/xbmc/pull/8886
  48. https://github.com/xbmc/xbmc/pull/9531
  49. http://github.com/xbmc/xbmc/pull/9286
  50. https://github.com/xbmc/xbmc/pull/10216
  51. https://github.com/xbmc/xbmc/pull/10164
  52. https://github.com/xbmc/xbmc/pull/9559
  53. http://git.videolan.org/?p=ffmpeg.git;a=blob_plain;f=Changelog;hb=release/3.0 FFmpeg 3.0 release changelog
  54. http://github.com/xbmc/xbmc/pull/9491
  55. https://github.com/xbmc/xbmc/pull/9094
  56. http://github.com/xbmc/xbmc/pull/8015
  57. https://github.com/xbmc/xbmc/pull/8905
  58. http://github.com/xbmc/xbmc/pull/8261
  59. https://github.com/xbmc/xbmc/pull/9663
  60. http://github.com/xbmc/xbmc/pull/9258
  61. http://github.com/xbmc/xbmc/pull/9103
  62. http://github.com/xbmc/xbmc/pull/9244
  63. https://github.com/xbmc/xbmc/pull/8662
  64. https://github.com/xbmc/xbmc/pull/8583
  65. http://github.com/xbmc/xbmc/pull/8662
  66. http://github.com/xbmc/xbmc/pull/8583
  67. http://github.com/xbmc/xbmc/pull/9055
  68. http://github.com/xbmc/xbmc/pull/9021
  69. http://github.com/xbmc/xbmc/pull/9092
  70. http://github.com/xbmc/xbmc/pull/9688
  71. http://github.com/xbmc/xbmc/pull/9517
  72. http://github.com/xbmc/xbmc/pull/9528
  73. http://github.com/xbmc/xbmc/pull/9083
  74. https://github.com/xbmc/xbmc/pull/9384
  75. http://github.com/xbmc/xbmc/pull/8980
  76. https://github.com/xbmc/xbmc/pull/9987
  77. http://github.com/xbmc/xbmc/pull/9083
  78. http://github.com/xbmc/xbmc/pull/9083

See also

Template:Changelogs