Archive:Kodi v17 (Krypton) changelog: Difference between revisions

From Official Kodi Wiki
Jump to navigation Jump to search
Line 174: Line 174:
* Added support for EGL for X11 (which adds zero copy rendering for VAAPI)<ref name="VideoPlayer Development"/><ref name="VideoPlayer refactoring"/>
* Added support for EGL for X11 (which adds zero copy rendering for VAAPI)<ref name="VideoPlayer Development"/><ref name="VideoPlayer refactoring"/>
* Added support for zero copy interface to FFmpeg for MMAL renderer on Raspberry Pi<ref>https://github.com/xbmc/xbmc/pull/9384</ref>
* Added support for zero copy interface to FFmpeg for MMAL renderer on Raspberry Pi<ref>https://github.com/xbmc/xbmc/pull/9384</ref>
* Removed Wayland display server protocol support (as depended heavily on removed Boost C++ libraries)<ref>http://github.com/xbmc/xbmc/pull/8980</ref>
* Added support for Clang compiler building of Kodi
* Added support for Clang compiler building of Kodi
* Added support for generating Debian packages with Kodi's shiny new CMake/CPack system<ref>https://github.com/xbmc/xbmc/pull/9987</ref>
* Added support for generating Debian packages with Kodi's shiny new CMake/CPack system<ref>https://github.com/xbmc/xbmc/pull/9987</ref>
* ?
* Improved multi-touch support, and improved touch and gesture support on Linux
* Improved support for UltraHD decoding / 4K resolution output when hardware supports it
* Improved OpenGL ES and EGL support (using [[Raspberry Pi]] as reference devices)
* 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 OpenMAX Video Acceleration API support for Linux (using Raspberry Pi as reference hardware)
* Improved dedicated AMLCodec hardware accelerated video decoding support for Linux on [[Amlogic]] devices
* Improved AMD/Intel x86-64 64-bit (AMD64 / IA-64t CPU architectures) support under Linux
* Removed Wayland display server protocol support (as depended heavily on removed Boost C++ libraries)<ref>http://github.com/xbmc/xbmc/pull/8980</ref>


=== iOS Specific ===
=== iOS Specific ===

Revision as of 11:34, 19 August 2016

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)

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

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 support for method to get our useragent string[33]
  • Added setting for enabling/disabling ZIP installation of addons from unknown sources (disbaled by default)[34]
  • Added a lot of Doxygen related Addons documentation regarding builtin commands to Documentation[35]
  • ?

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[36]
  • Added a new default skin called Estuary (and moved old default skin Confluence to addon repo)[37]
  • Added new default touch-screen enabled skin called Estouchy (moving Re-Touched to addon repo)[38]
  • Added a new FFmpeg based image loader to guilib for loading pictures[39]
  • Added a new FFmpeg based image thumbnails implementation[40]
  • Added experimental limited support to guilib for animated APNG images in skin textures and backgrounds/posters[41]
  • Added experimental limited support to guilib for animated GIF images in skin textures and backgrounds/posters[42]
  • Added support for commercial skipping notifications and toggle action[43]
  • Added suuport for defaultcontrol to grouplists to allow skins to define defaults[44]
  • Added support for 'InstallAddon' builtin to allow skins to install addons on demand[45]
  • Added Skin.SelectBool builtin support for skinning[46]
  • Update guilib ABI (for libgui) to version 5.11.0[47]
  • Added support for multi-touch to display adjustment for touch panel calibration[48]
  • Improved skinning PVR section by unifying and/or seperating different PVR related windows
  • 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[49]
  • 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")[50][51]
  • Added support for 3D LUT (3D Lookup Table) & simple ICC profile linking support for color correction[52]
  • Added video stream selection to audio/subtitle dialogue to choose between multiple videos[50][51]
  • Added support for dithering for OpenGL rendering (part of VideoPlayer refactoring)[50][51]
  • Added support for gapless playback on stream change (with the new VideoPlayer)[53]
  • Added method for requesting desired video resolution to demuxer to new VideoPlayer[54]
  • Added multi-stream input demuxer to support a video stream with external audio tracks/streams[55]
  • Added support to change playback speed with audio enabled between 0.8 to 1.5 of normal speed with 'tempo' controls[56][57]
  • Added support for external PGS/.sup (Blu-ray Disc) subtitles[58]
  • Changed video renderers to separate graphics rendering from main thread (part of VideoPlayer refactoring)[50]
  • Improved A/V sync during video playback which reduce time required for audio sync (part of VideoPlayer refactoring)[50][51]
  • Improved switching refresh rates during video playback (part of VideoPlayer refactoring)[50][51]
  • Improved audio pass-through support during video playback (part of VideoPlayer refactoring)[50][51]
  • Improved MMAL playback of H.264 MVC (Blu-ray 3D) stereoscopic video decoding on Raspberry Pi
  • Improved Stereoscopic 3D playback of 3D videos (as well as better 2D playback of 3D videos)
  • Improved and enhanced Blu-ray support (including updated libbluray dependecies from the VideoLAN project)[59]
  • Upgraded FFmpeg multimedia codec and demux libraries to stable branch release version FFmpeg 3.1.2[60][61]
  • Removed certain audio codecs from core and made them into audio decoder and audio encoder add-ons

