Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[script.service.hyperion@nexus] 20.0.1 #2515

Merged
merged 1 commit into from
Nov 19, 2023
Merged
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
36 changes: 36 additions & 0 deletions script.service.hyperion/addon.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<addon id="script.service.hyperion" name="Hyperion Ambilight" version="20.0.1" provider-name="hyperion-project">
<requires>
<import addon="xbmc.addon" version="20.0.0"/>
<import addon="xbmc.python" version="3.0.1"/>
<import addon="script.module.pil" version="5.1.0"/>
<import addon="script.module.protobuf" version="4.23.2"/>
</requires>
<extension point="xbmc.service" library="service.py"/>
<extension point="xbmc.addon.metadata">
<summary lang="en_GB">Capture and send your current Kodi-picture to your Hyperion Ambient Lighting system.</summary>
<summary lang="de_DE">Übermittle das aktuelle Kodi-Bild an dein Hyperion Ambient Lighting System.</summary>
<summary lang="it_IT">Cattura e invia l'immagine corrente di Kodi ad tuo sistema di Ambient Lighting Hyperion.</summary>
<description lang="en_GB">Hyperion is an opensource Bias or Ambient Lighting implementation which runs on many devices.[CR]This addon sends through the Hyperion PROTO-port your current picture to your Hyperion daemon for further processing like black border detection or smoothing.</description>
<description lang="de_DE">Hyperion ist ein Bias oder Ambient Lighting System, welches auf vielen Plattformen lauffähig ist.[CR]Dieses Addon sendet über den PROTO-Port laufend Bilder an Hyperion.</description>
<description lang="it_IT">Hyperion è un'implementazione open source di Bias o Ambient Lighting che supporta molti dispositivi.[CR]Questo addon invia l'immagine corrente alla porta PROTO del demone Hyperion per ulteriori elaborazioni come il rilevamento bordi neri o lo smoothing.</description>
<platform>all</platform>
<forum>https://hyperion-project.org/forum</forum>
<website>https://www.hyperion-project.org</website>
<source>https://github.com/hyperion-project/hyperion.kodi</source>
<license>MIT</license>
<news>
20.0.1
- Clean-ups
- Handle missing PIL library on Android
20.0.0
- Kodi 20 (Nexus) support
- New languages: Hebrew, Italian
</news>
<assets>
<icon>resources/icon.png</icon>
<fanart>resources/fanart.png</fanart>
<screenshot>resources/screenshot-01.png</screenshot>
</assets>
</extension>
</addon>
Empty file.
Binary file added script.service.hyperion/resources/fanart.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added script.service.hyperion/resources/icon.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
# Kodi Media Center language file
# Addon Name: Hyperion Ambilight
# Addon id: script.service.hyperion
# Addon Provider: hyperion-project

msgid ""
msgstr ""
"Project-Id-Version: Kodi Addons\n"
"Report-Msgid-Bugs-To: hyperion-project.org\n"
"Last-Translator: hyperion-project\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: de-DE\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

msgctxt "#32001"
msgid "General"
msgstr "Allgemein"

msgctxt "#32002"
msgid "Enable addon (Grabbing)"
msgstr "Aktiviere das Addon (Grabbing)"

msgctxt "#32003"
msgid "Hyperion hostname or IP-address"
msgstr "Hyperion Hostname oder IP-Adresse"

msgctxt "#32004"
msgid "Hyperion host PROTO-port"
msgstr "Hyperion Host PROTO-Port"

msgctxt "#32005"
msgid "Hyperion priority channel"
msgstr "Hyperion Priorität"

msgctxt "#32006"
msgid "Reconnect timeout (s)"
msgstr "Zeitlimit für erneute Verbindung (s)"

msgctxt "#32007"
msgid "Enable when on screensaver"
msgstr "Aktiviere bei Bildschirmschoner"

msgctxt "#32008"
msgid "Grabber picture width (pixel)"
msgstr "Bildbreite (pixel)"

msgctxt "#32010"
msgid "Frame rate (fps)"
msgstr "Bildfrequenz (fps)"

