Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions script.module.inputstreamhelper/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,9 @@ Please report any issues or bug reports on the [GitHub Issues](https://github.co
This module is licensed under the **The MIT License**. Please see the [LICENSE.txt](LICENSE.txt) file for details.

## Releases
### v0.8.4 (2025-11-04)
- Fix Widevine CDM installation on ARM hardware (@mediaminister)

### v0.8.3 (2025-10-10)
- Fix removing older Widevine CDM backups (@mediaminister)

Expand Down
5 changes: 4 additions & 1 deletion script.module.inputstreamhelper/addon.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<addon id="script.module.inputstreamhelper" name="InputStream Helper" version="0.8.3" provider-name="emilsvennesson, dagwieers, mediaminister, horstle">
<addon id="script.module.inputstreamhelper" name="InputStream Helper" version="0.8.4" provider-name="emilsvennesson, dagwieers, mediaminister, horstle">
<requires>
<!--py3 compliant-->
<import addon="xbmc.python" version="3.0.0"/>
Expand Down Expand Up @@ -27,6 +27,9 @@
<description lang="ru_RU">Простой модуль для Kodi, который облегчает жизнь разработчикам дополнений, с использованием InputStream дополнений и воспроизведения DRM контента.</description>
<description lang="sv_SE">En enkel Kodi-modul som underlättar livet för tilläggsutvecklare som förlitar sig på InputStream-baserade tillägg och DRM-uppspelning.</description>
<news>
v0.8.4 (2025-11-04)
- Fix Widevine CDM installation on ARM hardware

v0.8.3 (2025-10-10)
- Fix removing older Widevine CDM backups

Expand Down
17 changes: 4 additions & 13 deletions script.module.inputstreamhelper/lib/inputstreamhelper/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,7 @@
kodi_to_ascii, kodi_version, listdir, localize, log, notification, ok_dialog, progress_dialog, select_dialog,
set_setting, set_setting_bool, textviewer, translate_path, yesno_dialog)
from .utils import arch, download_path, http_download, parse_version, remove_tree, system_os, temp_path, unzip, userspace64
from .widevine.arm import dl_extract_widevine_chromeos, extract_widevine_chromeos, install_widevine_arm
from .widevine.arm_lacros import cdm_from_lacros
from .widevine.arm import dl_extract_widevine_chromeos, extract_widevine_chromeos, install_widevine_arm_chromeos
from .widevine.widevine import (backup_path, has_widevinecdm, ia_cdm_path,
install_cdm_from_backup, latest_widevine_version,
load_widevine_config, missing_widevine_libs, widevine_config_path,
Expand Down Expand Up @@ -227,7 +226,7 @@ def install_widevine(self, choose_version=False):
else:
if choose_version:
log(1, "Choosing a version to install is only implemented if the lib is found in googles repo.")
result = install_widevine_arm(backup_path())
result = install_widevine_arm_chromeos(backup_path())
if not result:
return result

Expand Down Expand Up @@ -296,7 +295,7 @@ def _first_run():

@staticmethod
def get_current_wv():
"""Returns which component is used (widevine/chromeos/lacros) and the current version"""
"""Returns which component is used (widevine/chromeos) and the current version"""
wv_config = load_widevine_config()
component = 'Widevine CDM'
current_version = '0'
Expand All @@ -305,12 +304,6 @@ def get_current_wv():
log(3, 'Widevine config missing. Could not determine current version, forcing update.')
elif cdm_from_repo():
current_version = wv_config['version']
elif cdm_from_lacros():
component = 'Lacros image'
try:
current_version = wv_config['img_version'] # if lib was installed from chromeos image, there is no img_version
except KeyError:
pass
else:
component = 'Chrome OS'
current_version = wv_config['version']
Expand Down Expand Up @@ -481,9 +474,7 @@ def info_dialog(self):
text += localize(30821, version=self._get_lib_version(widevinecdm_path()), date=wv_updated) + '\n'
if not cdm_from_repo():
wv_cfg = load_widevine_config()
if wv_cfg and cdm_from_lacros(): # Lacros image version
text += localize(30825, image="Lacros", version=wv_cfg['img_version']) + '\n'
elif wv_cfg: # Chrome OS version
if wv_cfg: # Chrome OS version
text += localize(30822, name=wv_cfg['hwidmatch'].split()[0].lstrip('^'), version=wv_cfg['version']) + '\n'
if get_setting_float('last_check', 0.0):
wv_check = strftime('%Y-%m-%d %H:%M', localtime(get_setting_float('last_check', 0.0)))
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -111,10 +111,6 @@

CHROMEOS_BLOCK_SIZE = 512

LACROS_DOWNLOAD_URL = "https://gsdview.appspot.com/chromeos-localmirror/distfiles/chromeos-lacros-{arch}-squash-zstd-{version}"

LACROS_LATEST = "https://chromiumdash.appspot.com/fetch_releases?channel=Stable&platform=Lacros&num=1"

MINIMUM_INPUTSTREAM_VERSION_ARM64 = {
'inputstream.adaptive': '20.3.5',
}
Expand Down
Loading