Seite 11 von 12
Re: Neutrino Mediathek
Verfasst: Di 18. Nov 2025, 10:56
von Gorcon
Jetzt scheint es zu funktionieren. Eben war auch die Aktualisierung von heute drin (davor stand noch 17.11).
Danke. Ich probiere es jetzt nochmal mit der VU+ Duo2SE aus. (die ist ja in Sachen Neutrino-Mediathek etwas zickig).
Re: Neutrino Mediathek
Verfasst: Di 18. Nov 2025, 11:01
von BPanther
Ist eigentlich seit fast 1h schon drin.
Ich teste das hier mit der HD51 und Ultimo 4K und ab und an auch mit der DM920.
EDIT: Habe mir mal ein NI der Ultimo4K runtergeladen und selbst nachgeschaut. Kein Wunder, daß es bei NI diese Probleme (noch) nicht gibt, denn die MT Version ist da noch etwas älter. Da gibt es die addToggle Funktion noch nicht.
Re: Neutrino Mediathek
Verfasst: Di 18. Nov 2025, 11:30
von Gorcon
Egal, jetzt läuft es. (auch auf der VU+).
Danke für die Anpassung.
Re: Neutrino Mediathek
Verfasst: Di 18. Nov 2025, 11:32
von BPanther
Eben, hauptsache es funktioniert wieder.

Re: Neutrino Mediathek
Verfasst: Di 18. Nov 2025, 13:11
von vanhofen
BPanther hat geschrieben: ↑Di 18. Nov 2025, 11:01
Habe mir mal ein NI der Ultimo4K runtergeladen und selbst nachgeschaut. Kein Wunder, daß es bei NI diese Probleme (noch) nicht gibt, denn die MT Version ist da noch etwas älter. Da gibt es die addToggle Funktion noch nicht.
Die VU-Images werden immer samstags gebaut. Da war die neue Mediathek noch nicht im Git.