msgctxt "#32100"
msgid "Error: Unable to connect to Hyperion. Wrong hostname or IP-address?"
msgstr "Fehler: Kann keine Verbindung zu Hyperion aufbauen. Falscher Hostname oder IP-Adresse?"

msgctxt "#32101"
msgid "Error: Unable to send image to Hyperion. Wrong PROTO-port?"
msgstr "Fehler: Kann kein Bild an Hyperion senden. Falscher PROTO-Port?"

msgctxt "#32102"
msgid "ATTENTION: Higher the values below may lead to performance issues"
msgstr "ACHTUNG: Ein Erhöhen der folgenden Werte kann zu hoher CPU-Last führen"
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
# Kodi Media Center language file
# Addon Name: Hyperion Ambilight
# Addon id: script.service.hyperion
# Addon Provider: hyperion-project

msgid ""
msgstr ""
"Project-Id-Version: Kodi Addons\n"
"Report-Msgid-Bugs-To: hyperion-project.org\n"
"Last-Translator: hyperion-project\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: en_GB\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

msgctxt "#32001"
msgid "General"
msgstr "General"

msgctxt "#32002"
msgid "Enable addon (Grabbing)"
msgstr "Enable addon (Grabbing)"

msgctxt "#32003"
msgid "Hyperion hostname or IP-address"
msgstr "Hyperion hostname or IP-address"

msgctxt "#32004"
msgid "Hyperion host PROTO-port"
msgstr "Hyperion host PROTO-port"

msgctxt "#32005"
msgid "Hyperion priority channel"
msgstr "Hyperion priority channel"

msgctxt "#32006"
msgid "Reconnect timeout (s)"
msgstr "Reconnect timeout (s)"

msgctxt "#32007"
msgid "Enable when on screensaver"
msgstr "Enable when on screensaver"

msgctxt "#32008"
msgid "Grabber picture width (pixel)"
msgstr "Grabber picture width (pixel)"

msgctxt "#32010"
msgid "Frame rate (fps)"
msgstr "Frame rate (fps)"

msgctxt "#32100"
msgid "Error: Unable to connect to Hyperion. Wrong hostname or IP-address?"
msgstr ""

msgctxt "#32101"
msgid "Error: Unable to send image to Hyperion. Wrong PROTO-port?"
msgstr ""

msgctxt "#32102"
msgid "ATTENTION: Higher the values below may lead to performance issues"
msgstr ""
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
# Kodi Media Center language file
# Addon Name: Hyperion Ambilight
# Addon id: script.service.hyperion
# Addon Provider: hyperion-project
msgid ""
msgstr ""
"Project-Id-Version: Kodi Addons\n"
"Report-Msgid-Bugs-To: hyperion-project.org\n"
"POT-Creation-Date: 2014-10-26 17:05+0000\n"
"PO-Revision-Date: 2017-10-09 10:05+0300\n"
"Last-Translator: A. Dambledore\n"
"Language-Team: Eng2Heb\n"
"Language: he_IL\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"


msgctxt "#32001"
msgid "General"
msgstr "כללי"

msgctxt "#32002"
msgid "Enable addon (Grabbing)"
msgstr "אפשר הרחבה (Grabbing - תפיסה)"

msgctxt "#32003"
msgid "Hyperion hostname or IP-address"
msgstr "היפריון כתובת ה-IP של המארח"

msgctxt "#32004"
msgid "Hyperion host PROTO-port"
msgstr "היפריון פורט PROTO של המארח"

msgctxt "#32005"
msgid "Hyperion priority channel"
msgstr "ערוץ עדיפות היפריון"

msgctxt "#32006"
msgid "Reconnect timeout (s)"
msgstr "זמן קצוב לחיבור מחדש (ש)"

msgctxt "#32007"
msgid "Enable when on screensaver"
msgstr "אפשר במצב שומר מסך"

msgctxt "#32008"
msgid "Grabber picture width (pixel)"
msgstr "תופש התמונות רוחב (פיקסלים)"