Library

  • Added support for scraping, storing, and displaying multiple ratings from different sources[62]
  • Added support for user rating to the OSD (On Screen Display) for music playback[63]
  • Added support for rating and votes label for specific rating[64]
  • Added support to filtering by userrating in the mediafilter dialog[65]
  • Added artist roles to the music library to handle Composer, Conductor, DJMixer etc. Tags[66]
  • Added support for MOOD tag scanning for FLAC, Ogg, Xiph, Vorbis, ASF and MP4 audio files to music library[67]
  • Added support for showning "in progress tv shows" in the filesystem-tree[68]
  • Added support Audio and Subtitle Track Count to Smart Playlist selections filtering[69]
  • Added support to sort actors by number of movies they are in[70]
  • Added support to sort discography ascending by years
  • Added support for a method to retrieve video tags[71]
  • Improved database performance for addons
  • ?

Web Scrapers

  • Updated music, movies, tv shows, and music video scrapers for Kodi

AudioEngine

  • Added initial support for Audio DSP (Digital Signal Processing) plugins and addons for Kodi's AudioEngine[1]
  • 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

Other

  • Added support for game controller haptics (rumble motors) when the user receives a notification[72]
  • Added support for AppVeyor CI (CI for Windows) build server for regression testing of Kodi and binary addons[73]
  • Added support building binary addons to Travis build server for regression testing of Kodi[74]
  • Improved code stability and performance as well as general code clean-up in many core areas
  • Improved the the integrated UPnP / DNLA Media Server and Client[75][76]
  • Improved AirPlay compatibility support for iOS 8 (via updated libshairplay)[77]
  • Improved Kodi's JSON-RPC API
  • Improved HDMI CEC (Consumer Electronics Control) support for Pulse-Eight's LibCEC
  • Improved "long-press" support functionality of a single button on a remote control
  • Updated community maintained translations to over 60+ languages to date for Kodi via Transifex Translation System
  • Updated critical dependency libraries such as openssl, gnutls, and CMake (used to compile binary addons)
  • Removed support for RAW image decoding (with removal of CxImage as FFmpeg do not support RAW[78][79])
  • Removed CxImage, Libgif, and JpegIO (C/C++ libraries) as dependencies in favor of FFmpeg image decoding[80][81][82]
  • Removed all Boost (C++ libraries) as dependencies[83]
  • Removed libsquish as dependency[84]
  • ?

