diff -pruN 19.0.0+ds1-2/azure-pipelines.yml 20.2.0+ds1-1/azure-pipelines.yml
--- 19.0.0+ds1-2/azure-pipelines.yml	2021-09-17 11:09:35.000000000 +0000
+++ 20.2.0+ds1-1/azure-pipelines.yml	2022-01-02 11:28:41.000000000 +0000
@@ -4,7 +4,7 @@ variables:
 trigger:
   branches:
     include:
-    - Matrix
+    - Nexus
     - releases/*
   paths:
     include:
@@ -46,7 +46,7 @@ jobs:
 
     - script: |
         cd ..
-        git clone --branch Matrix --depth=1 https://github.com/xbmc/xbmc.git kodi
+        git clone --branch master --depth=1 https://github.com/xbmc/xbmc.git kodi
         cd $(Build.SourcesDirectory)
         mkdir build
         cd build
diff -pruN 19.0.0+ds1-2/debian/changelog 20.2.0+ds1-1/debian/changelog
--- 19.0.0+ds1-2/debian/changelog	2022-03-21 17:48:03.000000000 +0000
+++ 20.2.0+ds1-1/debian/changelog	2022-08-04 09:54:15.000000000 +0000
@@ -1,3 +1,10 @@
+kodi-pvr-vbox (20.2.0+ds1-1) unstable; urgency=medium
+
+  * New upstream version 20.2.0+ds1
+  * Prepare for v20 in unstable
+
+ -- Vasyl Gello <vasek.gello@gmail.com>  Thu, 04 Aug 2022 09:54:15 +0000
+
 kodi-pvr-vbox (19.0.0+ds1-2) unstable; urgency=medium
 
   * Modernize package
diff -pruN 19.0.0+ds1-2/debian/control 20.2.0+ds1-1/debian/control
--- 19.0.0+ds1-2/debian/control	2022-03-21 17:48:03.000000000 +0000
+++ 20.2.0+ds1-1/debian/control	2022-08-04 09:54:15.000000000 +0000
@@ -5,9 +5,9 @@ Maintainer: Debian Multimedia Maintainer
 Uploaders: Vasyl Gello <vasek.gello@gmail.com>
 Build-Depends: debhelper-compat (= 13)
 Build-Depends-Arch: cmake,
-                    dh-sequence-kodiaddon (>= 2:19~),
+                    dh-sequence-kodiaddon (>= 2:20~),
                     libtinyxml2-dev
-Standards-Version: 4.6.0
+Standards-Version: 4.6.1
 Rules-Requires-Root: no
 Vcs-Browser: https://salsa.debian.org/multimedia-team/kodi-media-center/kodi-pvr-vbox
 Vcs-Git: https://salsa.debian.org/multimedia-team/kodi-media-center/kodi-pvr-vbox.git
diff -pruN 19.0.0+ds1-2/debian/copyright 20.2.0+ds1-1/debian/copyright
--- 19.0.0+ds1-2/debian/copyright	2021-01-20 07:51:13.000000000 +0000
+++ 20.2.0+ds1-1/debian/copyright	2022-08-04 09:54:15.000000000 +0000
@@ -5,12 +5,12 @@ Files-Excluded: lib
 
 Files: *
 Copyright: 2015-2021 Sam Stenvall
- 2015-2021 Team Kodi
+ 2015-2022 Team Kodi
 License: GPL-2+
 
 Files: debian/*
 Copyright: 2016-2019 Christian Marillat <marillat@deb-multimedia.org>
-           2020-2021 Vasyl Gello <vasek.gello@gmail.com>
+           2020-2022 Vasyl Gello <vasek.gello@gmail.com>
 License: GPL-2+
 
 License: GPL-2+
diff -pruN 19.0.0+ds1-2/debian/watch 20.2.0+ds1-1/debian/watch
--- 19.0.0+ds1-2/debian/watch	2021-08-26 10:38:51.000000000 +0000
+++ 20.2.0+ds1-1/debian/watch	2022-08-04 09:54:15.000000000 +0000
@@ -5,4 +5,4 @@ opts="repack, \
       repacksuffix=+ds1, \
       dversionmangle=auto" \
 https://github.com/kodi-pvr/pvr.vbox/releases \
-/kodi-pvr/pvr.vbox/archive/refs/tags/?(\d\S*)-Matrix\.tar\.gz
+/kodi-pvr/pvr.vbox/archive/refs/tags/?(\d\S*)-Nexus\.tar\.gz
diff -pruN 19.0.0+ds1-2/.github/workflows/build.yml 20.2.0+ds1-1/.github/workflows/build.yml
--- 19.0.0+ds1-2/.github/workflows/build.yml	2021-09-17 11:09:35.000000000 +0000
+++ 20.2.0+ds1-1/.github/workflows/build.yml	2022-01-02 11:28:41.000000000 +0000
@@ -27,14 +27,14 @@ jobs:
       env:
         DEBIAN_BUILD: ${{ matrix.DEBIAN_BUILD }}
       run: |
-        if [[ $DEBIAN_BUILD == true ]]; then sudo add-apt-repository -y ppa:team-xbmc/ppa; fi
+        if [[ $DEBIAN_BUILD == true ]]; then sudo add-apt-repository -y ppa:team-xbmc/xbmc-nightly; fi
         if [[ $DEBIAN_BUILD == true ]]; then sudo apt-get update; fi
         if [[ $DEBIAN_BUILD == true ]]; then sudo apt-get install fakeroot; fi
     - name: Checkout Kodi repo
       uses: actions/checkout@v2
       with:
         repository: xbmc/xbmc
-        ref: Matrix
+        ref: master
         path: xbmc
     - name: Checkout pvr.vbox repo
       uses: actions/checkout@v2
@@ -48,7 +48,7 @@ jobs:
       run: |
         if [[ $DEBIAN_BUILD != true ]]; then cd ${app_id} && mkdir -p build && cd build; fi
         if [[ $DEBIAN_BUILD != true ]]; then cmake -DADDONS_TO_BUILD=${app_id} -DADDON_SRC_PREFIX=${{ github.workspace }} -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=${{ github.workspace }}/xbmc/addons -DPACKAGE_ZIP=1 ${{ github.workspace }}/xbmc/cmake/addons; fi
-        if [[ $DEBIAN_BUILD == true ]]; then wget https://raw.githubusercontent.com/xbmc/xbmc/Matrix/xbmc/addons/kodi-dev-kit/tools/debian-addon-package-test.sh && chmod +x ./debian-addon-package-test.sh; fi
+        if [[ $DEBIAN_BUILD == true ]]; then wget https://raw.githubusercontent.com/xbmc/xbmc/master/xbmc/addons/kodi-dev-kit/tools/debian-addon-package-test.sh && chmod +x ./debian-addon-package-test.sh; fi
         if [[ $DEBIAN_BUILD == true ]]; then sudo apt-get build-dep ${{ github.workspace }}/${app_id}; fi
     - name: Build
       env:
diff -pruN 19.0.0+ds1-2/.github/workflows/changelog-and-release.yml 20.2.0+ds1-1/.github/workflows/changelog-and-release.yml
--- 19.0.0+ds1-2/.github/workflows/changelog-and-release.yml	2021-09-17 11:09:35.000000000 +0000
+++ 20.2.0+ds1-1/.github/workflows/changelog-and-release.yml	2022-01-02 11:28:41.000000000 +0000
@@ -133,7 +133,7 @@ jobs:
         shell: bash
 
       # Create a release at {steps.required-variables.outputs.branch}
-      # - tag and release name format: {steps.required-variables.outputs.version}-{steps.required-variables.outputs.branch} ie. 1.0.0-Matrix
+      # - tag and release name format: {steps.required-variables.outputs.version}-{steps.required-variables.outputs.branch} ie. 20.0.0-Nexus
       # - release body: {steps.required-variables.outputs.changes}
       - name: Create Release
         id: create-release
diff -pruN 19.0.0+ds1-2/.github/workflows/release.yml 20.2.0+ds1-1/.github/workflows/release.yml
--- 19.0.0+ds1-2/.github/workflows/release.yml	2021-09-17 11:09:35.000000000 +0000
+++ 20.2.0+ds1-1/.github/workflows/release.yml	2022-01-02 11:28:41.000000000 +0000
@@ -50,7 +50,7 @@ jobs:
         working-directory: ${{ github.event.repository.name }}
 
       # Create a release at {steps.required-variables.outputs.branch}
-      # - tag and release name format: {steps.required-variables.outputs.version}-{steps.required-variables.outputs.branch} ie. 1.0.0-Matrix
+      # - tag and release name format: {steps.required-variables.outputs.version}-{steps.required-variables.outputs.branch} ie. 20.0.0-Nexus
       # - release body: {steps.required-variables.outputs.changes}
       - name: Create Release
         id: create-release
diff -pruN 19.0.0+ds1-2/Jenkinsfile 20.2.0+ds1-1/Jenkinsfile
--- 19.0.0+ds1-2/Jenkinsfile	2021-09-17 11:09:35.000000000 +0000
+++ 20.2.0+ds1-1/Jenkinsfile	2022-01-02 11:28:41.000000000 +0000
@@ -1 +1 @@
-buildPlugin(version: "Matrix")
+buildPlugin(version: "Nexus")
diff -pruN 19.0.0+ds1-2/pvr.vbox/addon.xml.in 20.2.0+ds1-1/pvr.vbox/addon.xml.in
--- 19.0.0+ds1-2/pvr.vbox/addon.xml.in	2021-09-17 11:09:35.000000000 +0000
+++ 20.2.0+ds1-1/pvr.vbox/addon.xml.in	2022-01-02 11:28:41.000000000 +0000
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <addon
   id="pvr.vbox"
-  version="19.0.0"
+  version="20.2.0"
   name="VBox TV Gateway PVR Client"
   provider-name="Sam Stenvall">
   <requires>@ADDON_DEPENDS@</requires>
@@ -16,17 +16,10 @@
     <assets>
       <icon>icon.png</icon>
     </assets>
-    <news>
-v19.0.0
-- Changed test builds to 'Kodi 19 Matrix'
-- Increased version to 19.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.
-    </news>
     <summary lang="af_ZA">PVR byvoegsel vir VBox Home TV Gateways</summary>
     <summary lang="bg_BG">Клиент за ПВР за „VBox Home TV Gateways“</summary>
     <summary lang="cs_CZ">Doplněk PVR pro VBox Home TV Gateways</summary>
-    <summary lang="da_DK">PVR addon for VBOX Home Tv Gateways</summary>
+    <summary lang="da_DK">PVR addon til VBOX Home TV Gateways</summary>
     <summary lang="de_DE">PVR Addon für VBox Home TV Zugang</summary>
     <summary lang="el_GR">Πρόσθετο PVR για VBox Home TV Gateways</summary>
     <summary lang="en_GB">PVR addon for VBox Home TV Gateways</summary>
@@ -49,10 +42,10 @@ v19.0.0
     <summary lang="ko_KR">VBox 홈 TV 게이트웨이용 PVR 애드온</summary>
     <summary lang="lt_LT">PVR priedas skirtas VBox namų televizijos tinklų sietuvams</summary>
     <summary lang="lv_LV">PVR pielikums uz VBox Home TV Gateway</summary>
-    <summary lang="ms_MY">Tambahan PVR untuk </summary>
+    <summary lang="ms_MY">Tambahan PVR untuk</summary>
     <summary lang="nb_NO">PRV utvidelse til VBox Hjemme-TV Gateways</summary>
     <summary lang="nl_NL">PVR-add-on voor VBox Home TV Gateways</summary>
-    <summary lang="pl_PL">Klient telewizji dla bramek VBox Home TV </summary>
+    <summary lang="pl_PL">Klient telewizji dla bramek VBox Home TV</summary>
     <summary lang="pt_BR">Addon de PVR para VBox Home TV Gateways</summary>
     <summary lang="pt_PT">Add-on PVR para Acessos de TV VBox</summary>
     <summary lang="ro_RO">Supliment PVR pentru receptoarele VBox Home</summary>
@@ -69,7 +62,7 @@ v19.0.0
     <description lang="af_ZA">Hierdie is 'n PVR byvoegsel om met VBox Communications' XTi TV Gateways te koppel. Dit ondersteun al die basiese funksionaliteit wat jy sal verwag, soos kyk, opneem en tydskuif. Addisioneel ondersteun dit die aanvul van die oor-die-lug gids data met eksterne XMLTV data.</description>
     <description lang="bg_BG">Това е добавка за ПВР за връзка с устройствата „XTi TV Gateway“ на „VBox Communications“. Тя поддържа цялата основна функционалност, която може да се очаква, като: гледане, записване и отместване във времето. Освен това, тя поддържа и обогатяване на справочника, достъпен чрез телевизионния сигнал, с данни от външен източник, използващ формата XMLTV.</description>
     <description lang="cs_CZ">Toto je doplněk PVR addon pro propojení s VBox Communications' XTi TV Gateways. Podporuje všechny základní funkce, které byste očekávali, jako je sledování, nahrávání a časový posun. Navíc podporuje rozšíření vzduchem šířených dat televizního programu o externí data XMLTV.</description>
-    <description lang="da_DK">Dette er et PVR addon, der kommunikerer med VBox Communications' XTi TV Gateways. Det understøtter alle simple funktioner, så som at se, optage og tidsforskydelse. Derudover, understøtter det over-the-air tv-guide data med eksternt XMLTV data.</description>
+    <description lang="da_DK">Dette er et PVR add-on, der kommunikerer med VBox Communications XTi TV Gateways. Det understøtter alle grundlæggende funktioner, som f.eks. visning, optagelse og tidsforskydning. Derudover understøtter det luftbåret guidedata med eksterne XMLTV data.</description>
     <description lang="de_DE">Mit diesem Addon ist es möglich sich mit VBox Kommunikation XTiTv Zugängen zu verbinden. Es unterstützt dabei die Grundeinstellungen, wie anschauen, Aufnahme und Timeshift. Zusätzlich wird das vergrößern der Over the air Programmdaten mit externen XMLTV Daten unterstützt.</description>
     <description lang="el_GR">Αυτό είναι ένα πρόσθετο του PVR για τη διασύνδεση με VBox Επικοινωνιών' XTi TV Gateways . Υποστηρίζει όλες τις βασικές λειτουργίες που θα περιμένατε , όπως η παρακολούθηση, καταγραφή και timeshifting . Επιπλέον, υποστηρίζει τα αυξητικά δεδομένα over-the-air οδηγού με τα εξωτερικά δεδομένα XMLTV .</description>
     <description lang="en_GB">This is a PVR addon for interfacing with VBox Communications' XTi TV Gateways. It supports all the basic functionality you would expect, such as watching, recording and timeshifting. Additionally, it supports augmenting the over-the-air guide data with external XMLTV data.</description>
diff -pruN 19.0.0+ds1-2/pvr.vbox/changelog.txt 20.2.0+ds1-1/pvr.vbox/changelog.txt
--- 19.0.0+ds1-2/pvr.vbox/changelog.txt	2021-09-17 11:09:35.000000000 +0000
+++ 20.2.0+ds1-1/pvr.vbox/changelog.txt	2022-01-02 11:28:41.000000000 +0000
@@ -1,6 +1,13 @@
-v19.0.0
-- Changed test builds to 'Kodi 19 Matrix'
-- Increased version to 19.0.0
+v20.2.0
+- Translation updates by Weblate
+- Kodi main API update to version 2.0.0
+
+v20.1.0
+- Kodi PVR API to 8.0.0
+
+v20.0.0
+- Changed test builds to 'Kodi 20 Nexus'
+- Increased 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.
 
diff -pruN 19.0.0+ds1-2/pvr.vbox/resources/language/resource.language.da_dk/strings.po 20.2.0+ds1-1/pvr.vbox/resources/language/resource.language.da_dk/strings.po
--- 19.0.0+ds1-2/pvr.vbox/resources/language/resource.language.da_dk/strings.po	2021-09-17 11:09:35.000000000 +0000
+++ 20.2.0+ds1-1/pvr.vbox/resources/language/resource.language.da_dk/strings.po	2022-01-02 11:28:41.000000000 +0000
@@ -5,9 +5,9 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: KODI Main\n"
-"Report-Msgid-Bugs-To: https://github.com/xbmc/xbmc/issues/\n"
+"Report-Msgid-Bugs-To: translations@kodi.tv\n"
 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"PO-Revision-Date: 2021-08-27 01:29+0000\n"
+"PO-Revision-Date: 2021-10-31 07:09+0000\n"
 "Last-Translator: Christian Gade <gade@kodi.tv>\n"
 "Language-Team: Danish <https://kodi.weblate.cloud/projects/kodi-add-ons-pvr-clients/pvr-vbox/da_dk/>\n"
 "Language: da_dk\n"
@@ -19,11 +19,11 @@ msgstr ""
 
 msgctxt "Addon Summary"
 msgid "PVR addon for VBox Home TV Gateways"
-msgstr "PVR addon for VBOX Home Tv Gateways"
+msgstr "PVR addon til VBOX Home TV Gateways"
 
 msgctxt "Addon Description"
 msgid "This is a PVR addon for interfacing with VBox Communications' XTi TV Gateways. It supports all the basic functionality you would expect, such as watching, recording and timeshifting. Additionally, it supports augmenting the over-the-air guide data with external XMLTV data."
-msgstr "Dette er et PVR addon, der kommunikerer med VBox Communications' XTi TV Gateways. Det understøtter alle simple funktioner, så som at se, optage og tidsforskydelse. Derudover, understøtter det over-the-air tv-guide data med eksternt XMLTV data."
+msgstr "Dette er et PVR add-on, der kommunikerer med VBox Communications XTi TV Gateways. Det understøtter alle grundlæggende funktioner, som f.eks. visning, optagelse og tidsforskydning. Derudover understøtter det luftbåret guidedata med eksterne XMLTV data."
 
 msgctxt "#30000"
 msgid "Local network"
@@ -138,66 +138,66 @@ msgstr "IP-adressen eller værtsnavnet p
 
 msgctxt "#30602"
 msgid "The port used to connect to your VBox when accessed from the local network. Default value is `80`."
-msgstr ""
+msgstr "Porten brugt til at oprette forbindelse til din VBox ved tilgang fra det lokale netværk. Standardværdien er '80'."
 
 msgctxt "#30603"
 msgid "The port used to connect to your VBox if using HTTPS when accessed from the local network. The default `0` means this is disabled and HTTP will be used instead."
-msgstr ""
+msgstr "Porten brugt til at oprette forbindelse til din VBox, hvis du bruger HTTPS ved tilgang fra det lokale netværk. Standard '0' betyder, at dette er deaktiveret, og HTTP vil blive brugt i stedet."
 
 msgctxt "#30604"
 msgid "The port used to connect to your VBox via UPnP when accessed from the local network. Default value is `55555`."
-msgstr ""
+msgstr "Porten brugt til at oprette forbindelse til din VBox via UPnP ved tilgang fra det lokale netværk. Standardværdien er '55555'."
 
 msgctxt "#30605"
 msgid "The value used (in seconds) to denote when a connection attempt has failed when accessed from the local network. Default value is `3`."
-msgstr ""
+msgstr "Værdien der bruges (i sekunder) til at angive, når et forbindelsesforsøg er mislykket ved adgang fra det lokale netværk. Standardværdien er '3'."
 
 msgctxt "#30606"
 msgid "The IP address or hostname of your VBox when accessed from the internet."
-msgstr ""
+msgstr "IP-adressen eller værtsnavnet på din VBox ved tilgang fra internettet."
 
 msgctxt "#30607"
 msgid "The port used to connect to your VBox when accessed from the internet."
-msgstr ""
+msgstr "Porten brugt til at oprette forbindelse til din VBox ved tilgang fra internettet."
 
 msgctxt "#30608"
 msgid "The port used to connect to your VBox if using HTTPS when accessed from the internet. The default `0` means this is disabled and HTTP will be used instead."
-msgstr ""
+msgstr "Porten brugt til at oprette forbindelse til din VBox, hvis du bruger HTTPS ved tilgang fra internettet. Standard '0' betyder, at dette er deaktiveret, og HTTP vil blive brugt i stedet."
 
 msgctxt "#30609"
 msgid "The port used to connect to your VBox via UPnP when accessed from the internet. Default value is `55555`."
-msgstr ""
+msgstr "Porten brugt til at oprette forbindelse til din VBox via UPnP ved tilgang fra internettet. Standardværdien er '55555'."
 
 msgctxt "#30610"
 msgid "The value used (in seconds) to denote when a connection attempt has failed when accessed from the internet. Default value is `10`."
-msgstr ""
+msgstr "Værdien brugt (i sekunder) til at angive, når et forbindelsesforsøg er mislykket ved adgang fra internettet. Standardværdien er '10'."
 
 # empty strings from id 30611 to 30619
 msgctxt "#30620"
 msgid "Settings related to Channels & EPG."
-msgstr ""
+msgstr "Indstillinger relateret til kanaler og EPG."
 
 msgctxt "#30621"
 msgid "Channel numbers can be set via either of the following two options: [LCN (Logical Channel Number) from backend] The channel numbers as set on the backend; [Channel index in backend] Starting from 1 number the channels as per the order they appear on the backend."
-msgstr ""
+msgstr "Kanalnumre kan indstilles via en af følgende to muligheder: [LCN (Logical Channel Number) fra backend] Kanalnumrene som indstillet på backend; [Kanalindeks i backend] Startende fra 1 bliver kanalerne nummereret i den rækkefølge, de vises på backend."
 
 msgctxt "#30622"
 msgid "The amount of time in minutes prior to a programme start that a reminder should pop up."
-msgstr ""
+msgstr "Tiden i minutter før en programstart, hvor en påmindelse skal dukke op."
 
 msgctxt "#30623"
 msgid "Ignore the initial EPG load. Enabled by default to prevent crash issues on LibreElec/CoreElec."
-msgstr ""
+msgstr "Ignorer den indledende EPG-belastning. Aktiveret som standard for at forhindre nedbrudsproblemer på LibreElec/CoreElec."
 
 # empty strings from id 30624 to 30639
 msgctxt "#30640"
 msgid "Settings related to the timeshift."
-msgstr ""
+msgstr "Indstillinger relateret til tidsforskydning."
 
 msgctxt "#30641"
 msgid "If enabled allows pause, rewind and fast-forward of live TV."
-msgstr ""
+msgstr "Ved aktivering tillades pause, tilbage- og fremspoling i direkte tv."
 
 msgctxt "#30642"
 msgid "The path where the timeshift buffer files should be stored when timeshifting is enabled. Make sure you have a reasonable amount of disk space available since the buffer will grow indefinitely until you stop watching or switch channels."
-msgstr ""
+msgstr "Stien, hvor tidsforskydnings-bufferfilerne skal gemmes, når tidsforskydning er aktiveret. Sørg for, at du har en rimelig mængde ledig diskplads, da bufferen vil vokse uendeligt, indtil du stopper med at se eller skifter kanal."
diff -pruN 19.0.0+ds1-2/pvr.vbox/resources/language/resource.language.es_mx/strings.po 20.2.0+ds1-1/pvr.vbox/resources/language/resource.language.es_mx/strings.po
--- 19.0.0+ds1-2/pvr.vbox/resources/language/resource.language.es_mx/strings.po	2021-09-17 11:09:35.000000000 +0000
+++ 20.2.0+ds1-1/pvr.vbox/resources/language/resource.language.es_mx/strings.po	2022-01-02 11:28:41.000000000 +0000
@@ -5,16 +5,17 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: KODI Main\n"
-"Report-Msgid-Bugs-To: https://github.com/xbmc/xbmc/issues/\n"
+"Report-Msgid-Bugs-To: translations@kodi.tv\n"
 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: Kodi Translation Team\n"
-"Language-Team: Spanish (Mexico) (http://www.transifex.com/projects/p/kodi-main/language/es_MX/)\n"
-"Language: es_MX\n"
+"PO-Revision-Date: 2021-12-15 06:13+0000\n"
+"Last-Translator: Edson Armando <edsonarmando78@outlook.com>\n"
+"Language-Team: Spanish (Mexico) <https://kodi.weblate.cloud/projects/kodi-add-ons-pvr-clients/pvr-vbox/es_mx/>\n"
+"Language: es_mx\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 4.9.1\n"
 
 msgctxt "Addon Summary"
 msgid "PVR addon for VBox Home TV Gateways"
@@ -42,11 +43,11 @@ msgstr "Puerto UPnP"
 
 msgctxt "#30004"
 msgid "Connection timeout"
-msgstr ""
+msgstr "Tiempo de espera de conexión agotado"
 
 msgctxt "#30005"
 msgid "HTTPS port (set to 0 to use plain HTTP)"
-msgstr ""
+msgstr "Puerto HTTPS (establece a 0 para utilizar HTTP simple)"
 
 msgctxt "#30006"
 msgid "Connection"
@@ -59,7 +60,7 @@ msgstr "Internet"
 # empty strings from id 30008 to 30019
 msgctxt "#30020"
 msgid "Channel & EPG"
-msgstr ""
+msgstr "Canal y guia"
 
 msgctxt "#30021"
 msgid "Channels"
@@ -87,7 +88,7 @@ msgstr "Tiempo de recordatorio (minutos
 
 msgctxt "#30027"
 msgid "Skip initial EPG load"
-msgstr ""
+msgstr "Saltar carga inicial de guía"
 
 msgctxt "#30040"
 msgid "Timeshift"
@@ -107,7 +108,7 @@ msgstr "El dispositivo VBox vuelve a exp
 
 msgctxt "#30107"
 msgid "Sync EPG"
-msgstr "Sync EPG"
+msgstr "Sincronizar guía"
 
 msgctxt "#30110"
 msgid "Remind me"
@@ -129,74 +130,74 @@ msgstr "Cancelar todos los recordatorios
 # help info - Connection
 msgctxt "#30600"
 msgid "Contains settings for connecting to the VBox device from both your local network and from the internet. A local connection will be attempted first and if unsuccessful the internet settings will be used."
-msgstr ""
+msgstr "Contiene configuración para conectarte al dispositivo VBox desde tu red local e internet. Se intentará primero una conexión local, y si no tiene éxito se utilizará la configuración de internet."
 
 msgctxt "#30601"
 msgid "The IP address or hostname of your VBox when accessed from the local network."
-msgstr ""
+msgstr "La dirección IP o el nombre de host de tu VBox al acceder desde la red local."
 
 msgctxt "#30602"
 msgid "The port used to connect to your VBox when accessed from the local network. Default value is `80`."
-msgstr ""
+msgstr "El puerto utilizado para conectarte a tu VBox cuando se accede desde la red local. Por defecto es `80`."
 
 msgctxt "#30603"
 msgid "The port used to connect to your VBox if using HTTPS when accessed from the local network. The default `0` means this is disabled and HTTP will be used instead."
-msgstr ""
+msgstr "El puerto utilizado para conectarte a tu VBox si utilizas HTTPS cuando se accede desde la red local. El valor predeterminado `0` significa que HTTPS está desactivado y que se utilizará HTTP en su lugar."
 
 msgctxt "#30604"
 msgid "The port used to connect to your VBox via UPnP when accessed from the local network. Default value is `55555`."
-msgstr ""
+msgstr "El puerto utilizado para conectarte a tu VBox mediante UPnP cuando se accede desde la red local. Por defecto es `55555`."
 
 msgctxt "#30605"
 msgid "The value used (in seconds) to denote when a connection attempt has failed when accessed from the local network. Default value is `3`."
-msgstr ""
+msgstr "El valor (en segundos) para denotar cuando un intento de conexión ha fallado al acceder desde la red local. Por defecto es `3`."
 
 msgctxt "#30606"
 msgid "The IP address or hostname of your VBox when accessed from the internet."
-msgstr ""
+msgstr "La dirección IP o el nombre de host de tu VBox al acceder desde internet."
 
 msgctxt "#30607"
 msgid "The port used to connect to your VBox when accessed from the internet."
-msgstr ""
+msgstr "El puerto utilizado para conectarte a tu VBox cuando se accede desde internet."
 
 msgctxt "#30608"
 msgid "The port used to connect to your VBox if using HTTPS when accessed from the internet. The default `0` means this is disabled and HTTP will be used instead."
-msgstr ""
+msgstr "El puerto utilizado para conectarte a tu VBox si utilizas HTTPS cuando se accede desde internet. El valor predeterminado `0` significa que HTTPS está desactivado y que se utilizará HTTP en su lugar."
 
 msgctxt "#30609"
 msgid "The port used to connect to your VBox via UPnP when accessed from the internet. Default value is `55555`."
-msgstr ""
+msgstr "El puerto utilizado para conectarte a tu VBox mediante UPnP cuando se accede desde internet. Por defecto es ``55555."
 
 msgctxt "#30610"
 msgid "The value used (in seconds) to denote when a connection attempt has failed when accessed from the internet. Default value is `10`."
-msgstr ""
+msgstr "El valor utilizado (en segundos) para denotar cuando un intento de conexión ha fallado al acceder desde internet. Por defecto es `10`."
 
 # empty strings from id 30611 to 30619
 msgctxt "#30620"
 msgid "Settings related to Channels & EPG."
-msgstr ""
+msgstr "Configuración relacionada a los canales y la guía."
 
 msgctxt "#30621"
 msgid "Channel numbers can be set via either of the following two options: [LCN (Logical Channel Number) from backend] The channel numbers as set on the backend; [Channel index in backend] Starting from 1 number the channels as per the order they appear on the backend."
-msgstr ""
+msgstr "Los números de canales pueden establecerse mediante cualquiera de estas dos opciones: [LCN (Número de canal lógico) del servidor] Los números de canales tal como están en el servidor; [Índice de canal en el servidor] Inicia desde 1 los canales según aparecen en el servidor."
 
 msgctxt "#30622"
 msgid "The amount of time in minutes prior to a programme start that a reminder should pop up."
-msgstr ""
+msgstr "La cantidad de tiempo en minutos para mostrar un recordatorio antes del inicio de un programa."
 
 msgctxt "#30623"
 msgid "Ignore the initial EPG load. Enabled by default to prevent crash issues on LibreElec/CoreElec."
-msgstr ""
+msgstr "Ignora la carga inicial de la guía. Activado por defecto para evitar problemas de bloqueo en LibreElec/CoreElec."
 
 # empty strings from id 30624 to 30639
 msgctxt "#30640"
 msgid "Settings related to the timeshift."
-msgstr ""
+msgstr "Configuración relacionada a timeshift."
 
 msgctxt "#30641"
 msgid "If enabled allows pause, rewind and fast-forward of live TV."
-msgstr ""
+msgstr "Si se activa permite pausar, retroceder y adelantar la TV en vivo."
 
 msgctxt "#30642"
 msgid "The path where the timeshift buffer files should be stored when timeshifting is enabled. Make sure you have a reasonable amount of disk space available since the buffer will grow indefinitely until you stop watching or switch channels."
-msgstr ""
+msgstr "La ruta donde los archivos de búfer de timeshift serán almacenados cuando se active timeshift. Asegúrate de tener una cantidad de espacio razonable, ya que el búfer crecerá indefinidamente hasta que dejes de mirar o cambies de canal."
diff -pruN 19.0.0+ds1-2/pvr.vbox/resources/language/resource.language.ms_my/strings.po 20.2.0+ds1-1/pvr.vbox/resources/language/resource.language.ms_my/strings.po
--- 19.0.0+ds1-2/pvr.vbox/resources/language/resource.language.ms_my/strings.po	2021-09-17 11:09:35.000000000 +0000
+++ 20.2.0+ds1-1/pvr.vbox/resources/language/resource.language.ms_my/strings.po	2022-01-02 11:28:41.000000000 +0000
@@ -5,20 +5,21 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: KODI Main\n"
-"Report-Msgid-Bugs-To: https://github.com/xbmc/xbmc/issues/\n"
+"Report-Msgid-Bugs-To: translations@kodi.tv\n"
 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: Kodi Translation Team\n"
-"Language-Team: Malay (Malaysia) (http://www.transifex.com/projects/p/kodi-main/language/ms_MY/)\n"
-"Language: ms_MY\n"
+"PO-Revision-Date: 2021-09-25 08:30+0000\n"
+"Last-Translator: Christian Gade <gade@kodi.tv>\n"
+"Language-Team: Malay <https://kodi.weblate.cloud/projects/kodi-add-ons-pvr-clients/pvr-vbox/ms_my/>\n"
+"Language: ms_my\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Weblate 4.8\n"
 
 msgctxt "Addon Summary"
 msgid "PVR addon for VBox Home TV Gateways"
-msgstr "Tambahan PVR untuk "
+msgstr "Tambahan PVR untuk"
 
 msgctxt "Addon Description"
 msgid "This is a PVR addon for interfacing with VBox Communications' XTi TV Gateways. It supports all the basic functionality you would expect, such as watching, recording and timeshifting. Additionally, it supports augmenting the over-the-air guide data with external XMLTV data."
diff -pruN 19.0.0+ds1-2/pvr.vbox/resources/language/resource.language.pl_pl/strings.po 20.2.0+ds1-1/pvr.vbox/resources/language/resource.language.pl_pl/strings.po
--- 19.0.0+ds1-2/pvr.vbox/resources/language/resource.language.pl_pl/strings.po	2021-09-17 11:09:35.000000000 +0000
+++ 20.2.0+ds1-1/pvr.vbox/resources/language/resource.language.pl_pl/strings.po	2022-01-02 11:28:41.000000000 +0000
@@ -5,20 +5,21 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: KODI Main\n"
-"Report-Msgid-Bugs-To: https://github.com/xbmc/xbmc/issues/\n"
+"Report-Msgid-Bugs-To: translations@kodi.tv\n"
 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: Kodi Translation Team\n"
-"Language-Team: Polish (Poland) (http://www.transifex.com/projects/p/kodi-main/language/pl_PL/)\n"
-"Language: pl_PL\n"
+"PO-Revision-Date: 2021-09-25 08:30+0000\n"
+"Last-Translator: Christian Gade <gade@kodi.tv>\n"
+"Language-Team: Polish <https://kodi.weblate.cloud/projects/kodi-add-ons-pvr-clients/pvr-vbox/pl_pl/>\n"
+"Language: pl_pl\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+"Plural-Forms: nplurals=3; plural=n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
+"X-Generator: Weblate 4.8\n"
 
 msgctxt "Addon Summary"
 msgid "PVR addon for VBox Home TV Gateways"
-msgstr "Klient telewizji dla bramek VBox Home TV "
+msgstr "Klient telewizji dla bramek VBox Home TV"
 
 msgctxt "Addon Description"
 msgid "This is a PVR addon for interfacing with VBox Communications' XTi TV Gateways. It supports all the basic functionality you would expect, such as watching, recording and timeshifting. Additionally, it supports augmenting the over-the-air guide data with external XMLTV data."
diff -pruN 19.0.0+ds1-2/README.md 20.2.0+ds1-1/README.md
--- 19.0.0+ds1-2/README.md	2021-09-17 11:09:35.000000000 +0000
+++ 20.2.0+ds1-1/README.md	2022-01-02 11:28:41.000000000 +0000
@@ -1,7 +1,7 @@
 [![License: GPL-2.0-or-later](https://img.shields.io/badge/License-GPL%20v2+-blue.svg)](LICENSE.md)
-[![Build and run tests](https://github.com/kodi-pvr/pvr.vbox/actions/workflows/build.yml/badge.svg?branch=Matrix)](https://github.com/kodi-pvr/pvr.vbox/actions/workflows/build.yml)
-[![Build Status](https://dev.azure.com/teamkodi/kodi-pvr/_apis/build/status/kodi-pvr.pvr.vbox?branchName=Matrix)](https://dev.azure.com/teamkodi/kodi-pvr/_build/latest?definitionId=70&branchName=Matrix)
-[![Build Status](https://jenkins.kodi.tv/view/Addons/job/kodi-pvr/job/pvr.vbox/job/Matrix/badge/icon)](https://jenkins.kodi.tv/blue/organizations/jenkins/kodi-pvr%2Fpvr.vbox/branches/)
+[![Build and run tests](https://github.com/kodi-pvr/pvr.vbox/actions/workflows/build.yml/badge.svg?branch=Nexus)](https://github.com/kodi-pvr/pvr.vbox/actions/workflows/build.yml)
+[![Build Status](https://dev.azure.com/teamkodi/kodi-pvr/_apis/build/status/kodi-pvr.pvr.vbox?branchName=Nexus)](https://dev.azure.com/teamkodi/kodi-pvr/_build/latest?definitionId=70&branchName=Nexus)
+[![Build Status](https://jenkins.kodi.tv/view/Addons/job/kodi-pvr/job/pvr.vbox/job/Nexus/badge/icon)](https://jenkins.kodi.tv/blue/organizations/jenkins/kodi-pvr%2Fpvr.vbox/branches/)
 [![Coverity Scan Build Status](https://scan.coverity.com/projects/5120/badge.svg)](https://scan.coverity.com/projects/5120)
 
 # VBox Home TV Gateway PVR Client
@@ -12,8 +12,8 @@ This repository provides a [Kodi](http:/
 
 ### Linux
 
-1. `git clone --branch Matrix https://github.com/xbmc/xbmc.git`
-2. `git clone --branch Matrix https://github.com/kodi-pvr/pvr.vbox.git`
+1. `git clone --branch master https://github.com/xbmc/xbmc.git`
+2. `git clone https://github.com/kodi-pvr/pvr.vbox.git`
 3. `cd pvr.vbox && mkdir build && cd build`
 4. `cmake -DADDONS_TO_BUILD=pvr.vbox -DADDON_SRC_PREFIX=../.. -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=../../xbmc/kodi-build/addons -DPACKAGE_ZIP=1 ../../xbmc/cmake/addons`
 5. `make`
diff -pruN 19.0.0+ds1-2/src/addon.cpp 20.2.0+ds1-1/src/addon.cpp
--- 19.0.0+ds1-2/src/addon.cpp	2021-09-17 11:09:35.000000000 +0000
+++ 20.2.0+ds1-1/src/addon.cpp	2022-01-02 11:28:41.000000000 +0000
@@ -11,19 +11,19 @@
 
 using namespace vbox;
 
-ADDON_STATUS CVBoxAddon::CreateInstance(int instanceType, const std::string& instanceID, KODI_HANDLE instance, const std::string& version, KODI_HANDLE& addonInstance)
+ADDON_STATUS CVBoxAddon::CreateInstance(const kodi::addon::IInstanceInfo& instance, KODI_ADDON_INSTANCE_HDL& hdl)
 {
-  if (instanceType == ADDON_INSTANCE_PVR)
+  if (instance.IsType(ADDON_INSTANCE_PVR))
   {
     kodi::Log(ADDON_LOG_DEBUG, "creating VBox Gateway PVR addon");
 
     Settings settings;
     ReadSettings(settings);
 
-    m_vbox = new CVBoxInstance(settings, instance, version);
+    m_vbox = new CVBoxInstance(settings, instance);
     ADDON_STATUS status = m_vbox->Initialize();
 
-    addonInstance = m_vbox;
+    hdl = m_vbox;
 
     return status;
   }
@@ -31,9 +31,9 @@ ADDON_STATUS CVBoxAddon::CreateInstance(
   return ADDON_STATUS_UNKNOWN;
 }
 
-void CVBoxAddon::DestroyInstance(int instanceType, const std::string& instanceID, KODI_HANDLE addonInstance)
+void CVBoxAddon::DestroyInstance(const kodi::addon::IInstanceInfo& instance, const KODI_ADDON_INSTANCE_HDL hdl)
 {
-  if (instanceType == ADDON_INSTANCE_PVR)
+  if (instance.IsType(ADDON_INSTANCE_PVR))
   {
     m_vbox = nullptr;
   }
@@ -41,25 +41,25 @@ void CVBoxAddon::DestroyInstance(int ins
 
 void CVBoxAddon::ReadSettings(Settings& settings)
 {
-  settings.m_internalConnectionParams.hostname = kodi::GetSettingString("hostname", "");
-  settings.m_internalConnectionParams.httpPort = kodi::GetSettingInt("http_port", 80);
-  settings.m_internalConnectionParams.httpsPort = kodi::GetSettingInt("https_port", 0);
-  settings.m_internalConnectionParams.upnpPort = kodi::GetSettingInt("upnp_port", 55555);
-  settings.m_internalConnectionParams.timeout = kodi::GetSettingInt("connection_timeout", 3);
-
-  settings.m_externalConnectionParams.hostname = kodi::GetSettingString("external_hostname", "");
-  settings.m_externalConnectionParams.httpPort = kodi::GetSettingInt("external_http_port", 19999);
-  settings.m_externalConnectionParams.httpsPort = kodi::GetSettingInt("external_https_port", 0);
-  settings.m_externalConnectionParams.upnpPort = kodi::GetSettingInt("external_upnp_port", 55555);
-  settings.m_externalConnectionParams.timeout = kodi::GetSettingInt("connection_timeout", 10);
-
-  settings.m_setChannelIdUsingOrder = kodi::GetSettingEnum<vbox::ChannelOrder>("set_channelid_using_order", CH_ORDER_BY_LCN);
-  settings.m_skipInitialEpgLoad = kodi::GetSettingBoolean("skip_initial_epg_load", true);
-  settings.m_timeshiftEnabled = kodi::GetSettingBoolean("timeshift_enabled", false);
-  settings.m_timeshiftBufferPath = kodi::GetSettingString("timeshift_path", "");
+  settings.m_internalConnectionParams.hostname = kodi::addon::GetSettingString("hostname", "");
+  settings.m_internalConnectionParams.httpPort = kodi::addon::GetSettingInt("http_port", 80);
+  settings.m_internalConnectionParams.httpsPort = kodi::addon::GetSettingInt("https_port", 0);
+  settings.m_internalConnectionParams.upnpPort = kodi::addon::GetSettingInt("upnp_port", 55555);
+  settings.m_internalConnectionParams.timeout = kodi::addon::GetSettingInt("connection_timeout", 3);
+
+  settings.m_externalConnectionParams.hostname = kodi::addon::GetSettingString("external_hostname", "");
+  settings.m_externalConnectionParams.httpPort = kodi::addon::GetSettingInt("external_http_port", 19999);
+  settings.m_externalConnectionParams.httpsPort = kodi::addon::GetSettingInt("external_https_port", 0);
+  settings.m_externalConnectionParams.upnpPort = kodi::addon::GetSettingInt("external_upnp_port", 55555);
+  settings.m_externalConnectionParams.timeout = kodi::addon::GetSettingInt("connection_timeout", 10);
+
+  settings.m_setChannelIdUsingOrder = kodi::addon::GetSettingEnum<vbox::ChannelOrder>("set_channelid_using_order", CH_ORDER_BY_LCN);
+  settings.m_skipInitialEpgLoad = kodi::addon::GetSettingBoolean("skip_initial_epg_load", true);
+  settings.m_timeshiftEnabled = kodi::addon::GetSettingBoolean("timeshift_enabled", false);
+  settings.m_timeshiftBufferPath = kodi::addon::GetSettingString("timeshift_path", "");
 }
 
-ADDON_STATUS CVBoxAddon::SetSetting(const std::string& settingName, const kodi::CSettingValue& settingValue)
+ADDON_STATUS CVBoxAddon::SetSetting(const std::string& settingName, const kodi::addon::CSettingValue& settingValue)
 {
 #define UPDATE_STR(key, var) \
   if (settingName == key) \
diff -pruN 19.0.0+ds1-2/src/addon.h 20.2.0+ds1-1/src/addon.h
--- 19.0.0+ds1-2/src/addon.h	2021-09-17 11:09:35.000000000 +0000
+++ 20.2.0+ds1-1/src/addon.h	2022-01-02 11:28:41.000000000 +0000
@@ -17,14 +17,14 @@ class Settings;
 
 class CVBoxInstance;
 
-class ATTRIBUTE_HIDDEN CVBoxAddon : public kodi::addon::CAddonBase
+class ATTR_DLL_LOCAL CVBoxAddon : public kodi::addon::CAddonBase
 {
 public:
   CVBoxAddon() = default;
 
-  ADDON_STATUS CreateInstance(int instanceType, const std::string& instanceID, KODI_HANDLE instance, const std::string& version, KODI_HANDLE& addonInstance) override;
-  void DestroyInstance(int instanceType, const std::string& instanceID, KODI_HANDLE addonInstance) override;
-  ADDON_STATUS SetSetting(const std::string& settingName, const kodi::CSettingValue& settingValue) override;
+  ADDON_STATUS CreateInstance(const kodi::addon::IInstanceInfo& instance, KODI_ADDON_INSTANCE_HDL& hdl) override;
+  void DestroyInstance(const kodi::addon::IInstanceInfo& instance, const KODI_ADDON_INSTANCE_HDL hdl) override;
+  ADDON_STATUS SetSetting(const std::string& settingName, const kodi::addon::CSettingValue& settingValue) override;
 
 private:
   void ReadSettings(vbox::Settings& settings);
diff -pruN 19.0.0+ds1-2/src/timeshift/Buffer.h 20.2.0+ds1-1/src/timeshift/Buffer.h
--- 19.0.0+ds1-2/src/timeshift/Buffer.h	2021-09-17 11:09:35.000000000 +0000
+++ 20.2.0+ds1-1/src/timeshift/Buffer.h	2022-01-02 11:28:41.000000000 +0000
@@ -27,7 +27,7 @@ namespace timeshift
   /**
    * Base class for all timeshift buffers
    */
