github xbmc/xbmc 21.0-Omega
v21.0-Omega

one month ago

What's Changed

  • Complete list of changes can be viewed at 20.0-Nexus...21.0-Omega
  • [guilib][EditControl] Improved rendering of label texts by @CastagnaIT in #22691
  • SavestateFlatBuffer: Remove forward declararion of FlatBufferBuilder by @neo1973 in #23332
  • [macos][nativewindowing] Suport HiDPI (retina) displays by @enen92 in #23259
  • Add .gradle directory to .gitignore by @joseluismarti in #23339
  • [platform] macOS,iOS: Add speech recognition and microphone usage des… by @ksooo in #23337
  • [subtitles] Avoid calls to virtual methods on destructor by @enen92 in #23343
  • [webOS] Audio sink improvements by @sundermann in #23295
  • [buildsteps] osx-arm add test execution by @fuzzard in #23349
  • depends/libmicrohttpd: bump to the new version by @Karlson2k in #23342
  • [Windows] Add DXVA Video Super Resolution upscaler by @thexai in #23336
  • Translations update from Kodi Weblate by @weblate in #23330
  • Sync of addon metadata translations by @github-actions in #23356
  • [guillib] Handle Page Up/Down/Home/End in settings / CGUIControlGroupList by @CrystalP in #22894
  • [Buildsteps] Use xcode 14.2 and relevant SDK's for Apple platforms by @fuzzard in #23348
  • [depends] Update flatbuffers to 23.3.3 and raise min OSX version to 10.14 by @neo1973 in #23266
  • SysfsPath: Have CSysfsPath::Get() return a std::optional because reads can fail by @neo1973 in #23283
  • CAppParamParserLinux: add --audio-backend= switch by @lrusak in #23148
  • [Depends][native] Bump cmake 3.26.4 by @fuzzard in #23322
  • [macos][nativewindow] Support fullscreen move / Fix display lost by @enen92 in #23335
  • [Windows] DXVA: check if HDR10 color spaces are supported by video processor by @thexai in #23358
  • CTextureBundleXBT: return std::optional by @lrusak in #23168
  • threads: linux: simplify setting thread priority by @lrusak in #23227
  • TextureFormats.h: use XB_FMT as an enum by @lrusak in #23240
  • [Windows] remove unnecessary log for Intel without super resolution scaler support by @CrystalP in #23372
  • Maintain the selection position after end of playback / watched status change by @CrystalP in #23311
  • [Estuary] Reset 1110_seekbar timer on seeks by @enen92 in #23380
  • AudioTrack: Check Head Movement to detect stuck sinks by @fritsch in #23375
  • [PVR] Timer settings dialog: Set certain settings to default on change of timer type by @ksooo in #23384
  • [tools/depends][target] fix removed download target by @fuzzard in #23379
  • [Windowing] Fix regression for resolution label by @enen92 in #23371
  • [Windows] HLG > PQ HDR Playback Fixes by @CrystalP in #23362
  • [video] Fix watched/unwatched filter not working when creating playli… by @ksooo in #23394
  • Pipewire: Catch exceptions in CPipewire::Create() by @neo1973 in #23282
  • [Estuary] Also start timer (with reset) on seeks by @enen92 in #23399
  • [Windows][dxva] Disable processor tone mapping for AMD and HDR to HDR by @CrystalP in #23404
  • [Windows] Add render method information to the debug OSD by @CrystalP in #23377
  • [Omega] Alpha 2 by @fuzzard in #23407
  • Native Flatbuffers update and minor cmake module update by @fuzzard in #23395
  • [tools/depends][target] config.site remove PYTHON_VERSION variable by @fuzzard in #23378
  • [Android][cmake] adjust macros according to the API we are targeting by @joseluismarti in #23414
  • [Windows][dxva] refactor video processor code by @CrystalP in #23408
  • [windows] Distinguish between host/native download/tools for windows build by @fuzzard in #23409
  • [tools/depends][native] texturepacker update and use cmake to build by @fuzzard in #23396
  • [Windows] Remove workaround for Video Super Resolution by @thexai in #23416
  • [PVR] Dynamic timer types: Update timer types from client whenever a … by @ksooo in #23393
  • [windows] remove doxygen from native dep list by @fuzzard in #23418
  • [skin, gui] Look for definitions in xml files in /fonts directory by @smfontes in #22993
  • [windows] Dont ship vswhere executable by @fuzzard in #23425
  • [Windows][dxva] Test support of the video processor for SDR to SDR conversion by @CrystalP in #23423
  • [Windows][deps] Bump libass to 0.17.1 by @CastagnaIT in #23420
  • [Windows] Add "Graphics" log component for Direct3D by @CrystalP in #23422
  • [Windowing] Make HiDPI more generic/platform agnostic by @enen92 in #23410
  • Build jsonschemabuilder for all platforms from source by @fuzzard in #23419
  • [cmake] TexturePacker: don't force static libraries by @lrusak in #23428
  • Windowing: fix dialog confirmation not showing when moving fullscreen… by @enen92 in #23432
  • [macOS] Default to nativewindowing by @enen92 in #23438
  • [Windows] DXVAHD: simplifies parameters in CProcessorHD::Open() by @thexai in #23440
  • [Android] Remove unnecessary if and use MediaFormat constants by @joseluismarti in #23442
  • Translations update from Kodi Weblate by @weblate in #23370
  • Sync of addon metadata translations by @github-actions in #23446
  • [Subtitles] Add support to font collection (.ttc) by @CastagnaIT in #23429
  • [Subtitles][libass] Enable bidi brackets for adapted subs by @CastagnaIT in #23421
  • [Windows] Setting for high precision processing / HDR tone mapping by @CrystalP in #23359
  • [Android] Prefer Google raw decoder over MediaTek on old Android devices by @joseluismarti in #23447
  • [Windows] refactor DXGI_FORMAT to std::string for Debug Info OSD by @thexai in #23456
  • [Windows] refactor Video Super Resolution by @CrystalP in #23458
  • [video] Fix auto play next video not working from inside video info dialog by @ksooo in #23460
  • [clang-tidy] fix performance-* warnings by @Rechi in #22812
  • [Windows] Remove unused code in DeviceResources.cpp by @thexai in #23464
  • [Windows] remove unused extra frame rate doubling for interlaced resolutions in CVideoSyncD3D by @CrystalP in #23463
  • [PVR] Fix some CPPCheck and clang-tidy warnings by @ksooo in #23459
  • [input] remove unused tinyxml usage in InputCodineTableFactory by @fuzzard in #23465
  • [Windows] Fix: show 119.88Hz and future higher fractional refresh rates correctly by @CrystalP in #23461
  • [addons] fix debug assert because of non-deterministic comparison of dependencies by @CrystalP in #23469
  • Revert "[Android][cmake] adjust macros according to the API we are targeting" by @joseluismarti in #23475
  • [video] Take 2 to fix auto play next video not working from inside video info dialog. by @ksooo in #23474
  • [music][video] Context menu play items: Set playlist_type_hint before… by @ksooo in #23478
  • [Estuary] Reset timer as long as the osd is shown by @enen92 in #23476
  • Peripheral API v3.0.1: Expose keyboard/mouse types to add-on by @garbear in #23468
  • [Windows] RetroPlayer: Fix blue/pink washed out colors on 10-bit displays by @garbear in #23467
  • [guilib][vfs][imagecache] Load video thumbnail images into texture cache when viewed, like standard images by @rmrector in #23134
  • [Windows] Remove unused variables by @thexai in #23491
  • [Windows][dxva] refactor CProcessorHD/CEnumeratorHD to remove direct access to the D3D enumerator interfaces by @CrystalP in #23484
  • [macos][nativewindowing] Check and update monitor setting on startup by @enen92 in #23496
  • Games: Stable player assignment by @garbear in #23482
  • Savestate Manager: Map "delete" key in savestate dialogs by @garbear in #23471
  • CWinSystemGbm: fix issues if drm connector doesn't list any modes by @lrusak in #23415
  • Sync controller add-ons for 21 Alpha 3 by @garbear in #23486
  • Fix Visual Studio warning C4701: potentially uninitialized local variable used by @thexai in #23492
  • Game OSD: Move controller ID from core to the skin by @garbear in #23501
  • Port Dialog: Fix segfault when choosing a controller, and minor improvements by @garbear in #23499
  • [Windows] Refactor DXVA renderer to enumerate and use the supported conversions by @CrystalP in #23513
  • [Windows] Fix refresh rate switch for Intel and nVidia when changing colorspace by @CrystalP in #23522
  • [GUIWindowVideoBase] Fix wrong item data pointer by @CastagnaIT in #23520
  • [discs] Rename HAS_DVD_DRIVE to HAS_OPTICAL_DRIVE by @enen92 in #23523
  • [clang-tidy] modernize-use-default-member-init by @Rechi in #23470
  • [Windows] improve user experience when Windows HDR is ON by default by @thexai in #23509
  • [discs][settings] Fix missing HAS_DVD_DRIVE renames by @enen92 in #23530
  • Add "Student submission" check mark in PR template by @garbear in #23515
  • [tools/depends][native] Fix requirement for TexturePacker in makefile by @fuzzard in #23462
  • [Windows][Android] Remove some settings includes and better HDR settings code reuse by @thexai in #23527
  • Port Dialog: Highlight active controllers by @garbear in #23521
  • [python] pass sys.argv strings in logical order to python addons by @scott967 in #23532
  • Fix DVD disc device playback (#20048) by fixing device url initialization by @dmahurin in #23488
  • [discs] Improve Linux dvd playback without mounting by @enen92 in #23531
  • [docs][python] improve documentation of windowed play arg by @enen92 in #23559
  • [upnp] Move upnp item resolve to IDirectory implementation by @enen92 in #23555
  • [depends] Bump libbluray to 1.3.4 by @enen92 in #23536
  • [Windows] DXVA: minor code improvements by @thexai in #23552
  • [webOS] Appstore submission media fixes by @sundermann in #23537
  • Games: Add Player Viewer (aka "Player Manager Light") by @garbear in #23548
  • Fix building with fmt >= 10 by @lrusak in #23453
  • [plugins] Move plugin resolve to IDirectory implementation by @enen92 in #23554
  • [AddonSettings] Fix setting persistency when acessing raw Settings interface by @enen92 in #23558
  • Translations update from Kodi Weblate by @weblate in #23473
  • Sync of addon metadata translations by @github-actions in #23572
  • [macos][nativewindowing] Fix low fps on the GUI rendering code by @enen92 in #23578
  • [guilib][vfs][imagecache] Load picture folder images into texture cache when viewed, like standard images by @rmrector in #23517
  • [PVR] Refactor channel groups class hierarchy. by @ksooo in #23570
  • fixed: fix compiling with libfmt8 by @fuzzard in #23582
  • RetroPlayer: Two minor code improvements by @garbear in #23568
  • PythonBindings: TypeInfo: add initialization of tp_watched for PyTypeObject by @lrusak in #23508
  • [InputStream] Fix extradata size casts by @CastagnaIT in #23539
  • ALSA: Ensure pcm name conflicts resolve to descriptive names by @runderwo in #23290
  • android_printf: va_copy should be used if reuse va_list by @joseluismarti in #23347
  • [dxva] Refactor the choice of conversions / restore support for RGB input by @CrystalP in #23573
  • guilib: Two minor code cleanups by @garbear in #23569
  • [dxva] Fix flash/wrong picture when skipping by @CrystalP in #23542
  • VideoPlayer: ffmpeg change default software deinterlacer from yadif to bwdif by @alanswanson in #23298
  • [Windows] improve GetAdapterDesc() - return struct by value by @thexai in #23585
  • Update mouse controller profile to fix misspelling by @garbear in #23590
  • [depends] bump curl to 8.1.2 by @joseluismarti in #23466
  • [playlist] add b4s playlist recognition to music and tests by @fuzzard in #23450
  • [Windows][Linux] Improve dither settings by @thexai in #23550
  • [macOS][nativewindowing] Fix moving between different hidpi screens w… by @enen92 in #23579
  • [Android] Target selection: unneeded explicit definition of ANDROID_API by @joseluismarti in #23369
  • [cmake][macOS] Allow building without xbmchelper - default for arm64 by @enen92 in #23584
  • Use 64K file read chunk size for local files: USB files, external hard drives, etc. by @thexai in #22941
  • [video] Fix default select action by @ksooo in #23594
  • [macos] Remove unneeded include from CApp by @enen92 in #23593
  • [webOS] Forcefully disable Pulseaudio by @sundermann in #23562
  • Implement tinyxml2 and start migration of some tinyxml1 usage by @fuzzard in #23441
  • [depends][windows] Fixup for libbluray version by @enen92 in #23565
  • [webOS] AESinkStarfish: Passthrough sink improvements by @sundermann in #23538
  • [webOS] Video decoder improvements by @sundermann in #23597
  • [discs] fix playback of iso-files by @howie-f in #23604
  • [videoplayer] use ffmpeg types in VideoPicture by @CrystalP in #23596
  • [cmake] FindTinyXML2 handle further corner cases distro packaged cmake config by @fuzzard in #23605
  • [Skintimers] Fix log line and remove unused include by @enen92 in #23608
  • DVDDemuxFFmpeg: Fix issues after st->cur_pts replacement by @popcornmix in #23557
  • [cmake] FindTinyXML2 linux corner case for internal build if sys lib exists by @fuzzard in #23609
  • [Windows][dxva] Don't send repeated frames through the processor / Fix nVidia deinterlacing / VSR with deinterlacing by @CrystalP in #23606
  • [Windows] Extend high precision setting to use 10 bit or better for all streams by @CrystalP in #23617
  • [imagecache] Don't check special generated images for file changes every 24 hours by @rmrector in #23567
  • [SkinTimers] Add unit tests for skin timer parsing by @enen92 in #23620
  • AdvancedSettings: exclude '@eadir' from scan, auto generated by DSM (Synology) by @thexai in #23632
  • Player Viewer: Two fixes by @garbear in #23610
  • [Windows] fix 'FileTimeToLocalFileTime' to account for daylight saving by @thexai in #23631
  • [docs] Fix for-the-badge badges by @enen92 in #23628
  • [cleanup] change deprecated 'CAddonMgr::IsCompatible(const IAddon& ad… by @howie-f in #23602
  • [Android] CXBMCApp: unnecessary check of the API level currently running… by @joseluismarti in #23635
  • DVDDemuxFFmpeg: Fix issues after st->cur_pts replacement part 2 by @popcornmix in #23629
  • [Android] CXBMCApp: remove unnecessary GetSDKVersion method by @joseluismarti in #23626
  • CURL: Take advantage of std::string move semantic by @neo1973 in #23345
  • [dbiplus] String optimiziations + prevent copies by @neo1973 in #23344
  • [CGUIDialogContextMenu] fix memory leak by @repojohnray in #22477
  • [GUI][macos][nativewindowing] Kill XBMC_FULLSCREEN_UPDATE event by @enen92 in #23637
  • [SkinTimers] Migrate to tinyxml2 by @enen92 in #23627
  • [Windows] fix WASAPI devices enumeration: "WASAPI:default" is repeated multiple times by @thexai in #23645
  • [tinyxml2] Assorted further migrations by @fuzzard in #23601
  • [input] migrate to tinyxml2 by @fuzzard in #23600
  • [clang-tidy] fix performance-* warnings by @Rechi in #23611
  • [video]]Estuary] Improve support for "video information" for movie sets and TV show seasons by @ksooo in #23613
  • [windowing][dx] Implement ForceFullScreen to get rid of CApp ifdef by @enen92 in #23634
  • [DVDDemux] Add new audio codec descriptions by @CastagnaIT in #23524
  • [InputStream] Add support to audio codec profiles / ClearKey crypto type by @CastagnaIT in #23541
  • [PVR][Settings] Recording timer padding by @ivanllc in #23644
  • [macOS][nativewindowing] Event location only makes sense for mouse ev… by @enen92 in #23630
  • [MUSIC][GUI]Fix flickering when updating multiple song items via json… by @the-black-eagle in #23647
  • [macos][nativewindowing] Signal mouse enabled/disabled when window becomes … by @enen92 in #23659
  • [macos][nativewindowing] Add support for mediakeys by @enen92 in #23661
  • [tools/depends][python3] Bump to 3.11.5 by @fuzzard in #23665
  • [video] Fix watched state / last played not preserved on internet update by @ksooo in #23667
  • [video][PVR][Estuary] Watched Information Improvements by @ksooo in #23658
  • [PVR] Fix TV channel subtitles not displayed on playback start, … by @ksooo in #23669
  • [video] VIDEO_UTILS: Simplify GetFolderItemResumeInformation implementation by @ksooo in #23672
  • [video] Unify code paths for 'choose art'… by @ksooo in #23675
  • [Wayland] Skip unknown key events by @sundermann in #23654
  • [Estuary] View_501_Banner.xml: Fixed syntax error (unmatched parentheses). by @ksooo in #23678
  • [macos] Return 'not available' instead of 0.0 for cpu/gpu temps by @enen92 in #23676
  • [video] Unify code paths for 'show video information' … by @ksooo in #23674
  • VideoPlayer: VAAPI - fix VP9 Profile 2 playback by @smp79 in #23683
  • [info] Move network infos to sysinfo by @enen92 in #23680
  • [PVR] CPVRChannelsPath: fix typo. by @ksooo in #23690
  • [video] Fix movie set overview not updated when refreshing data. by @ksooo in #23691
  • [video] Improve library refresh progress dialog content a bit. by @ksooo in #23692
  • [Android] bump Gradle Wrapper to 8.3 by @joseluismarti in #23697
  • [macos][network][info] Improvements to DNS determination by @enen92 in #23689
  • [video] VIDEO_UTILS::CAsyncGetItemsForPlaylist::GetItemsForPlaylist: … by @ksooo in #23694
  • [guilib][guiinfo][Estuary] LISTITEM_IS_RESUMABLE: Added support for folders. by @ksooo in #23693
  • Games: Fix clang-formatting after tinyxml2 update by @garbear in #23695
  • ActiveAESink: Use AddPause for DD+ again in RAW mode by @fritsch in #23687
  • CWebSocketFrame: Fix alignment issues by @neo1973 in #23643
  • [Cmake] Several fixes for TARGET usage by @fuzzard in #23612
  • call -eventWithCGEvent: on the main queue by @enen92 in #23704
  • [listproviders][Estuary][PVR] Add special 'more...' item to size limited lists in case there are more items available. by @ksooo in #23682
  • CPUInfoLinux: Support cpu_thermal hwmon temperature module by @popcornmix in #23703
  • [Android] Replaces some value strings used directly in the code... by @joseluismarti in #23625
  • [Android] MediaCodec: Add support for AV1 Dolby Vision codec selection by @quietvoid in #23595
  • Install wayland session entry by @amazingfate in #23621
  • [video] Fix art selection dialog re-appearing endless on 'Set actor … by @ksooo in #23707
  • [depends][Android] Add base dependencies setup for libdovi by @quietvoid in #22546
  • [ActiveAESink] Improves sinks enumeration names and fallback logic when exact sink name not exists by @thexai in #23650
  • [cmake] fix comments referencing incorrect names by @fuzzard in #23719
  • [video] Fix 'Local art' missing in art selection dialog. by @ksooo in #23717
  • [video] Fix no information dialog for music videos. by @ksooo in #23723
  • [Estuary][PVR] Revert showing 'in progress' movies/episodes along with the watched status. by @ksooo in #23725
  • [ActiveAE] Fix parsing audio devices names when names contains ':' character by @thexai in #23728
  • DVDDemuxFFmpeg: Fix issues after st->cur_pts replacement part 3 by @popcornmix in #23709
  • [video] Art selection dialog: Fix support for embedded art. by @ksooo in #23726
  • [video] Fix 'Scan to library' on a directory containing a movie file doesn't work anymore. by @ksooo in #23733
  • [Omega] Alpha3 by @fuzzard in #23730
  • [doxygen] System.HasNetwork is not implemented. Document this by @fuzzard in #23736
  • [cmake][buildtools] use flatbuffers::flatc target for executable by @fuzzard in #23714
  • [cmake] convert some find modules to full TARGET usage by @fuzzard in #23727
  • [webOS] Support relaunch by @sundermann in #23684
  • Some small simplifications by @notspiff in #23740
  • [cmake][win] Generate complete build dir layout for Multiconfig gen (VS) by @fuzzard in #22112
  • [macos][network] Avoid executing shell commands to get the DefaultGateway and nameserver list by @enen92 in #23724
  • [XBMCTinyXML2] Resolve warnings by @enen92 in #23744
  • [video] Refactor artwork selection (last step) by @ksooo in #23734
  • [PVR] Fix CPVRRecordingsPath path directory/params parsing. by @ksooo in #23751
  • [Cmake] fix dav1d ENABLE_INTERNAL build by @fuzzard in #23746
  • [cmake] Add FindDetours for windows by @fuzzard in #23747
  • [info] Platform code for GPUInfo by @enen92 in #23741
  • Fixup warnings macos by @enen92 in #23756
  • [cmake] Remove XBT_FILES as a dependency of generate-packaging TARGET by @fuzzard in #23761
  • [cmake] Migrate more modules to TARGET usage by @fuzzard in #23748
  • [MUSIC] Scrape, store and process yt links from TADB for songs in a users local library by @the-black-eagle in #22654
  • [Video] Fix crash when scan to library on a directory containing new movies by @joseluismarti in #23767
  • [Windows] Fix 24Hz refresh rate when HDR is ON on AMD systems by @thexai in #23766
  • [video] CVideoTagExtractionHelper::ExtractEmbeddedArtFor: Use item's dyn path by @ksooo in #23774
  • [VideoPlayer] Fixed: Infinite video halt when cache is full & valid by @honest-mule in #23760
  • [pipewire] Fix heap-use-after-free in AE::SINK::CAESinkPipewire::EnumerateDevicesEx by @dobo90 in #23716
  • tools/depends: Fix rustup by delegating shell choice to shebang by @garbear in #23755
  • [cmake] Fix linux Install.cmake after PR 22112 by @fuzzard in #23754
  • [cmake] Add platform specific cmake search configurations by @fuzzard in #23776
  • [android] Allow packaging other themes for bundled skins by @fuzzard in #23782
  • [cmake] gen_skin_pack move to add_custom_command by @fuzzard in #23779
  • [guilib][vfs][imagecache] Load video chapter images into texture cache when viewed, like standard images by @rmrector in #23639
  • [video] 'Choose art' improvements by @ksooo in #23775
  • [PVR][Estuary] Add ParentalRatingCode availability for Skins by @DeltaMikeCharlie in #23586
  • [depends][native] Bump meson 1.2.1 by @fuzzard in #23790
  • [darwin] Fix header inclusion for Xcode 15 by @fuzzard in #23791
  • [cmake] Add build targets always for multi config generators by @fuzzard in #23750
  • [cmake] gen_skin_pack remove BYPRODUCT to fix ninja build by @fuzzard in #23795
  • [webOS] Signal Dolby Vision with AV1 codec by @quietvoid in #23771
  • [depends] Bump zlib to 1.3 by @joseluismarti in #23794
  • [FileCache] code improvements, no functional changes by @thexai in #23802
  • [Estuary] Update aspect ratio of InfoWallMovieLayout by @gemedet in #23745
  • [video] Video info dialog: Reinit cast list on re-open of dialog afte… by @ksooo in #23810
  • [webOS] RendererStarfish: Derive from CBaseRenderer by @sundermann in #23815
  • Fix build of native/waylandpp-scanner with GCC 13 by @throwaway96 in #23825
  • [cmake] add_custom_command only use OUTPUT genex for multi config generators by @fuzzard in #23823
  • [Cmake] Create build_internal_depends for MultiConfig Generators by @fuzzard in #23807
  • [Cmake] assorted updates to search paths and fixes to *_LIBRARIES usage by @fuzzard in #23809
  • [Cmake] FindASS migrate to TARGET usage by @fuzzard in #23824
  • [tools/depends][native] gettext force am_cv_func_iconv_works for apple host by @fuzzard in #23829
  • [webOS] Don't assume libraries in RUNPATH to be available by @sundermann in #23826
  • [webOS] Tune for Cortex-A53 by @throwaway96 in #23822
  • [cmake] More TARGET usage (opengl/opengles/iconv/Pulseaudio) by @fuzzard in #23749
  • [Android] Replace enum HDRTypes with Display.HdrCapabilities constants by @joseluismarti in #23769
  • [upnp] Fix smart playlist folder definitions by @enen92 in #23831
  • Fix detect strm file for resume. by @Acidzero2020 in #23841
  • [video] use ffmpeg av_display_rotation_get for rotation from metadata by @enen92 in #23832
  • [cmake] add EXCLUDE_FROM_ALL when adding to build_internal_depends by @fuzzard in #23842
  • [listproviders] CDirectoryProvider: Add attribute 'browse' … by @ksooo in #23814
  • [edl] Allow EDL files on private subnets for network shares rather than the one the Kodi host in on by @enen92 in #23836
  • [db][streamdetails] Reintroduce external subtitles into streamdetails by @enen92 in #23835
  • [guilib] let oninfo propagate from the item to the container if the c… by @enen92 in #23843
  • [docs] minors for streamdetails by @enen92 in #23849
  • [windows] Fix CGUIMediaWindow::WaitGetDirectoryItems to leave 'wait f… by @ksooo in #23844
  • [listproviders][video][PVR][utils][builtins] Fix and Refactor Video Select Actions by @ksooo in #23848
  • Revert "[docs] Fix for-the-badge badges" by @enen92 in #23852
  • Add infolabels for video width and height by @graham8 in #23850
  • [cmake] windows remove superfluous installdata by @fuzzard in #23853
  • [macos][depends] Add Smctemp to depends by @enen92 in #23770
  • [macos][input] Support NSEnterCharacter for XBMCK_RETURN by @enen92 in #23860
  • [favourites][listproviders] Add support for Video Select Actions for Favourites by @ksooo in #23857
  • [webOS] Acb (webOS 4.x) support by @mariotaku in #23834
  • [webOS] Fix timezone reading by @sundermann in #23847
  • [cmake] FindRapidJSON update to newer module standards by @fuzzard in #23851
  • Build curl without libpsl dependency by @throwaway96 in #23837
  • [Android] Neon is being enabled by default by @joseluismarti in #23830
  • [settings][video][PVR][listproviders][favourites] Add default play action setting. by @ksooo in #23863
  • [Estuary][Estouchy] Retire Favourites dialog, use Favourites window instead. by @ksooo in #23861
  • [favourites] Remove CGUIDialogFavourites. by @ksooo in #23862
  • [macOS] Drop SDL windowing implementation by @enen92 in #22990
  • [cmake] Refactor and simplify FindFmt.cmake by @fuzzard in #23876
  • [fileitem] Fix playlist favourites not working as expected by @ksooo in #23881
  • CAddonSettings: Prevent reference cycle with CAddon by @neo1973 in #23864
  • [macos][cocoainterface] Address deprecations by @enen92 in #23880
  • [VideoPlayer] Updates audio/video queues for nowadays maximum bitrates by @thexai in #23883
  • [cmake][linux] remove unused variables by @fuzzard in #23891
  • [favourites] Fix CFavouritesService::IsFavourited to only compare man… by @ksooo in #23885
  • [video] Fix 'Play using' and external default player not working. by @ksooo in #23894
  • [Teletext] Only override the language code from header if it is actua… by @enen92 in #23890
  • [DRMPRIME] Remove pitch check by @jernejsk in #23889
  • [GUIDialogTeletext] Mark dirty if data has changed in the decoder by @enen92 in #23896
  • [favourites] Add selected items of the target to favourite's context menu by @ksooo in #23895
  • [video] CGUIWindowVideoBase: Fix CVideoSelectActionProcessor::OnResumeSelected by @ksooo in #23902
  • Translations update from Kodi Weblate by @weblate in #23666
  • [video] Fix play/resume of DB and DVD disc images not working from Homescreen widgets by @ksooo in #23905
  • [Android][docs] Install NDK using Android SDK Manager by @joseluismarti in #23888
  • [windows] CGUIMediaWindow::OnContextButton: Fix 'Browse into' … by @ksooo in #23909
  • [video][music] Migrate 'Play using...' to "new" context menu system. by @ksooo in #23901
  • [webOS] Acb: Install empty dummy library by @sundermann in #23906
  • [upnp] Fix upnp thumbs when using Kodi as a renderer by @enen92 in #23910
  • [webOS] Revert "webos: Disable getauxval" by @sundermann in #23911
  • [video][music] Migrate last pieces of 'Browse into' to new context menu system. by @ksooo in #23915
  • [upnp] clang-format UPnPInternal.cpp by @enen92 in #23916
  • [cmake] FindIconv dont add target if libc is the detected provider for iconv by @fuzzard in #23912
  • [cmake] FindOpenGLES add IMPORTED_NO_SONAME property by @fuzzard in #23913
  • [clang-tidy] modernize-make-(shared|unique) by @Rechi in #23904
  • [video][music] Hide play-related context menu items for party mode pl… by @ksooo in #23919
  • [cores] Fix external player not recognized as default player. by @ksooo in #23923
  • [webOS] Set required memory by @sundermann in #23805
  • [favourites] Fix context menu item 'play' and 'resume' not working. by @ksooo in #23925
  • add missing c++ headers by @mlauss2 in #23920
  • changed: Redact paths in audio/video error toasts by @arnova in #23918
  • [favourites][listproviders] Favourites: Add support for action 'info'. by @ksooo in #23924
  • fix python XBMCAddon::xbmcgui::Window::onAction() action.getButtonCode() by @icr8ions in #23789
  • [fileitem][pvr] Fix context menu item "information" not working... by @ksooo in #23930
  • [application] Fix bd selection menu shown when external player is used. by @ksooo in #23931
  • [webOS] Pause video on minimize by @sundermann in #23854
  • [Windows][UWP] VSync Detection Fixes and Improvements by @CrystalP in #23893
  • [PVR] Fix 'switch to previous channel' not working if it is in anothe… by @ksooo in #23932
  • [fileitem] Fix mimetype not set/updated properly on loading details. by @ksooo in #23939
  • [wayland][input] Remove dead code by @enen92 in #23938
  • [webOS] Renderer: Fix render region by @sundermann in #23917
  • [favourites] Fix crash on moving items in favourites widget and favourites window. by @ksooo in #23946
  • [Android] Clang -march flag is not needed by @joseluismarti in #23872
  • [clang-tidy] fix performance-* warnings by @Rechi in #23941
  • [linux] add --gl-interface= switch by @lrusak in #23907
  • CPlatformFreebsd: use app params to set audio backend by @lrusak in #23886
  • CNetworkPosix: implement ping using sockets instead of system call to ping by @lrusak in #23870
  • [uPnP] Fix playback of files accessed with curl (ftp, http, ...) by @CrystalP in #23711
  • [Android][FFmpeg] flag --enable-neon has no actual effects on Android targets by @joseluismarti in #23839
  • [keymaps] Remove leftovers from favourites dialog. by @ksooo in #23951
  • [rendering] use default luminance for tone mapping of streams with bad metadata by @CrystalP in #23078
  • [Eventlog] fix eventlog messages by @DaVukovic in #23827
  • [cmake] FindPulseAudio fix compile definition by @fuzzard in #23955
  • [Omega] Beta1 by @fuzzard in #23948
  • [webOS] Platform: Fix HOME variable append by @sundermann in #23954
  • [cores] Fix CDVDInputStreamBluray::Open check for item being resumable. by @ksooo in #23967
  • [playlistplayer] Fix PVR items not handled correctly. Those need to b… by @ksooo in #23961
  • [video] CGUIWindowVideoBase::OnItemInfo: Skip check whether a video i… by @ksooo in #23969
  • [GUI][Skins] Bump to xbmc.gui 5.17.0 by @jjd-uk in #23926
  • [PVR] Fix playing channel not always highlighted in dialogs/windows. by @ksooo in #23971
  • [interfaces] Fix PVR channel playback from remote app 'favourites' by @ksooo in #23972
  • [video] Fix 'Play using' offering RetroPlayer for playback of iso bd/dvd disc images. by @ksooo in #23983
  • [video] Fix CVideoDatabase::GetMusicVideosByWhere to set dyn path … by @ksooo in #23980
  • [tools/depends] Bump wayland related dependencies by @fuzzard in #23982
  • Fix Visual Studio warnings by @thexai in #23976
  • [PVR] Fix/Improve recently played channels widget (e.g. respect hidden groups and channels). by @ksooo in #23985
  • [Windows] Disable video settings not supported by the DXVA processor. by @CrystalP in #23988
  • [tvos] Resolve some build issues with Xcode 15 by @fuzzard in #23949
  • [cmake] Create FindPythonInterpreter for host information by @fuzzard in #23877
  • [docs] Coding guidelines changes by @ksooo in #23998
  • [cmake] add ${CORE_PLATFORM_NAME_LC}_SEARCH_CONFIG NO_DEFAULT_PATH for windows by @fuzzard in #23997
  • Switch remote poweroff button behaviour to show shutdown menu, like on keyboards by @HiassofT in #23806
  • [tools/depends] Bump Python 3.11.6 by @fuzzard in #23995
  • VDPAU: fix hq scalers by @smp79 in #23973
  • Format GUIControlFactory.cpp/h by @garbear in #23979
  • [python][window] Delete pcontrol after SendGUIMessage by @CastagnaIT in #24002
  • [upnp] Alternative fix for serving smartplaylists via upnp by @enen92 in #24008
  • [docs] Coding guideline: Add, that we are using prefix operators in t… by @ksooo in #24004
  • [depends][Python] Set setuptools library suffix by @sundermann in #23994
  • Don't flush ffmpeg buffers if it holds any refs on close by @smp79 in #23996
  • [Estuary] OSD showing wrong value for ‘Next’ programme when playing radio. by @FergusGeorge in #24017
  • [Estuary] Fix home categories focus position by @Hitcher in #24000
  • [wayland][input] Add xkb compose and dead-keys support by @enen92 in #23943
  • Fix 'Shift' view for Collections by @Hitcher in #24024
  • [video][music][interfaces][fileitem] STRM file fixes by @ksooo in #24025
  • [FileSystem] Add GUI settings for NFS and SMB chunk size by @thexai in #24019
  • Fix controller not rendering for copied gamecontroller controls by @garbear in #23987
  • [PVR] const correctness improvements. by @ksooo in #24029
  • [GUI] [Skins] Add locale InfoLabels for Skins by @DeltaMikeCharlie in #24028
  • [video][PVR] Info dialogs: Add support for default play action by @ksooo in #24031
  • [contextmenumanager] Fix 'More...' context menu item displayed for favourites… by @ksooo in #24037
  • [Estuary] Fix alignment of counter labels in File Manager by @Hitcher in #24041
  • [python] Fix xmbc.getRegion("time") by @mglae in #24009
  • [xkbcommon] Unify xkbLogger by @enen92 in #24045
  • [builtins] PlayerBuiltins: PlayOrQueueMedia: Fixes by @ksooo in #24048
  • [fileitem] Fix 'action play' not working for favourites for strm files. by @ksooo in #24047
  • VAAPI: increase maxReferences for AV1 by @smp79 in #24042
  • [PVR] Fix recordings with a path containing a ':' not displayed in recordings window. by @ksooo in #24053
  • [CApp] Kill XBMC to Kodi migration by @enen92 in #24052
  • [python] Add songVideoURL to InfoTagMusic by @the-black-eagle in #24061
  • [PVR][Estuary] PVR core should not set label2 for PVR recording folde… by @ksooo in #24059
  • [cmake] copy_file_to_buildtree make sure we create ExportFiles.cmake by @fuzzard in #24056
  • [tools/depends] Bump openssl 1.1.1w by @fuzzard in #24003
  • Use std::make_(shared|unique) by @notspiff in #23757
  • [Cmake] enable_internal_cec by @fuzzard in #21585
  • [imagecache] CVideoGeneratedImageFileLoader check setting to extract thumb by @rmrector in #24006
  • [imagecache] clarify logic around image revalidation, fixing some images returning 404 via HTTP by @rmrector in #23956
  • [input] Use smartpointers to wrap raw xkb pointers in libinput by @enen92 in #24036
  • [libinput] Add dead-key xkbcommon-compose support by @enen92 in #24044
  • [Documentation] Update doxygen for v20 and v21 game-related changes by @garbear in #24055
  • [Discs] Fix ISOs are opened using File Cache in some cases and bad read size (sector size) by @thexai in #24060
  • [Estuary] Player Viewer: Give example static content for skin devs by @garbear in #24073
  • Picture: Switch internal functions to use smart pointers by @neo1973 in #24022
  • Fix crash due nullptr surface using DXVA2 by @fritsch in #24085
  • [Estuary] Fix weather layout when busy by @Hitcher in #24090
  • Backport weather fix by @Hitcher in #24091
  • Revert "Backport weather fix" by @Hitcher in #24092
  • [FileSystem] Move File Cache settings to GUI settings by @thexai in #24049
  • [video] GUIWindowVideoNav.cpp: Remove unused include. by @ksooo in #24094
  • [Rendering] Share the heuristics guessing SD/HD primaries across platforms by @CrystalP in #23953
  • [macOS][Jenkins] migrate from altool to notarytool by @kambala-decapitator in #24032
  • [Doxy] Improve documentation of game windows by @garbear in #24079
  • [cmake] FindEGL set CMAKE_REQUIRED_INCLUDES for check_include_files by @lrusak in #24099
  • [Xbox] Add support for HDR10 passthrough by @thexai in #24083
  • tools/depends: curl adjust configure options by @lrusak in #24089
  • [Xbox] Fix crash on close App by @thexai in #24104
  • [Doxy] Fix formatting of Window IDs table by @garbear in #24106
  • Fix/update strings.po with translations for game window IDs by @garbear in #24071
  • Add tranlation for Peripherals dialog with ID 10149 by @garbear in #24105
  • windowing/gbm: add EGL fencing for atomic drm by @lrusak in #23921
  • [builtins] PlayerBuiltins::PlayOrQueueMedia: Fix logging and slightly optimize by @ksooo in #24114
  • [Android] Unused variable m_colorFormat in MediaCodec by @joseluismarti in #24103
  • [videoplayer] Go to Chapter Start for "Previous Chapter" Past Grace Period by @CrystalP in #24066
  • [guilib][vfs][imagecache][pvr] Load PVR group images into texture cache when viewed, like standard images by @rmrector in #24087
  • ffmpeg: Bump to version 6.0.1 by @fritsch in #24080
  • [PVR] CGUIWindowPVRBase: Prevent concurrent updates caused by GUI_MSG_UPDATE by @ksooo in #24118
  • [fileitem] CFileItem::LoadDetails: Add support for strm files containing an audio item. by @ksooo in #24119
  • [PVR] Fix racing problems due to ACTION_CHANNEL_SWITCH message being … by @ksooo in #24116
  • [video] CAsyncItemsForPlaylist: If we shall resume but can't, default… by @ksooo in #24120
  • [Settings] Adjust the "Use display HDR capabilities" setting by @CrystalP in #24100
  • [Settings][Windows] Update the description of the DXVA VSR setting by @CrystalP in #24123
  • [VideoPlayer] Fix cache level calculation and add to Debug Info OSD by @thexai in #24117
  • [clang-tidy] modernize-use-emplace by @Rechi in #23960
  • Correctly handle 'Disc n' subdirectories in scraping and set creation. by @78andyp in #24076
  • [Estuary] Modify settings decription field to avoid unnecessary autoscroll by @CrystalP in #24124
  • [VideoPlayer] Remove unused code by @thexai in #24126
  • [Feature][video]Added Video Versions feature by @xodidox in #14972
  • [VideoVersion] Added VideoVersionPlay dialog by @xodidox in #24132
  • [Android] Check if dovi profile is supported by the codec by @joseluismarti in #23577
  • Remove article from summary by @razzeee in #24084
  • [video] Fix auto play next item not working if 'uncategorized' is not… by @ksooo in #24134
  • Fix Visual Studio warnings by @thexai in #24139
  • [Android] Set codec profile 8 in DOVI compatibility mode by @quietvoid in #24143
  • [cleanup][Windows] Remove a few compiler warnings and unnecessary global by @CrystalP in #24138
  • XBMCTinyXML2: Strip trailing '\0' when writing to file by @neo1973 in #24141
  • [Windows] address recommendations of VS code analysis tools for WinMain by @CrystalP in #24149
  • [Estuary] Add Theora video codec flag image by @joseluismarti in #24154
  • [VideoVersion] Fixed unexpected VideoVersion dialog in VideoInfo dial… by @xodidox in #24156
  • [Games] Remove hard-coded button combos by @garbear in #24147
  • [media] Consistency across platforms splash screens (avoid versions) by @enen92 in #24137
  • [Estuary] Cleanup noise from DefaultVideoVersions icon by @the-black-eagle in #24127
  • Add LoongArch support to system info by @212dandan in #23989
  • [metadata.generic.artists] 1.0.18 by @ronie in #24163
  • [Estuary] Add media flags for music by @jjd-uk in #24162
  • [swig] Fix misleading indentation warnings by @fuzzard in #24140
  • [linux][docs] add note about libdisplay-info when building kodi with gbm windowing by @lrusak in #24018
  • [Addons] Remove GLES3/gl3ext.h include by @sundermann in #23855
  • [Android] Ignore obsolete DOVI profiles from codec selection by @quietvoid in #24172
  • Fix websocket pong by @a1rwulf in #23875
  • [Android] Change the directory used to verify the SDK path by @joseluismarti in #23977
  • [Estuary] Video Version skin redesign + cleanup by @jjd-uk in #24146
  • [Estuary] Adjust plot height in video fullscreen info by @CrystalP in #24174
  • [cmake] FindRapidJSON fix capitalisation by @fuzzard in #24179
  • Translations update from Kodi Weblate by @weblate in #23963
  • Sync of addon metadata translations by @github-actions in #24190
  • [EDL] Migrate to tinyxml2 by @enen92 in #24185
  • [VideoDatabase] Fix unnecessary query is always made to obtain cast by @thexai in #24177
  • Remove use of pcrecpp from Kodi by @rschupp in #24128
  • [tools/depends][target] Bump curl 8.4.0 by @fuzzard in #24011
  • [LanguageCodes] Narrow mode for finding language code by @CastagnaIT in #23780
  • [video] Video Versions: Refactor play/select logic by @ksooo in #24180
  • [Scraper] Support for filename identifiers by @sundermann in #23840
  • DNSNameCache: check hostname can be an IPv6 address by @joseluismarti in #24200
  • [video] Refactor Video Action Processors by @ksooo in #24204
  • Add OEM 102 key (OEM key on 102-key keyboards) by @garbear in #24202
  • [tools/depends] Bump Python 3.11.7 by @fuzzard in #24194
  • Sync game controller add-ons by @garbear in #24191
  • [UPnP] Make m_delegate a unique_ptr by @enen92 in #24205
  • AddonSettings: Correct order of destructor calls by @neo1973 in #24197
  • [Estuary] Fix Shift view overlays by @jjd-uk in #24168
  • [VideoVersions] Optimize retrieval of video versions existence by @CrystalP in #24183
  • CGBMUtils: return references to objects in getters by @lrusak in #23869
  • [UPnP] Player: Make transport state thread safe by @enen92 in #24201
  • [VideoPlayer] Double the initial refresh rate for interlaced streams by @CrystalP in #24121
  • [Omega] Beta2 by @fuzzard in #24207
  • [GUI] [Skins] Bump skins backwards-compatibility abi to 5.17.0 by @jjd-uk in #23927
  • Network: dns lookup can return an IPv6 address by @joseluismarti in #24209
  • [UPnP] Fix crash when adding UPnP source while UPnP is disabled by @neo1973 in #24215
  • [groovy] Remove bundled groovy/apache commons binaries by @fuzzard in #24199
  • [DllLibCurl][TestXBMCTinyXML2] Fix memory leaks by @neo1973 in #24211
  • [Estuary] Fix shift view overlay by @jjd-uk in #24217
  • [VideoVersion] Improved the same video detection by @xodidox in #24157
  • [Windows] Fix chroma upsampling for software render method by @CrystalP in #24222
  • [video] Video Versions Playback: Fixes and Cleanup by @ksooo in #24224
  • [Windows] Fix chroma upsampling for pixel shaders render method by @CrystalP in #24221
  • [video] Video versions: Add context menu item "Play using..." and "Play version using..." by @ksooo in #24234
  • [Windows] fix chroma upscaling with software render method v2 by @CrystalP in #24237
  • [application] Fix a race condition on CApplicationPlayerCallback::m_itemCurrentFile by @dobo90 in #23710
  • [info] Deprecated Process and Colour picture/slideshow infos by @enen92 in #24218
  • [video][guilib][input] Change video versions and extra selection to use Kodi's stock select dialog by @ksooo in #24249
  • [video] CVideoInfoTag: Remove CVideoDataBase dependency. by @ksooo in #24253
  • [Estuary] Fix video version dialog 'add extras' and 'add version' button not always visible. by @ksooo in #24260
  • [video] Video version select: Hide extras/versions button if no extras/versions available. by @ksooo in #24261
  • [UPnP] Fix playback restore after pause by @enen92 in #24257
  • [guilib][GUIFadeLabelControl] Fix text right alignment by @CastagnaIT in #24266
  • Fix compiler warning in BlurayCallback.cpp by @garbear in #24265
  • [VideoPlayer] Call EnableStream when playback start disabled subtitles by @CastagnaIT in #24186
  • [info] Add Player.IsRemote and Player.IsExternal by @enen92 in #24268
  • [cmake] FindFFMPEG refactor target creation by @fuzzard in #24241
  • Fix potential segfault when missing "layoutList" element by @garbear in #24242
  • [Estuary] Hide next if conditions for next don't met by @enen92 in #24270
  • [UPnP] Move Player to its own thread by @enen92 in #24262
  • [UPnP] Player: Make hasvideo and hasaudio conditional on the item type by @enen92 in #24272
  • [Discs][UPnP] Don't show simplified menu if playing to remote players by @enen92 in #24273
  • [RSS] Fix parsing logic by @neo1973 in #24231
  • [Windows] Fix chroma upsampling for AMD dxva processor and 10 bit output of SDR sources by @CrystalP in #24227
  • [VideoDB] fix movie title index creation and version bump by @CrystalP in #24226
  • Fix edge case when downloading subtitles for http(s) streams by @Pedrock in #24252
  • [Estuary] Fix selected colours by @Hitcher in #24256
  • [Estuary] Make all views consistent with PR#24168 by @Hitcher in #24258
  • [UPnP] Player: Add option to avoid volume synchronization to target by @enen92 in #24263
  • [tvOS] Fix binary addons (PVR) multi instance settings reset by @sy6sy2 in #24259
  • [UPnP] Fix playlist playback on remote players by @enen92 in #24274
  • [UPnP] Remove unuseful code block plus strong dependency on CApp by @enen92 in #24275
  • [Settings] Disable video version scan by @jjd-uk in #24279
  • [Estuary] Fix collection info layout by @Hitcher in #24254
  • [UPnP] Assorted include cleanups by @enen92 in #24281
  • [Estuary][GUI] Do not activate fullscreen window if rendering video to remote targets (UPnP) by @enen92 in #24280
  • [video] Video version dialog: Fix artwork refresh. by @ksooo in #24282
  • [video] Video Version Dialog Cleanup by @ksooo in #24290
  • [video] Video version dialog: Fix wrong item played. by @ksooo in #24292
  • [ContextMenus] Don't show move up/down if single favourite by @enen92 in #24298
  • [dialogs] Fix CGUIDialogSubtitleSettings::BrowseForSubtitle to use it… by @ksooo in #24303
  • [Pictures] Implement Slideshow delegator design pattern by @enen92 in #24291
  • [ContextMenus][PVR] Do not show play using for live tv by @enen92 in #24297
  • [UPnP] Access to g_UserData must be protected by @enen92 in #24296
  • [video][Estuary] Separate video versions from video extras at GUI level by @ksooo in #24302
  • [video] Versions/Extras Manage Dialogs: Selection improvements by @ksooo in #24316
  • [video] Fix crash on strm file playback. by @ksooo in #24318
  • [video] Fix playback of multi-version movies. Do not prompt for versi… by @ksooo in #24327
  • Update some video versions messages by @CrystalP in #24326
  • [video] Cleanup translation of versions/extras dialog messages by @CrystalP in #24332
  • [Estuary] Fix button visibility in video versions manager by @Hitcher in #24325
  • [cmake] FindTagLib Add version test for internal build by @fuzzard in #24313
  • [video] Video versions select dialog: Highlight default version in list of versions by @ksooo in #24336
  • [video] Fix no video information available when playing strm files, … by @ksooo in #24333
  • [video][dialogs] Video versions: Fix delay before "Convert to version" video select dialog opens by @ksooo in #24331
  • [depends][Windows] msys2 fixes and update to 20231026 by @CrystalP in #24133
  • [tools/depends][target] Bump Harfbuzz + Android NDK26+ build fixes by @fuzzard in #24312
  • [guilib][GUITextBox] Use vecText to determine text width by @CastagnaIT in #24315
  • [InputStreamAddon] Fix memory leak by @neo1973 in #24214
  • [GUI] Fix focus behaviour when scrolling to the bottom of the panel by @joseluismarti in #24232
  • [Pictures] Fix exif parsing regression from v19 by @enen92 in #24344
  • [video] Separate video versions and extras items by @ksooo in #24340
  • Translations update from Kodi Weblate by @weblate in #24230
  • Sync of addon metadata translations by @github-actions in #24357
  • [video] Video Versions/Extras: More smaller cleanup and fixes by @ksooo in #24356
  • [Estuary] Update versions icon for views by @Hitcher in #24317
  • [CACerts] Update to 2023-12-12 by @fuzzard in #24361
  • Support build with taglib-2.0 by @heitbaum in #24339
  • [Video] Improve default folder for "Add Extra" file picker by @CrystalP in #24362
  • [video] Remove context menu item 'Add as version to...' by @ksooo in #24365
  • [Videodb] Fix of previous data migration and refactors by @CrystalP in #24370
  • [video] Video Versions: Fix empty context menu item label. by @ksooo in #24373
  • [Estuary] Better visual indicator of focused item by @Hitcher in #24323
  • [Android] Fix audio engine initialisation after sleep by @hugbug in #24369
  • langinfo.xml: Change Canadian shortdate format to YYYY-MM-DD by @neo1973 in #24328
  • [Pictures addons] support Date Taken sort for pics decoded via addons by @rubpa in #24307
  • [Video] Redesign of the "Add version" dialog of Manage versions by @CrystalP in #24364
  • [UPnP] Renderer: use app messenger instead of calling into g_App by @enen92 in #24376
  • [video] Fix/cleanup: We never want to obtain all video versions and all extras at the same time. by @ksooo in #24387
  • [video] Movies window: Movies/Versions node: Context menu fixes by @ksooo in #24389
  • [MUSIC] Only drop music db triggers on clean if they exist by @the-black-eagle in #24388
  • [VIDEO] Prefer nfo streamdetails over file details where possible by @the-black-eagle in #24386
  • [Video] Add a shortcut to the video dir in the Add version/extra file browsers by @CrystalP in #24394
  • [Games] Filter out "virtual" Android joysticks by @garbear in #24382
  • [fix build on linux] forward declare CMediaSource in GUIDialogVideoMa… by @howie-f in #24405
  • Format my CODEOWNERS code with clang-format-14 by @garbear in #24381
  • [Playlists] Rename song methods to generic item index by @enen92 in #24400
  • [upnp] Renderer: playlist changed is an event that should e emitted b… by @enen92 in #24396
  • [UPnP] Remove dependency on AppVolumeHandling by @enen92 in #24397
  • [Estuary] Video Versions Dialog Redesign by @jjd-uk in #24286
  • remove inclusion of MediaSource.h in GUIDialogVideoInfo.h by @howie-f in #24408
  • [GUIWindowVideoBase] Library thumbnail not updated by @78andyp in #24176
  • [Pictures] Better control of play/stop annoucements by @enen92 in #24412
  • [video] Fix disappearing artwork on end of multi-version movie playback. by @ksooo in #24415
  • [Estuary] Update DefaultVideoVersions.png by @Hitcher in #24423
  • [Estuary] Fix duplicate music flags by @jjd-uk in #24416
  • [UPnP] Fix OnSetAVTransportURI by @enen92 in #24413
  • [UPnP] Renderer: Avoid calling into the main thread for playlist play… by @enen92 in #24414
  • [UPnP] Renderer: Remove dependency on ApplicationPlayer by @enen92 in #24418
  • [videodb] Move the extras of a movie converted to a version by @CrystalP in #24434
  • [video] Refresh library list after changes in Info > Manage versions by @CrystalP in #24419
  • [Peripherals] Fix missing controller icons in Peripheral Dialog by @garbear in #24384
  • [Android] Enable logging of debug messages even if disabled system-wide (e.g. Fire TV) by @hugbug in #24432
  • Peripheral API v3.0.2: Stable peripheral locations by @garbear in #24392
  • [video][Estuary] Video Versions: Improvements and Fixes by @ksooo in #24430
  • [Posix][Filesystem] Fixed SMB logging by @hugbug in #24417
  • [CImageFile] Fix texture cache handling by @neo1973 in #24433
  • [tools/depends][target] Bump freetyppe 2.13.2 by @fuzzard in #24407
  • [UPnP] Translate object id when marked as watched by @enen92 in #24438
  • [video] CVideoDatabase::GetVideoVersionsNav cleanup after c84fdfa… by @ksooo in #24443
  • [video] Remove item 'New version...' from node 'Movies/Versions'. … by @ksooo in #24444
  • [video] Video Versions: Remove more dead code by @ksooo in #24445
  • [UPnP] Fix broadcast of item updates by @enen92 in #24450
  • [UPnP] Clang-format main files by @enen92 in #24452
  • [video] Video versions: Fix certain default select action handling scenarios by @ksooo in #24451
  • [guilib] Kill CGUIListItemLayoutPtr typedef by @enen92 in #24454
  • Update Kodi Icon for Linux packaging by @razzeee in #24310
  • Players: Always reset CDataCacheCore on close file by @enen92 in #24402
  • [guilib][utils] Set IsPlayable false on add items by @enen92 in #24461
  • [gui] Move listproviders to guilib by @enen92 in #24463
  • [FileItem][video] Remove dead code (we no longer have any videoversion items… by @ksooo in #24464
  • [video] Detect similar movies when scanning movies with nfo files by @CrystalP in #24457
  • [guillib][estuary] Make the existence of extras visible in the library by @CrystalP in #24456
  • [video] Fix video versions folder navigation. by @ksooo in #24462
  • [video] CVideoInfoTag::Reset(): Set m_isDefaultVideoVersion to false,… by @ksooo in #24473
  • [videodb] fix miss in field renaming of PR#24370 by @CrystalP in #24469
  • [video] Video versions/extras chooser: Fix button labels. by @ksooo in #24474
  • [Estuary][video] Refactor video versions select dialog to use movie items by @ksooo in #24475
  • DVDVideoCodecAndroidMediaCodec: Remove logspam when debug logging by @fritsch in #24479
  • [video] Adjust the validations and messages in add version/extra by @CrystalP in #24477
  • [clang-tidy] fix modernize-* and performance-* warnings by @Rechi in #24436
  • [video] Refresh library list after the addition of extras in Info > Manage extras by @CrystalP in #24487
  • [cppcheck] fix performance checks by @Rechi in #24411
  • [Android] Fix audio engine initialisation on startup by @hugbug in #24484
  • AndroidMediaCodec: Retry VC1 as mime type is confusing vendors by @fritsch in #24491
  • [video] correct description of 'Adjust display HDR mode' by @chewitt in #24497
  • [video] Change the name of the Manage Versions/Extras dialog by @CrystalP in #24499
  • [Estuary] Fix hasvideextras overlay for views by @CrystalP in #24482
  • [Android] ABI check removal by @joseluismarti in #24515
  • [video] Fix watched overlay image of parent movie item by @CrystalP in #24509
  • [FileSystem] Refactored and improved logic to use CFileStreamBuffer by @thexai in #24504
  • added: enable .avif image support in ffmpeg image by @notspiff in #24520
  • AndroidMediaCodec: Retry VC1 fix by @dbarkar in #24516
  • [Player Viewer] Three improvements by @garbear in #24406
  • [Android] ABI check removal: xbmc.properties file by @joseluismarti in #24519
  • [Datacachecore] Initiallize SStateInfo with sane values by @enen92 in #24522
  • [Input] Refactor to improve code organization by @garbear in #24501
  • [Windows] AESinkWASAPI: improve fallback when is not supported exact output channel layout by @thexai in #24534
  • [PVR] "Play EPG Tags as Movies" by @ksooo in #24528
  • [ContextMenus] Don't populate python context items if browsing sub-menus by @enen92 in #24543
  • AESinkPipewire: Set Samplerate for the node by @fritsch in #24363
  • [tvOS] fix assigning bundle ID to the generated frameworks by @kambala-decapitator in #24541
  • [video] rework dimensions by @DaVukovic in #24527
  • [VideoDB] restore compatibility with MariaDB < 10.5.2 by @andred in #24505
  • AESinkAudioTrack: Allow multi-channel float for new devices by @fritsch in #24553
  • AudioTrack: Simplify Channel selection by @fritsch in #24554
  • MacOS: add missing key mappings by @enen92 in #24556
  • [video] Change Versions Art Handling by @CrystalP in #24538
  • [Input] Default buttonmaps for keyboard and mouse by @garbear in #24512
  • Fix the scourge of game add-on build failures by @garbear in #24531
  • Revert "[guilib][utils] Set IsPlayable false on add items" by @enen92 in #24563
  • [Joysticks] Fix broken focus on emulated analog stick by @garbear in #24513
  • Game API v3.0.2: Mouse/keyboard addressing by @garbear in #24518
  • [tools/depends] Fix android pycryptodome package, Bump rustup 1.75.0 by @fuzzard in #24551
  • EGLUtils: Fix nullptr usage in EglErrorCallback by @neo1973 in #24523
  • [Android] Remove special versioning for Android arch types by @fuzzard in #24494
  • [video] Remove non-working context menu manage / info dialog buttons for versions by @CrystalP in #24569
  • [Keyboard] Optimize keyboard symbol translation by @garbear in #24525
  • [Estuary] Refactor of poster/widget overlay icons by @jjd-uk in #24521
  • Add another msys2 binary to fix game add-on build failures by @garbear in #24567
  • [Android][windowing] Initialize m_bWindowCreated by @joseluismarti in #24572
  • Player Viewer: Add keyboard and mouse input by @garbear in #24524
  • [video] Fix multi version movie playback by @ksooo in #24575
  • [video] Restore selection of extras in "Choose" dialog by @CrystalP in #24558
  • add renderbuffer index to RenderCapture() (like for RenderUpdate()), fixes sporadic black captures under Linux by @fightforlife in #24439
  • Fix Input method on X11 by @wengxt in #24393
  • Support build with taglib-2.0 with the removed integer type definitions in the release by @heitbaum in #24577
  • [guilib] VideoThumbLoader don't look for basic local artwork when library items are displayed by @rmrector in #24483
  • Bump VERSION_CODE one unit to fix Android install over current by @thexai in #24581
  • [cmake] Don't append target sysroot in native toolchainfile by @sundermann in #24590
  • [Android][windowing] Revert 'Initialize m_bWindowCreated' and remove … by @joseluismarti in #24587
  • [Video] Always respect video versions/extras ignore setting by @CrystalP in #24391
  • [Android] Add HDR allowed dynamic metadata formats setting by @quietvoid in #24584
  • [tools/depends] Bump swig 4.2.0 by @fuzzard in #24552
  • [Scraper] Check for filename identifers during refresh job by @sundermann in #24571
  • changed: log to error (thanks @dmittiga) issue #24506 by @malard in #24596
  • [FileCache] adjust Read Factor algorithm by @thexai in #24582
  • [video] Fix playback of .rm files by @CrystalP in #24607
  • [webOS] Add setting to select allowed HDR dynamic metadata formats by @quietvoid in #24600
  • [VIDEO] fix tv show episodes not probed for streamdetails when refres… by @the-black-eagle in #24532
  • [Estuary] Fix player controls dialog by @Hitcher in #24606
  • [Estuary] Extras - change layout by @jjd-uk in #24609
  • Android joystick fixes by @garbear in #24604
  • webOS: Remove leftover libcec depend by @garbear in #24621
  • [video] Remove fallback to movie art for undefined extra art types by @CrystalP in #24619
  • tools/depends: Update waylandpp patch to fix build again with gcc 13 by @garbear in #24626
  • Fix WebVTT compiler warning by @garbear in #24620
  • [video] Fix playlist window select and play actions by @ksooo in #24617
  • [docs] Use gh markdown highlights of warnings, tips and notes by @enen92 in #24613
  • [darwin] fix retain cycle in Gamecontroller by @kambala-decapitator in #24634
  • AESinkAudioTrack: Help broken firmwares to make kodi ignore broken delay by @fritsch in #24597
  • [video] Only consider matches of same media type when looking for similar movies by @CrystalP in #24598
  • [video] Modify versions/extras related texts by @CrystalP in #24591
  • [video] Fix text of the context menu Choose version button by @CrystalP in #24648
  • [favourites][listproviders] Fix select action not to show the choose … by @ksooo in #24638
  • [Android] Exec wake-up routine only after hdmi handshake by @hugbug in #24632
  • [video] fill GUIListItem properties with streamdetails for the hybrid… by @CrystalP in #24645
  • [video] Fix video info dialog play button to always play the version … by @ksooo in #24652
  • [skin] Remove estouchy from core by @fuzzard in #24655
  • [video] Fix 'play version using' version select dialog having 'extras' button. by @ksooo in #24661
  • [Keyboard] Fix special handling of Num Lock states for XKB common library by @garbear in #24639
  • [Omega] Update controller add-ons for new keyboard layout and translations by @garbear in #24635
  • Optimize keyboard/mouse input on first action by @garbear in #24651
  • Minor game improvements by @garbear in #24650
  • [strings] Reword remove movie from library by @DaVukovic in #24476
  • [video] Fix the refresh of movies with additional versions or extras by @CrystalP in #24647
  • [CPACK] Adjust dependencies to build packages compatible with focal to noble by @Gujal00 in #24662
  • [iOS/tvOS] disable VTB for real-time interlaced videos by @kambala-decapitator in #24671
  • [video] Hide 'Choose version' and 'Play version using' context menu i… by @ksooo in #24670
  • Teletext: Fix crash due to invalid FTC_Node by @enen92 in #24673
  • Screensaver: Do not force dim if another modal is being shown by @enen92 in #24664
  • [VideoPlayer] Adjust lastseekpts on FlushBuffers by @enen92 in #24674
  • Kill CGUIListItemPtr typedef by @enen92 in #24676
  • [posix] PosixMountProvider excludes +efivarfs +systemd-1 by @sky42src in #24642
  • [webOS][Power management] Implement shutdown/reboot by @sundermann in #24244
  • [VideoDatabase] Do not overwrite Set Overview if no field in NFO by @78andyp in #24533
  • [VideoInfoScanner] Fix processing of in TV show's NFO. by @78andyp in #24565
  • [MUSIC] Only set libraryartfilled property if we actually found art by @the-black-eagle in #24675
  • [FileCache] Implements adaptative read factor based on cache level by @thexai in #24640
  • [JSON-RPC] Add GUI.ActivateScreenSaver by @DaVukovic in #24181
  • [Android] Adjust copying of resource files to cache folder by @joseluismarti in #24666
  • added: non standard language codes used by some DVDs (thanks @jsgh) by @malard in #24599
  • [JSON-RPC] add command to change playback speed (tempo) by @kambala-decapitator in #24633
  • [webOS] Disable core dumps by @sundermann in #24441
  • [tools/depends] Bump gettext 0.22.4 by @fuzzard in #24630
  • CXbtManager: Synchronize access to internal data structures by @neo1973 in #24685
  • [webOS] Map info key by @sundermann in #24684
  • [GUIEditControl] Use left truncate (and relative ellipses) for edit controls only by @CastagnaIT in #24624
  • [video] Fix 'Play using...' context menu item not visible for version… by @ksooo in #24677
  • VideoInfoScanner: Support .nomedia files in TV show subdirectories by @neo1973 in #24330
  • [VideoInfoScanner] Fix scraping of episodes in Blu-ray folders (BDMV). by @78andyp in #24314
  • [MUSIC] Allow navigating from artist directly to songs via AS.xml setting by @the-black-eagle in #24649
  • [Estuary] Add video version name to playlist + Add 3D info + Cleanup by @jjd-uk in #24681
  • [Android] Include missing binary addon libs in the apk package by @joseluismarti in #24688
  • [CGUIPassword] Media served through plugins is not shown when there is a master lock. by @78andyp in #24446
  • [keymaps] change show shutdownmenu to poweroff action by @DaVukovic in #24536
  • [Estuary] Video Version Choose Dialog Fix by @jjd-uk in #24693
  • [apple][xcode] use literal make command instead of variable in Xcode by @kambala-decapitator in #24691
  • [guilib] Add Infolabels for versions by @CrystalP in #24695
  • Videodb versions by @CrystalP in #24683
  • Translations update from Kodi Weblate by @weblate in #24698
  • Sync of addon metadata translations by @github-actions in #24699
  • VideoPlayer: Fix error window for tempo/fractional play speeds by @enen92 in #24692
  • VideoPlayer: Fix stalls when seeking with tempo enabled by @enen92 in #24701
  • DXVA: Use at least 8 surfaces for H.264 decoding by @thexai in #24704
  • Revert Android joystick fixes by @garbear in #24707
  • Android: add colorMode config to .Main activity in AndroidManifest.xml by @spdfrk in #24710
  • TagLoaderTagLib: Avoid potential crash when exception is thrown by @philipturnbull in #24706
  • [Omega] Beta 3 by @fuzzard in #24690
  • Fix player controls by @Hitcher in #24715
  • [Settings] Fix Read Factor displayed as 0.0x in logs when setting value is "Adaptive" by @thexai in #24722
  • [Android] Fix Zip Path Traversal vulnerability by @joseluismarti in #24730
  • Add branding color to metainfo for linux by @razzeee in #24734
  • [Android] Remove unused code and improve extraction of the apk file by @joseluismarti in #24735
  • [FileSystem] Fix: not use CFileStreamBuffer in all network files by @thexai in #24733
  • [plugins] Ignore fileaction (play) if item is not playable... by @enen92 in #24743
  • macos: remove dead code by @enen92 in #24759
  • [Android] zipAlignEnabled has been deprecated for a while by @joseluismarti in #24761
  • [MUSIC] Get correct duration of stream from FFMPEG for audiobook chap… by @the-black-eagle in #24732
  • [guiinfo] Fix LISTITEM_LABEL for movies with multiple versions only … by @ksooo in #24753
  • VideoPlayer: Reset stale stream times after a flush by @popcornmix in #24748
  • MacOS: Implement hotkeycontroller to fix exclusive mediakey usage by @enen92 in #24765
  • [Android] Use compileSdk, minSdk and targetSdk by @joseluismarti in #24778
  • [Android] Adjustments in manifest file by @joseluismarti in #24781
  • AESinkPipewire: Properly identify HDMI devices by @fritsch in #24740
  • [Windows] Fix inaccurate 10-bit SDR / HDR color using Pixel Shaders by @thexai in #24739
  • Fix regression for play actions by @enen92 in #24789
  • [VideoPlayer] Fix initial interlaced stream refresh rate switch by @CrystalP in #24785
  • [video] fix selection after changing video or extra art by @CrystalP in #24792
  • [PVR] Channel Manager: Fix refresh channel icons; old icons still shown after refresh. by @ksooo in #24793
  • [video] fix selected item after removing version/extra by @CrystalP in #24791
  • [doc] Fix incorrect tag name for the disabled slider bar texture by @CrystalP in #24804
  • Bump androidx.tvprovider:tvprovider by @joseluismarti in #24805
  • [video] remove unused string by @CrystalP in #24807
  • [Docs] Fix doxygen references for cutlist deprecation by @enen92 in #24801
  • [Android] Adjust GUI SRD peak luminance when display is in HDR PQ mode by @thexai in #24756
  • Store streamed video subtitle on custom subtitles path if defined by user by @hagaygo in #24752
  • [Omega] Release RC1 by @fuzzard in #24783
  • [BP][macOS] fall back to legacy OpenGL profile on NSOpenGLContext creation error #24822 by @kambala-decapitator in #24823
  • [BP][cmake] UWP fix escaping generate-UWP-pythonfix script by @fuzzard in #24839
  • [BP][tools/depends] LLVM15 support - reduce errors to warnings by @fuzzard in #24840
  • Install scalable svg icon by @razzeee in #24853
  • [Omega][video] Fix regression when playing deleted movie. by @ksooo in #24863
  • [Omega] RC2 by @fuzzard in #24848
  • stacks: make InitializeStackStartPartAndOffset return optional and ha… by @enen92 in #24881
  • [backport] Fix typo in Zeroconf service identifier by @joseluismarti in #24877
  • Backport #24886 " Enforce minimum interval between add-on repository updates" by @yol in #24889
  • [Omega][addons] Fix addonmgr/profilemgr deadlock when switching profiles by @ksooo in #24884
  • [cores] DllLoader wrapper fstatvfs64 - Backport by @phunkyfish in #24894
  • Info: 'Un-deprecate' color and process info labels by @enen92 in #24903
  • [Omega] 21.0 Release by @fuzzard in #24871

New Contributors

  • @sscobici made their first contribution in #22423
  • @heirecka made their first contribution in #22631
  • @mobidyc made their first contribution in #22717
  • @TwilightMercy made their first contribution in #22690
  • @jdrouhard made their first contribution in #22739
  • @rschupp made their first contribution in #22707
  • @csdougliss made their first contribution in #22520
  • @stevehartwell made their first contribution in #22789
  • @fhriley made their first contribution in #22454
  • @KyleSanderson made their first contribution in #22852
  • @throwaway96 made their first contribution in #23020
  • @DeltaMikeCharlie made their first contribution in #22969
  • @w4kodi made their first contribution in #23070
  • @fixthething made their first contribution in #22933
  • @bluikko made their first contribution in #23297
  • @dmahurin made their first contribution in #23488
  • @runderwo made their first contribution in #23290
  • @ivanllc made their first contribution in #23644
  • @amazingfate made their first contribution in #23621
  • @honest-mule made their first contribution in #23760
  • @dobo90 made their first contribution in #23716
  • @Acidzero2020 made their first contribution in #23841
  • @graham8 made their first contribution in #23850
  • @mariotaku made their first contribution in #23834
  • @mlauss2 made their first contribution in #23920
  • @icr8ions made their first contribution in #23789
  • @FergusGeorge made their first contribution in #24017
  • @212dandan made their first contribution in #23989
  • @hugbug made their first contribution in #24369
  • @dbarkar made their first contribution in #24516
  • @andred made their first contribution in #24505
  • @fightforlife made their first contribution in #24439
  • @wengxt made their first contribution in #24393
  • @Gujal00 made their first contribution in #24662
  • @sky42src made their first contribution in #24642
  • @spdfrk made their first contribution in #24710
  • @philipturnbull made their first contribution in #24706
  • @hagaygo made their first contribution in #24752

Full Changelog: 20.5-Nexus...21.0-Omega

Don't miss a new xbmc release

NewReleases is sending notifications on new releases.