Android Specific

  • Moved to Android API 21 and SDK 21 with NDK 10 as minimum, meaning at least Android 5.0 is now required[85][86][87]
  • Improved MediaCodec API video decoding implementations support for Android 5.0 (API level 21) and later
  • Improved automatic refresh rate switching support for video playback on Android 5.0 and later (>= API 21), inc. Android TV
  • Improved support for UltraHD decoding / 4K resolution output when HW supports it
  • Improved playback of HEVC, VC-1 / WMV 9, and VP9 hardware video decoding when using Android's MediaCodec API
  • Removed AMLCodec hardware accelerated video decoding support for Android on Amlogic devices[88]

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 new CMake based build system of Kodi and binary addons for Linux (as well as for OSX and Windows[89]
  • Added support for VP9 hardware video acceleration via VAAPI if supported by display drivers[90]
  • Added support for EGL for X11 (which adds zero copy rendering for VAAPI)[50][51]
  • Added support for zero copy interface to FFmpeg for MMAL renderer on Raspberry Pi[91]
  • Added support for Clang compiler building of Kodi
  • Added support for generating Debian packages with Kodi's shiny new CMake/CPack system[92]
  • Improved multi-touch support, and improved touch and gesture support on Linux
  • Improved support for UltraHD decoding / 4K resolution output when hardware supports it
  • Improved OpenGL ES and EGL support (using Raspberry Pi as reference devices)
  • 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 OpenMAX Video Acceleration API support for Linux (using Raspberry Pi as reference hardware)
  • Improved dedicated AMLCodec hardware accelerated video decoding support for Linux on Amlogic devices
  • Improved AMD/Intel x86-64 64-bit (AMD64 / IA-64t CPU architectures) support under Linux
  • Removed Wayland display server protocol support (as depended heavily on removed Boost C++ libraries)[93]

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

Windows Specific

  • Added new CMake based build system of Kodi and binary addons for Windows (as well as for Linux and OSX)[95]
  • 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/9429
  2. http://github.com/xbmc/xbmc/pull/8736
  3. http://github.com/xbmc/xbmc/pull/9295
  4. http://github.com/xbmc/xbmc/pull/9662
  5. https://github.com/xbmc/xbmc/pull/10064
  6. http://github.com/xbmc/xbmc/pull/9248
  7. http://github.com/xbmc/xbmc/pull/10057
  8. http://github.com/xbmc/xbmc/pull/8732
  9. http://github.com/xbmc/xbmc/pull/8543
  10. http://github.com/xbmc/xbmc/pull/8713
  11. http://github.com/xbmc/xbmc/pull/9370
  12. http://github.com/xbmc/xbmc/pull/8447
  13. http://github.com/xbmc/xbmc/pull/9012
  14. http://github.com/xbmc/xbmc/pull/9636
  15. http://github.com/xbmc/xbmc/pull/9657
  16. http://github.com/xbmc/xbmc/pull/9847
  17. http://github.com/xbmc/xbmc/pull/9370
  18. http://github.com/xbmc/xbmc/pull/10074
  19. http://github.com/xbmc/xbmc/pull/8374
  20. http://github.com/xbmc/xbmc/pull/9370
  21. http://github.com/xbmc/xbmc/pull/9453
  22. http://github.com/xbmc/xbmc/pull/8561
  23. http://github.com/xbmc/xbmc/pull/9319
  24. http://github.com/xbmc/xbmc/pull/10101
  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/8643
  34. https://github.com/xbmc/xbmc/pull/8857
  35. https://github.com/xbmc/xbmc/pull/9433
  36. https://github.com/xbmc/xbmc/pull/9731
  37. http://github.com/xbmc/xbmc/pull/9235
  38. http://github.com/xbmc/xbmc/pull/9222
  39. https://github.com/xbmc/xbmc/pull/8370
  40. https://github.com/xbmc/xbmc/pull/8583
  41. http://github.com/xbmc/xbmc/pull/8937
  42. http://github.com/xbmc/xbmc/pull/8937
  43. https://github.com/xbmc/xbmc/pull/9399
  44. https://github.com/xbmc/xbmc/pull/8501
  45. https://github.com/xbmc/xbmc/pull/8419
  46. http://github.com/xbmc/xbmc/pull/8303
  47. https://github.com/xbmc/xbmc/pull/8948
  48. http://github.com/xbmc/xbmc/pull/9160
  49. https://github.com/xbmc/xbmc/pull/9257
  50. 50.0 50.1 50.2 50.3 50.4 50.5 50.6 50.7 VideoPlayer Development Forum (developers only) http://forum.kodi.tv/forumdisplay.php?fid=240
  51. 51.0 51.1 51.2 51.3 51.4 51.5 51.6 PR #8486 VideoPlayer refactoring initial pull request http://github.com/xbmc/xbmc/pull/8486
  52. https://github.com/xbmc/xbmc/pull/9731
  53. http://github.com/xbmc/xbmc/pull/8886
  54. https://github.com/xbmc/xbmc/pull/9531
  55. http://github.com/xbmc/xbmc/pull/9286
  56. https://github.com/xbmc/xbmc/pull/10216
  57. https://github.com/xbmc/xbmc/pull/10164
  58. https://github.com/xbmc/xbmc/pull/9559
  59. https://github.com/xbmc/xbmc/pull/10056
  60. http://git.videolan.org/?p=ffmpeg.git;a=blob_plain;f=Changelog;hb=release/3.1.2 FFmpeg 3.1.2 release changelog
  61. https://github.com/xbmc/xbmc/pull/10262
  62. https://github.com/xbmc/xbmc/pull/8080
  63. https://github.com/xbmc/xbmc/pull/9094
  64. https://github.com/xbmc/xbmc/pull/8788
  65. https://github.com/xbmc/xbmc/pull/8553
  66. http://github.com/xbmc/xbmc/pull/8015
  67. https://github.com/xbmc/xbmc/pull/8905
  68. http://github.com/xbmc/xbmc/pull/8261
  69. https://github.com/xbmc/xbmc/pull/8333
  70. https://github.com/xbmc/xbmc/pull/8576
  71. https://github.com/xbmc/xbmc/pull/7369
  72. https://github.com/xbmc/xbmc/pull/9663
  73. http://github.com/xbmc/xbmc/pull/9258
  74. http://github.com/xbmc/xbmc/pull/9103
  75. http://github.com/xbmc/xbmc/pull/8045
  76. http://github.com/xbmc/xbmc/pull/8051
  77. http://github.com/xbmc/xbmc/pull/8180
  78. https://github.com/xbmc/xbmc/pull/8662
  79. https://github.com/xbmc/xbmc/pull/8583
  80. http://github.com/xbmc/xbmc/pull/8662
  81. http://github.com/xbmc/xbmc/pull/8583
  82. http://github.com/xbmc/xbmc/pull/9055
  83. http://github.com/xbmc/xbmc/pull/9021
  84. http://github.com/xbmc/xbmc/pull/9092
  85. http://github.com/xbmc/xbmc/pull/9688
  86. http://github.com/xbmc/xbmc/pull/9517
  87. http://github.com/xbmc/xbmc/pull/9528
  88. https://github.com/xbmc/xbmc/pull/9688
  89. http://github.com/xbmc/xbmc/pull/9083
  90. https://github.com/xbmc/xbmc/pull/8624
  91. https://github.com/xbmc/xbmc/pull/9384
  92. https://github.com/xbmc/xbmc/pull/9987
  93. http://github.com/xbmc/xbmc/pull/8980
  94. http://github.com/xbmc/xbmc/pull/9083
  95. http://github.com/xbmc/xbmc/pull/9083

See also

Template:Changelogs