-  class ATTRIBUTE_HIDDEN Buffer
+  class ATTR_DLL_LOCAL Buffer
   {
   public:
     Buffer() = default;
diff -pruN 19.0.0+ds1-2/src/timeshift/DummyBuffer.h 20.2.0+ds1-1/src/timeshift/DummyBuffer.h
--- 19.0.0+ds1-2/src/timeshift/DummyBuffer.h	2021-09-17 11:09:35.000000000 +0000
+++ 20.2.0+ds1-1/src/timeshift/DummyBuffer.h	2022-01-02 11:28:41.000000000 +0000
@@ -17,7 +17,7 @@ namespace timeshift
    * Dummy buffer that just passes all calls through to the input file
    * handle without actually buffering anything
    */
-  class ATTRIBUTE_HIDDEN DummyBuffer : public Buffer
+  class ATTR_DLL_LOCAL DummyBuffer : public Buffer
   {
   public:
     DummyBuffer() : Buffer() {}
diff -pruN 19.0.0+ds1-2/src/timeshift/FilesystemBuffer.h 20.2.0+ds1-1/src/timeshift/FilesystemBuffer.h
--- 19.0.0+ds1-2/src/timeshift/FilesystemBuffer.h	2021-09-17 11:09:35.000000000 +0000
+++ 20.2.0+ds1-1/src/timeshift/FilesystemBuffer.h	2022-01-02 11:28:41.000000000 +0000
@@ -23,7 +23,7 @@ namespace timeshift
   /**
    * Timeshift buffer which buffers into a file
    */
-  class ATTRIBUTE_HIDDEN FilesystemBuffer : public Buffer
+  class ATTR_DLL_LOCAL FilesystemBuffer : public Buffer
   {
   public:
     /**
diff -pruN 19.0.0+ds1-2/src/vbox/RecordingReader.h 20.2.0+ds1-1/src/vbox/RecordingReader.h
--- 19.0.0+ds1-2/src/vbox/RecordingReader.h	2021-09-17 11:09:35.000000000 +0000
+++ 20.2.0+ds1-1/src/vbox/RecordingReader.h	2022-01-02 11:28:41.000000000 +0000
@@ -15,7 +15,7 @@
 
 namespace vbox
 {
-  class ATTRIBUTE_HIDDEN RecordingReader
+  class ATTR_DLL_LOCAL RecordingReader
   {
   public:
     RecordingReader(const std::string& streamURL, std::time_t start, std::time_t end, int duration);
diff -pruN 19.0.0+ds1-2/src/VBoxInstance.cpp 20.2.0+ds1-1/src/VBoxInstance.cpp
--- 19.0.0+ds1-2/src/VBoxInstance.cpp	2021-09-17 11:09:35.000000000 +0000
+++ 20.2.0+ds1-1/src/VBoxInstance.cpp	2022-01-02 11:28:41.000000000 +0000
@@ -24,8 +24,8 @@ using namespace vbox;
 unsigned int MENUHOOK_ID_RESCAN_EPG = 1;
 unsigned int MENUHOOK_ID_SYNC_EPG = 2;
 
-CVBoxInstance::CVBoxInstance(const Settings& settings, KODI_HANDLE instance, const std::string& version)
-  : kodi::addon::CInstancePVRClient(instance, version),
+CVBoxInstance::CVBoxInstance(const Settings& settings, const kodi::addon::IInstanceInfo& instance)
+  : kodi::addon::CInstancePVRClient(instance),
     VBox(settings)
 {
 
@@ -120,6 +120,7 @@ PVR_ERROR CVBoxInstance::GetCapabilities
   if (VBox::GetStateHandler().WaitForState(StartupState::INITIALIZED) && VBox::SupportsRecordings())
   {
     capabilities.SetSupportsRecordings(true);
+    capabilities.SetSupportsRecordingsDelete(true);
     capabilities.SetSupportsTimers(true);
   }
 
diff -pruN 19.0.0+ds1-2/src/VBoxInstance.h 20.2.0+ds1-1/src/VBoxInstance.h
--- 19.0.0+ds1-2/src/VBoxInstance.h	2021-09-17 11:09:35.000000000 +0000
+++ 20.2.0+ds1-1/src/VBoxInstance.h	2022-01-02 11:28:41.000000000 +0000
@@ -22,10 +22,10 @@ namespace vbox
 class RecordingReader;
 }
 
-class ATTRIBUTE_HIDDEN CVBoxInstance : public kodi::addon::CInstancePVRClient, private vbox::VBox
+class ATTR_DLL_LOCAL CVBoxInstance : public kodi::addon::CInstancePVRClient, private vbox::VBox
 {
 public:
-  CVBoxInstance(const vbox::Settings& settings, KODI_HANDLE instance, const std::string& version);
+  CVBoxInstance(const vbox::Settings& settings, const kodi::addon::IInstanceInfo& instance);
   ~CVBoxInstance();
 
   ADDON_STATUS Initialize();
diff -pruN 19.0.0+ds1-2/.travis.yml 20.2.0+ds1-1/.travis.yml
--- 19.0.0+ds1-2/.travis.yml	2021-09-17 11:09:35.000000000 +0000
+++ 20.2.0+ds1-1/.travis.yml	2022-01-02 11:28:41.000000000 +0000
@@ -33,7 +33,7 @@ matrix:
       osx_image: xcode10.2
 
 before_install:
-  - if [[ $DEBIAN_BUILD == true ]]; then sudo add-apt-repository -y ppa:team-xbmc/ppa; fi
+  - if [[ $DEBIAN_BUILD == true ]]; then sudo add-apt-repository -y ppa:team-xbmc/xbmc-nightly; fi
   - if [[ $DEBIAN_BUILD == true ]]; then sudo apt-get update; fi
   - if [[ $DEBIAN_BUILD == true ]]; then sudo apt-get install fakeroot; fi
 
@@ -43,12 +43,12 @@ before_install:
 #
 before_script:
   - if [[ $DEBIAN_BUILD != true ]]; then cd $TRAVIS_BUILD_DIR/..; fi
-  - if [[ $DEBIAN_BUILD != true ]]; then git clone --branch Matrix --depth=1 https://github.com/xbmc/xbmc.git; fi
+  - if [[ $DEBIAN_BUILD != true ]]; then git clone --branch master --depth=1 https://github.com/xbmc/xbmc.git; fi
   - if [[ $DEBIAN_BUILD != true ]]; then cd ${app_id} && mkdir build && cd build; fi
   - if [[ $DEBIAN_BUILD != true ]]; then mkdir -p definition/${app_id}; fi
   - if [[ $DEBIAN_BUILD != true ]]; then echo ${app_id} $TRAVIS_BUILD_DIR $TRAVIS_COMMIT > definition/${app_id}/${app_id}.txt; fi
   - if [[ $DEBIAN_BUILD != true ]]; then cmake -DADDONS_TO_BUILD=${app_id} -DADDON_SRC_PREFIX=$TRAVIS_BUILD_DIR/.. -DADDONS_DEFINITION_DIR=$TRAVIS_BUILD_DIR/build/definition -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=$TRAVIS_BUILD_DIR/../xbmc/addons -DPACKAGE_ZIP=1 $TRAVIS_BUILD_DIR/../xbmc/cmake/addons; fi
-  - if [[ $DEBIAN_BUILD == true ]]; then wget https://raw.githubusercontent.com/xbmc/xbmc/Matrix/xbmc/addons/kodi-dev-kit/tools/debian-addon-package-test.sh && chmod +x ./debian-addon-package-test.sh; fi
+  - if [[ $DEBIAN_BUILD == true ]]; then wget https://raw.githubusercontent.com/xbmc/xbmc/master/xbmc/addons/kodi-dev-kit/tools/debian-addon-package-test.sh && chmod +x ./debian-addon-package-test.sh; fi
   - if [[ $DEBIAN_BUILD == true ]]; then sudo apt-get build-dep $TRAVIS_BUILD_DIR; fi
 
 script: 