Re: Neutrino Mediathek
Verfasst: Di 18. Nov 2025, 13:15
von BPanther
Hehe, alles gut. Wollte das auch nur mal vergleichen, da ist mir das aufgefallen.
Prinzipiell gehts ja nun. Das einzige ist noch die falsche Laufzeit in der aktuellen Version. Keine Ahnung ob das bei der älteren auch schon so ist. Mal schauen, ob ich da irgendwo die 1 Stunde zuviel abziehen kann.
Re: Neutrino Mediathek
Verfasst: Di 18. Nov 2025, 14:10
von jokel
ich glaube das problem ist ..
https://github.com/tuxbox-neutrino/mt-a ... elpers.cpp
meiner meinung nach wäre das besser ..
hier mein vorschlag ..
Code: Alles auswählen
--- a/src/common/helpers.cpp
+++ b/src/common/helpers.cpp
@@
-time_t duration2time(const std::string &str)
-{
- struct tm t;
- memset(&t, 0, sizeof(t));
-
- // String "HH:MM:SS" wird zerlegt
- sscanf(str.c_str(), "%d:%d:%d", &t.tm_hour, &t.tm_min, &t.tm_sec);
-
- // mktime interpretiert t als lokale Zeit (führt zu +1h Offset)
- return mktime(&t);
-}
+time_t duration2time(const std::string &str)
+{
+ int h = 0, m = 0, s = 0;
+ // String "HH:MM:SS" wird zerlegt
+ sscanf(str.c_str(), "%d:%d:%d", &h, &m, &s);
+
+ // Dauer direkt in Sekunden berechnen, ohne Zeitzonen-/DST-Korrektur
+ return static_cast<time_t>(h * 3600 + m * 60 + s);
+}
ich kann das z.z. leider nicht testen ..
auf meinen api server unter python mache ich das so ..
Code: Alles auswählen
def parse_duration(dauer_str):
try:
h, m, s = map(int, dauer_str.strip().split(":"))
return h * 3600 + m * 60 + s
except:
return 0
Re: Neutrino Mediathek
Verfasst: Di 18. Nov 2025, 14:23
von BPanther
Gibt es aber weder im NI noch im DDT. Zudem könnte es sein, daß wenn Du das dort änderst, der EPG vielleicht von der Zeit her nicht mehr passt. Da dürfte es besser sein, das im Plugin anzupassen.
Re: Neutrino Mediathek
Verfasst: Di 18. Nov 2025, 14:57
von vanhofen
Ohne es mir wirklich gut angeschaut zu haben ... Reicht es nicht, das
+3600 zu entfernen? Das findet man 3x in helpers.cpp.
https://github.com/tuxbox-neutrino/mt-a ... rs.cpp#L31
Re: Neutrino Mediathek
Verfasst: Di 18. Nov 2025, 15:24
von jokel
@vanhofen .. ja genau ..
für 1) ..
Code: Alles auswählen
--- a/src/common/helpers.cpp
+++ b/src/common/helpers.cpp
@@
-time_t duration2time(string t)
-{
- struct tm tm;
- memset(&tm, 0, sizeof(tm));
- strptime(("1970-01-01 " + t).c_str(), "%F %T", &tm);
- time_t ret = mktime(&tm) + 3600;
- return ret;
-}
+time_t duration2time(string t)
+{
+ int h = 0, m = 0, s = 0;
+ // Zerlege den String "HH:MM:SS"
+ sscanf(t.c_str(), "%d:%d:%d", &h, &m, &s);
+
+ // Dauer direkt in Sekunden berechnen, ohne Zeitzonen-/DST-Korrektur
+ return static_cast<time_t>(h * 3600 + m * 60 + s);
+}
für 2) ..
Code: Alles auswählen
--- a/src/common/helpers.cpp
+++ b/src/common/helpers.cpp
@@
-int duration2sec(string t, string forceFormat)
-{
- struct tm tm;
- memset(&tm, '\0', sizeof(struct tm));
- string t1 = trim(t);
- string t2 = "1970-01-01 " + t1;
- istringstream iss(t2);
- string format = "%Y-%m-%d ";
- if (forceFormat.empty()) {
- size_t len = t1.length();
- if (len == 8)
- format += "%H:%M:%S";
- else if (len == 5)
- format += "%M:%S";
- else if (len == 2)
- format += "%S";
- else {
- cout << "[" << __func__ << ":" << __LINE__ << "] " << "Error parse time string \""<< t1 << "\"\n" << endl;
- return 0;
- }
- }
- else
- format += forceFormat;
- iss >> get_time(&tm, format.c_str());
- if (iss.fail()) {
- cout << "[" << __func__ << ":" << __LINE__ << "] " << "Error parse time string \""<< t2 << "\", format: \""<< format <<"\"\n" << endl;
- return 0;
- }
- return static_cast<int>(mktime(&tm)) + 3600;
-}
+int duration2sec(string t, string forceFormat)
+{
+ int h = 0, m = 0, s = 0;
+ string t1 = trim(t);
+
+ if (forceFormat.empty()) {
+ size_t len = t1.length();
+ if (len == 8) {
+ // HH:MM:SS
+ sscanf(t1.c_str(), "%d:%d:%d", &h, &m, &s);
+ } else if (len == 5) {
+ // MM:SS
+ sscanf(t1.c_str(), "%d:%d", &m, &s);
+ } else if (len == 2) {
+ // SS
+ sscanf(t1.c_str(), "%d", &s);
+ } else {
+ cout << "[" << __func__ << ":" << __LINE__ << "] "
+ << "Error parse time string \"" << t1 << "\"\n" << endl;
+ return 0;
+ }
+ } else {
+ // Falls forceFormat gesetzt ist, einfache HH:MM:SS-Interpretation
+ sscanf(t1.c_str(), "%d:%d:%d", &h, &m, &s);
+ }
+
+ // Dauer direkt in Sekunden zurückgeben, ohne Zeitzonen-/DST-Korrektur
+ return h * 3600 + m * 60 + s;
+}
für 3) ..
Code: Alles auswählen
--- a/src/common/helpers.cpp
+++ b/src/common/helpers.cpp
@@
-time_t str2time(string format, string t)
-{
- struct tm tm;
- memset(&tm, 0, sizeof(tm));
- strptime(t.c_str(), format.c_str(), &tm);
- time_t ret = mktime(&tm) + 3600;
-
- return ret;
-}
+time_t str2time(string format, string t)
+{
+ struct tm tm;
+ memset(&tm, 0, sizeof(tm));
+ strptime(t.c_str(), format.c_str(), &tm);
+
+ // Lokale Zeit korrekt berechnen, ohne künstlichen +1h Offset
+ return mktime(&tm);
+}
@BPanther .. EPG ???
Re: Neutrino Mediathek
Verfasst: Di 18. Nov 2025, 15:40
von BPanther
Naja, ich weiß nicht, ob es auch darauf Auswirkungen hat beim Tux Neutrino.
EDIT: Habe einfach hier -1 bei h hinzugefügt:
https://github.com/tuxbox-neutrino/plug ... ek.lua#L37
Re: Neutrino Mediathek
Verfasst: Di 18. Nov 2025, 17:08
von jokel
daran kannst du sehen .. das die zeit vom api server kommt in sekunden ..
wenn ich meinen api server eintrage ist der wert korrekt .. wenn ich jetzt die lua
ändern würde .. dann würde mir 1h fehlen da -1 und das wäre nicht korrekt

