v21.1.3 (2023-07-17) - [DASH] Rework of manifest update parameters. NOTE: inputstream.adaptive.manifest_update_parameter is now deprecated and replaced by inputstream.adaptive.manifest_upd_params which has a different implementation - add-on devs please see the wiki - [DASH] fix rounding of segment count calculation - allows affected VOD streams to finish correctly - [AdaptiveTree] rework and cleanup of segment objects, fixing some live DASH streams - [TS] improved logging capabilities - multiple improvements for live manifest refresh handling - [HLS] fix wrong offset for byteranged downloads - Cleanup of codec names/fourcc codes, fix incorrect codec displaying in quality chooser - [AdaptiveTree] Preserve path to save manifest on cloning class - [DASH] Fix replaced init segment from SegmentTemplate - [HLS] fix file extension (container) detection - Fixes relating to high memory allocation (was causing crashes on high bitrate streams due to memory exhaustion) - [AdaptiveStream] On ResetSegment check for byterange not url - [SmoothTree] big rework to fix regressions and improve logging. Many affected streams are now playable - [HLS] fix for directly playing variant playlists v21.1.2 (2023-06-09) - [DASH] - allow contentprotection tag without systemID URN - [ADTS] - add support for AC-3 and EAC-3 in ADTS container - [HLS] fix key url resolution - Remove getinfo checks from getnextsample (fixes Amazon stuttering issues) - [AdaptiveTree] - introduce feature to autodetect manifest type - [DASH] - always set startNumber from SegmentTemplate v21.1.1 (2023-05-30) - [AdaptiveStream] Overhaul threading (fixes some freezes/deadlocks) - [AdaptiveTree] Massive overhaul of manifest and ttml parsers (thanks @CastagnaIT !) - [Widevine] Remove multi-subsample decrypting, use only 1 session where possible - Improved debug logging and add option to save manifest files - [AdaptiveTree] fix possible deadlocking - Several code cleanups - [ADTS] fix missing audio for some streams - Add Live Delay property to force distance between live edge - [webm] Parse audio track extradata (fixes audio) - [MP4] Fix memory leak - [DASH] Don't start update thread for temp update tree v21.1.0 (2023-04-04) - Minor version bump - missed at time of v21.0.3 v21.0.4 (2023-04-04) - [DASH] Fix live period sequence numbers - [DASH] Fix live duration updates on some manifests - [MP4] Fix for crash when missing STSD atom - [DRM] rework CDM timer handling, fixes crashing after playback stop on non-Android devices v21.0.3 (2023-03-24) - [DASH] better period matching for live refreshes - [AdaptiveStream] rework/update of download retries, allowing for VOD retry attempts - [SSD] add xbmcaltbinaddons to search path - [SSD][Widevine] Add new video formats v21.0.2 (2023-03-10) - Reimplement saving license data, controllable in settings - [DASH] fix representation updates for identical adaptationsets - [Widevine] add support for linux arm64 - reduce logging when waiting for new segments in live manifests - [DASH] fix url calculation issues - bump gtest - handle PIFF protection scheme v21.0.1 (2023-02-23) - overhaul url utils to follow RFC 3986 - [Debug] option to save manifests to disk for debugging purposes - remove deprecated properties and pipe support for manifest url - [DRM] fix bug when supplying license_data property v20.3.3 (2023-02-08) - [Repchooser] Don't give stream selector dialog when only one available - [DRM] handle empty headers with license request - fix crashing on malformed url params - New properties for separate stream/manifest headers/params and overhaul of behaviour, fixing some manifests that wouldn't play. Add-on devs please see integration page on our wiki. - [HLS] default to TS filetype when file extension missing/unable to be determined - [fMP4] handle changing track IDs between streams, fixes crashing on stream change - [WV] improved capability logging - Fix regression with seeking - [HLS][WEBVTT] Various fixes including duplicate subtitle issue, alignment for some streams, bad behaviour of filling segment buffer before starting playback - [Bento4] upstream updates fixing building on powerpc linux - [DASH] fix for live videos with segmenttimeline in representations, correct manifest parameter automatically set v20.3.2 (2023-01-11) - [HLS] fix for incomplete length sub streams - Fix memory leak - [ISM] allow case insensitive live flag - Fix crashing when missing track ID - Fix issue where manifest files without an extension would not play - [ISM] fix regression preventing protection being parsed correctly - Bump Bento4 to 1.6.0-639-5-Nexus v20.3.1 (2022-10-07) - Print stream ids in log when seeking - [DASH] Fix possible crash for live streams - [DASH] Fix issue with baseurls/template causing incorrect url calculation - [DRM] Fix regression with unknown keyids sending uninitialised data to decrypter - [HLS] Support EXT-X-Byterange tags that don't contain start byte value - Allow for playlists to set crypto mode - [DRM] Partial refactor, fix for decrypting CBC with multi subsamples v20.3.0 (2022-09-16) - Kodi inputstream API update to version 3.2.0 - Implemented AV1 support - Handled limited GUI resolution with Adjust refresh rate - Fix video resume with seek - Fix use after free crash from readsample thread - Fix condition check for chunked transfers - Fix relating to subtitle playback - [Subtitles][WebVTT] Sync to current period start (chapter) v20.2.3 (2022-07-02) - [DASH] Fix crash when SegmentList is in root of Period - [HLS] fix PKCS7 stripping on chunked transfers - Kodi now buffers correctly on slow connections v20.2.2 (2022-06-13) - Fix stream selection property parsing - [HLS] handle PKCS7 padding - [DRM] only reinitialize video decoder when codec changes - Improved base64 decoding (fixes some DRM streams not starting) v20.2.1 (2022-05-19) - Fix wrongly encoded urls - Fix wrong parsing of license template - [Bento4] fix several security vulnerabilities - Fix wrong HEVC extradata (was causing crashing) - Add missing codecs in decrypter interface - Fix Dolby Vision metadata - [HLS] allow edge case for byteranged init segments v20.2.0 (2022-05-01) - [dash] handle multiple repid tags in urls - improved logging, numerous code cleanups and refactorings - [drm] support for pre-initialising the drm session - add icon and fanart - overhaul settings - add several representation chooser types: adaptive, fixed, ask, manual osd, test (pls see wiki for details) - fix estimate segment count - [drm] add capability to decrypt AES-CBC streams v20.1.2 (2022-01-29) - [WebVTT] - Fix sending segments packages - [HLS] - Handle playlists with large media sequences - [DASH] - Fix stream switching for byteranged types v20.1.0 (2021-12-23) - Translation updates by Weblate - Kodi main API update to version 2.0.0 v20.0.3 (2021-12-10) - Fix compile error by GCC 11 - Fix build about global Kodi API version 1.3.1 - Lower versions also still usable - Moved changelog text within addon.xml to new changelog.txt v20.0.2 (2021-10-09) - Fix crash when no data sent to DemuxRead - Update Bento4 lib - Fix pixellation issue when seeking to head - [DASH] support suggestedPresentationDelay - increase 'no-seek' area default for live streams to 16 seconds v20.0.1 (2021-09-28) - Adaptive bitrate switching and buffering initial support! - Change default license if no pipes in license url - Remove old unused Android ndk files - Better WebVTT format checking - [DASH] handle adaptationset switching tag to merge adaptationsets v20.0.0 (2021-09-14) - Change test builds to 'Kodi 20 Nexus' - Increase version to 20.0.0 - With start of Kodi 20 Nexus, takes addon as major the same version number as Kodi. This done to know easier to which Kodi the addon works. v2.6.23 (2021-08-06) - Translations from weblate - de_de, ja_jp, ko_kr - [Android] use multiple drm sessions (solves stuttering) - [DASH] allow for misaligned segs in SegmentTimeline v2.6.22 (2021-07-18) - Automation test release v2.6.21 (2021-07-18) - Automation test release v2.6.20 (2021-07-17) Translations updates from Weblate - de_de, el_gr, es_es, fr_fr, he_il, hi_in, hr_hr, hu_hu, it_it, ja_jp, ko_kr, nl_nl, pl_pl, ro_ro, ru_ru, sk_sk, sv_se v2.6.19 (2021-07-17) - Translations updates from Weblate - af_za, am_et, ar_sa, ast_es, az_az, be_by, bg_bg, bs_ba, ca_es, cs_cz, cy_gb, da_dk, de_de, el_gr, en_au, en_gb, en_nz, en_us, eo, es_ar, es_es, es_mx, et_ee, eu_es, fa_af, fa_ir, fi_fi, fo_fo, fr_ca, fr_fr, gl_es, he_il, hi_in, hr_hr, hu_hu, hy_am, id_id, is_is, it_it, ja_jp, kn_in, ko_kr, lt_lt, lv_lv, ml_in, mn_mn, mt_mt, my_mm, nb_no, nl_nl, os_os, pl_pl, pt_br, pt_pt, ro_md, ro_ro, ru_ru, scn, si_lk, sk_sk, sq_al, sr_rs, sr_rs@latin, sv_se, szl, ta_in, tg_tj, th_th, tr_tr, uk_ua, uz_uz, vi_vn, zh_cn, zh_tw v2.6.18 (2021-07-13) - Add support to pre-initialise DRM - Fix intermittent crash when stopping Widevine videos v2.6.17 (2021-06-20) - Fix decrypt errors on non-Android platforms - [DASH] fix representation base urls - Don't use filecache for subtitle downloads v2.6.16 (2021-05-21) - Allow download retries for VOD - [DASH] fix for minimumUpdatePeriod=0 - [DASH] remove media_renewal_url and media_renewal_time - License renewal for widevine - [HLS] Fix SSD being deleted with multiple encrypted streams - Overhaul manifest redirect logic - fix seeking into separate chapters/resume time - fix HEVC extra data crash - improve settings v2.6.15 (2021-05-18) - [HLS] support webvtt subtitle extensions - [DASH] fix segmentTemplate calculation - [HEVC] use constant frame rate if average is 0 - [HLS] don't reset pts on new periods - Don't remove secure decoder cap if not requested in manifest_type - [Android] fallback to widevine L3 if L1 provisioning fails v2.6.14 (2021-04-22) - Don't overwrite manifest headers with stream headers - Stream headers default to manifest headers - ac3 is recognised separately to eac3 - [DASH] time and number placeholders can be used simultaneously - [DASH] manifest_update_parameter property defaults to 'full' for SegmentTimeline - [DASH] pssh attribute in ContentProtection tag allowed without cenc namespace - [DASH] support ttml subs where codec isn't specified v2.6.13 (2021-04-10) - Fix Debian packaging v2.6.12 (2021-04-09) - Remove Android specific decrypter search paths - Move Android addon to binary addons repo v2.6.11 (2021-04-08) - Fix ampersand in changelog causing issues from v2.6.9 and v2.6.10 v2.6.10 (2021-04-08) - Fix release build v2.6.9 (2021-04-08) - Fix MPD Timing (remove publishTime and presentationTimeOffset) - [Dash] Correctly set timeshift_buffer (live) - [Dash] Support fpsScale in AdaptationSets - [Dash] Fix missing audio languages - [DASH] Support ec-3 channel count (urn:mpeg:mpegB:cicp:ChannelConfiguration) v2.6.8 (2021-03-26) - [Dash] Append / to baseurl if required - Fix Base Domain (fixes uri=/path/) v2.6.7 (2021-02-10) - Fix build for ios/tvos - Use the full BaseUrl if it's a real url inside an AdaptationSet v2.6.6 (2020-11-21) - Matrix VideoCodec API change to v2.0.2 - Fix crypto session id handling v2.6.5 (2020-11-09) - Matrix API change to v3.0.1 - Fix wrong flags bit shift v2.6.4 (2020-10-31) - Fix protocol search in manifest URL v2.6.3 (2020-10-31) - New C-api changes - Fix URL's without domain (files) - [MPD] Fix SegmentTimeline without given startTime v2.6.2 (2020-10-30) - revert / rework effective url issues - api related changes (buildsystem) v2.6.1 (2020-10-25) - Fix effective url if paths beginning with / provided - Several translations added / fixed - Fix webvtt subtitles for time formats without leading hour 00: - Fix segfault when playing PlayReady content (Android) - Adapt to kodi c api changes v2.6.0 (2020-05-16) - Update inputstream API 2.3.1 - Update Global API 1.2.0 v2.5.6 (2020-04-25) - Matrix API change to v2.3.0 - Pass mime type to inputstreams if available - Matrix API change to v2.2.0 - Allows upto 256 streams, useful for netflix etc. v2.5.5 (2020-04-06) - Matrix API change - Remove CanPauseSteram() and CanSeekStream() - Update .gitignore v2.5.4 (2020-01-19) - [HLS] url based initialization segment - [DASH] Use effective URL for manifest update - Implement Media Renewal Time - Fixed WebVTT rlm and lrm - Fixed and improved subtitle properties) - Add multiple languages - [DASH] Fix zero devision segfault v2.5.3 (2019-11-21) - Fix retrieving SIDX from indexRange streams (youtube) - Rework seek (use lead stream) v2.5.2 (2019-11-18) - More languages added - DolbyVision codec (dvhe) support, kodi changes required to get it work - Add property to start LiveStreams from beginning (play_timeshift_buffer) - Pass media_headers when downloading pssh-search segment - Minor DASH full update / timing / url generation fixes v2.5.1 (2019-10-07) - Language spain added - multi period support - mp4 webtt binary representation added - minor fixes v2.5.0 (2019-09-02) - New major versions for Matrix v2.4.0 (2019-08-16) - Update Kodi VFS API 1.0.3 - Build script cleanups - Implement VP9 static HDR metadata - MPD: location attibute added - MPD: livestream bugfixes (uninitialized startPTS) v2.3.22 (2019-06-14) - Bento4: sample duration workaround (24/1) - WVDecrypter: remove sleep between decrypt calls v2.3.21 (2019-06-07) - [DASH] initialize segment::range_begin_ for URL segments (youtube) v2.3.20 (2019-06-07) - Fix parsing PR ContentProtection KID v2.3.19 (2019-06-02) - [widevine] remove API 8 / Add API 11 - [TS] Signal configuration change if extra-data has changed - [DASH] Use PlayReady WRMHEADER to retrieve DefaultKID - [DASH] Allow URL_SEGMENTS + Range-Bytes v2.3.18 (2019-05-11) - align settings with internal resolution check - [HLS] support single playlists v2.3.17 (2019-04-16) - Fix KID's with 0 char inside v2.3.16 (2019-03-25) - TTML parser fix - [HLS] Add HEVC streams / Fix extra_data_size in ts parser - [HLS] effective URL for license v2.3.15 (2019-02-11) - Fix windows build v2.3.14 (2019-02-10) - Add WebM container parser