msgctxt "#32010"
msgid "Frame rate (fps)"
msgstr "קצב הפריימים (fps)"

msgctxt "#32100"
msgid "Error: Unable to connect to Hyperion. Wrong hostname or IP-address?"
msgstr "שגיאה: אין אפשרות להתחבר אל היפריון. כתובת ה-IP שגויה?"

msgctxt "#32101"
msgid "Error: Unable to send image to Hyperion. Wrong PROTO-port?"
msgstr "שגיאה: אין אפשרות להתחבר אל היפריון. פורט PROTO שגוי?"

msgctxt "#32102"
msgid "ATTENTION: Higher the values below may lead to performance issues"
msgstr "שימו לב: הערכים הגבוהים שלהלן עלולים להוביל לבעיות ביצועים"
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
# Kodi Media Center language file
# Addon Name: Hyperion Ambilight
# Addon id: script.service.hyperion
# Addon Provider: hyperion-project

msgid ""
msgstr ""
"Project-Id-Version: Kodi Addons\n"
"Report-Msgid-Bugs-To: hyperion-project.org\n"
"Last-Translator: hyperion-project\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: it-IT\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

msgctxt "#32001"
msgid "General"
msgstr "Generale"

msgctxt "#32002"
msgid "Enable addon (Grabbing)"
msgstr "Abilita l'Addon (Acquisizione)"

msgctxt "#32003"
msgid "Hyperion hostname or IP-address"
msgstr "Nome host o indirizzo IP di Hyperion"

msgctxt "#32004"
msgid "Hyperion host PROTO-port"
msgstr "Porta PROTO di Hyperion"

msgctxt "#32005"
msgid "Hyperion priority channel"
msgstr "Canale prioritario di Hyperion"

msgctxt "#32006"
msgid "Reconnect timeout (s)"
msgstr "Timeout riconnessione (s)"

msgctxt "#32007"
msgid "Enable when on screensaver"
msgstr "Abilita con lo screen saver"

msgctxt "#32008"
msgid "Grabber picture width (pixel)"
msgstr "Larghezza immagine acquisita (pixel)"

msgctxt "#32010"
msgid "Frame rate (fps)"
msgstr "Frame rate (fps)"

msgctxt "#32100"
msgid "Error: Unable to connect to Hyperion. Wrong hostname or IP-address?"
msgstr "Errore: Impossible connettersi a Hyperion. Nome host o indirizzo IP sbagliato?"

msgctxt "#32101"
msgid "Error: Unable to send image to Hyperion. Wrong PROTO-port?"
msgstr "Errore: Impossibile inviare l'immagine a Hyperion. porta PROTO sbagliata?"

msgctxt "#32102"
msgid "ATTENTION: Higher the values below may lead to performance issues"
msgstr "ATTENZIONE: Alzare i valori seguenti può portare a problemi di performance"
Empty file.
34 changes: 34 additions & 0 deletions script.service.hyperion/resources/lib/gui.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
"""Kodi GUI handler."""
from __future__ import annotations

import xbmcaddon
import xbmcgui
from resources.lib.settings import SettingsManager


class GuiHandler:
"""Kodi GUI handler."""

def __init__(
self, addon: xbmcaddon.Addon, settings_manager: SettingsManager
) -> None:
self._addon = addon
self._settings = settings_manager
self._dialog = xbmcgui.Dialog() # TODO: DI with embedded getlocalizedstring
self._addon_name = addon.getAddonInfo("name")
self._addon_icon = addon.getAddonInfo("icon")

def _get_localized_string(self, label_id: int) -> str:
"""Returns the localized string of a label ID."""
return self._addon.getLocalizedString(label_id)

def notify_label(self, label_id: int) -> None:
"""Displays a notification with the localized message."""
message = self._get_localized_string(label_id)
self.notify_text(message, time=1000, icon=self._addon_icon)

def notify_text(
self, message: str, time: int = 3000, icon: str = xbmcgui.NOTIFICATION_INFO
) -> None:
"""Displays a notification."""
self._dialog.notification(self._addon_name, message, icon, time)
Empty file.
Loading
Loading