das plugin arbeitet also korrekt ..
dies beweist auch dieses bildchen .. mit meinem api server .. da stimmen die laufzeiten
-
[+] Spoiler
Re: Neutrino Mediathek
Verfasst: Di 18. Nov 2025, 17:22
von BPanther
Naja, dann ist eben da die Laufzeit falsch. Was solls, mit dem öffentlichen Server ist es halt 1h zuviel, also habe ich das im Plugin angepasst damit es auch stimmt.

Re: Neutrino Mediathek
Verfasst: Di 18. Nov 2025, 17:26
von Gorcon
Das ist dann ja auch kein Beinbruch, das kann man dann ja zur Not selbst ändern. (Das bekomme ich auch noch hin)

Re: Neutrino Mediathek
Verfasst: Di 18. Nov 2025, 17:30
von jokel
BPanther hat geschrieben: ↑Di 18. Nov 2025, 09:58
Aja, hatte nur grün probiert. Die anderen 3 Farben geben in der Tat diese Fehlermeldung. Und das ist beim NI nicht der Fall? Weil es fehlt dem die addToggle() Funktion. Entferne ich in Zeile 251 der config.lua einfach das "local" vor der Funktion addToggle passt es. Habs auf dem Server angepasst. Einfach nochmal installieren.
EDIT: "gelb" hat dennoch ein Problem. Geht man nur rein und wieder raus ohne was zu verstellen, dann wird es auch zu einem Fehler kommen wegen leerem String wenn man einfach nur nach unten geht. Passt man jedoch vorher was an, dann klappt es.
habe heute das aktuelle ni-image geflasht .. siehe bildchen ..
-
[+] Spoiler
ich werde aber warten bis @dbt1 das fixt addToggle() .. also muss die 0.4.6 wieder herhalten ..
Re: Neutrino Mediathek
Verfasst: Di 18. Nov 2025, 17:32
von BPanther
Hab doch oben geschrieben was zu tun ist. Einfach in der config.lua Funktion addToggle suchen und das local davor entfernen.
Das hier:
https://github.com/tuxbox-neutrino/plug ... g.lua#L251
Re: Neutrino Mediathek
Verfasst: Di 18. Nov 2025, 17:46
von jokel
ja das habe ich gelesen
und ich hätte das auch regeln können .. den mittlerweile macht mir LUA coden richtig spass ..
und nicht nur LUA ..

Re: Neutrino Mediathek
Verfasst: Di 18. Nov 2025, 17:57
von jokel
ja hat @dbt1 vorhin gefixt

im in db-import
Re: Neutrino Mediathek
Verfasst: Di 18. Nov 2025, 21:58
von jokel
nachtrag ..
hat wohl nichts genutzt .. weil z.z. ist es 21:50 uhr
und datenbank sagt ..
-
[+] Spoiler
vorher wurde alle 2h die datenbank aktualisiert ..

Re: Neutrino Mediathek
Verfasst: Mi 19. Nov 2025, 07:39
von Knicko
Hab heute morgen den Importer manuell angeschubst, bei mir auf dem Server
Sieht jetzt zumindest gut aus mit den Laufzeiten.
mal schauen, ob sich die DB aktualisiert.
hr. Knicko