Nirvana's sectionsd Testecke

Das Original Benutzerinterface Neutrino-SD incl. zapit, sectionsd, yWeb etc...
PT-1
Moderator english
Beiträge: 2458
Registriert: Donnerstag 20. Dezember 2001, 00:00

Beitrag von PT-1 »

koenntest du eventuell auch die Bins dafuer hochladen?
Danke denn es kann ja nicht jeder 8mages bauen (busybox etc.)
Hollo
Einsteiger
Einsteiger
Beiträge: 226
Registriert: Mittwoch 22. August 2001, 00:00

Beitrag von Hollo »

PT-1 hat geschrieben:koenntest du eventuell auch die Bins dafuer hochladen?
Danke denn es kann ja nicht jeder 8mages bauen (busybox etc.)
aber die busybox dann nach rdate verlinken kann auch nicht jeder :wink:
Nokia 2xA bmon 1.0 Kabel Avia 500
Sagem 1xI bmon 1.3 Kabel Avia 600L
mb405
Tuxboxer
Tuxboxer
Beiträge: 2331
Registriert: Donnerstag 24. März 2005, 21:52

Beitrag von mb405 »

also binarys wirds da nicht geben. neutrino, busybox, locales, sectionsd wird nicht zu jeden image passen. da hilft nur warten, bis einer das einbaut und publischt.
die devs sind nicht so erbaut, wenn das alles in die neutrino reinkommt. diese sollte ja mal bischen vereinfacht werden (nicht so überladen). so wie in enigma wäre das ne sache, wie sich die devs das vorstellen. ich hab das schon mal ausgegliedert in eine extra datei. es funktioniert auch schon soweit.
es wird nichts in die neutrino.conf geschrieben.
wir sollten erst warten, bis Nirvana und Houdini den sectionsd die macken ausgetrieben haben.
ich hab mir das diff angesehen. sieht sauber aus
PauleFoul
Wissender
Wissender
Beiträge: 1839
Registriert: Sonntag 17. August 2003, 01:39

Beitrag von PauleFoul »

also wenn das mit der I-Net Uhr funktioniert spricht doch nichts dagegen das
einzuchecken.

Ich finde das eine gute Alternative zur EPG-Zeit. Auch weil bei uns
im Kabel einige Sender keinen EPG und somit auch keine Zeit haben.


Gruß
____Paule
AudioSlyer
Erleuchteter
Erleuchteter
Beiträge: 450
Registriert: Sonntag 28. Juli 2002, 01:18

Beitrag von AudioSlyer »

danke kroki, ich hab es mal eingebaut.
Nirvana
Erleuchteter
Erleuchteter
Beiträge: 646
Registriert: Mittwoch 16. April 2003, 14:12

Beitrag von Nirvana »

Mal ein kleiner RFC:

Ich habe mal die im sectionsd gespeicherten Events beim Runterfahren in eine Datei schreiben lassen. Das dauert zwar etwas, funktioniert aber.

Das sieht dann so aus:
http://s8.yousendit.com/d.aspx?id=0Q77E ... V0S38GQOU5

Der Code dazu schlummert schon ein paar Jährchen im CVS. Das Format ist also nicht auf meinem Mist gewachsen. Gibt es dazu Anmerkungen oder Verbesserungsvorschläge?
Barf
Developer
Beiträge: 1475
Registriert: Dienstag 4. Februar 2003, 22:02

Beitrag von Barf »

Wie hast du es "schreiben lassen?" Ich schätze du hast irgendwie im Code ein Funktionsauftruf reingeklemmt, wo?

Die Datei ist keine XML-Datei: erstmals fehlt eine xml-Deklaration

Code: Alles auswählen

<?xml version="1.0" encoding="utf-8"?>
oder sowas. Zweitens ist ein XML-Datei ein "Baum" (genau ein Würzelelement).

Ich glaube der Ansatz ist in sich vielversprechende. Naheliegende wäre ein Möglichkeit den "XML-Dump" durch ein Message oder Signal auszulösen.
Nirvana
Erleuchteter
Erleuchteter
Beiträge: 646
Registriert: Mittwoch 16. April 2003, 14:12

Beitrag von Nirvana »

Ich habe der sectionsd API (sectionsdclient) 2 Funktionsaufrufe hinzugefügt:
writeSI2xml(dateiname)
readSIfromxml(dateiname)
(daüberhinaus noch eine Funktion mit der Neutrino den sectionsd anweisen kann seinen Speicher wieder freizugeben. freeMem) Aber das nur nebenbei.

Neutrino ruft im ExitRun() writeSI2xml auf.

Okay, dass es noch keine xml Datei ist, klar, das lässt sich machen. Ich überlege nur, ob es nicht günstiger ist die Events der einzelnen Services hintereinander zu schreiben. Das meinte ich eher.
Bimmel
Interessierter
Interessierter
Beiträge: 64
Registriert: Samstag 31. Juli 2004, 18:11

Beitrag von Bimmel »

Der XML-Format ist überladen , mach nur das Datei noch größer.
Vdr epg.data format ist kleiner, wäre der nicht beßer. ?
Nirvana
Erleuchteter
Erleuchteter
Beiträge: 646
Registriert: Mittwoch 16. April 2003, 14:12

Beitrag von Nirvana »

Guter Punkt.

Ich habe auch einen VDR, der sich mit tvmovie2vdr jede Nacht seinen EPG aus dem Netz zieht. Da liegt es nahe, dieselbe Datei auch für die Dboxen zu nehmen.
Ich verehre den VDR auch wirklich, aber was mich richtig nervt, ist die Verwendung der externen Dateien. Die channels.conf ist in meinen Augen eine echte Katastrophe. Da kann man nichts per Hand einstellen.
Und die epg.data? Naja, da müsste man relativ viel programmieren, was wieder die Gefahr von Fehlern birgt. Der Code für xml ist vorhanden. Nee, also sch**ß auf die Effizienz, ich will eine saubere Lösung und das ist nun mal xml.
mb405
Tuxboxer
Tuxboxer
Beiträge: 2331
Registriert: Donnerstag 24. März 2005, 21:52

Beitrag von mb405 »

das mit der xml speichern ist schon schön, nur müsste das auf ein mountlaufwerk. denn 3.3mb sind ne menge holz :(
Nirvana
Erleuchteter
Erleuchteter
Beiträge: 646
Registriert: Mittwoch 16. April 2003, 14:12

Beitrag von Nirvana »

Auf die Idee das im Flash zu halten bin ich gar nicht gekommen. Die Daten ließen sich natürlich optimal komprimieren - nicht nur beim abspeichern. Aber wer hat schon Lust das zu implementieren?
petgun
Tuxboxer
Tuxboxer
Beiträge: 5001
Registriert: Montag 11. November 2002, 15:26

Beitrag von petgun »

Nirvana hat geschrieben:Auf die Idee das im Flash zu halten bin ich gar nicht gekommen. Die Daten ließen sich natürlich optimal komprimieren - nicht nur beim abspeichern. Aber wer hat schon Lust das zu implementieren?
..hoffentlich Niemand..jedesmal ein Flashvorgang (imo mit Risiko und angeblich auch in der Anzahl nicht unendlich) der lange dauert und den Flash mit nur zeitlich begrenzt nuetzlichen Daten zumuellt. Wenn Du/Irgendwer das implementiert _bitte_ abschaltbar.
Nirvana
Erleuchteter
Erleuchteter
Beiträge: 646
Registriert: Mittwoch 16. April 2003, 14:12

Beitrag von Nirvana »

;)
Was denn? Die Events komprimiert im Ram zu speichern, das wäre doch toll! Dann könnte man bei einer geschätzten Kompression von 80% die Eventschranke verfünffachen. Dagegen kannst nicht mal Du etwas haben. *fg*
Aber keine Sorge, mir fehlt die Lust.
petgun
Tuxboxer
Tuxboxer
Beiträge: 5001
Registriert: Montag 11. November 2002, 15:26

Beitrag von petgun »

Nirvana hat geschrieben:;)
Was denn? Die Events komprimiert im Ram zu speichern, das wäre doch toll! Dann könnte man bei einer geschätzten Kompression von 80% die Eventschranke verfünffachen. Dagegen kannst nicht mal Du etwas haben. *fg*
Aber keine Sorge, mir fehlt die Lust.
;-) Ram = Flash?? Sorry, ich hab's sicher mal wieder flasch verstenden...Du hast imo davon gesprochen diese Daten (ich habe mir die 3,4MB tatsaechlich angeschaut) ins Flash zu speichern.
Nirvana
Erleuchteter
Erleuchteter
Beiträge: 646
Registriert: Mittwoch 16. April 2003, 14:12

Beitrag von Nirvana »

Nee,

diesmal hast Du es schon richtig verstanden. Zumindest fast. ;)
Wie gesagt, ich will nix im Flash speicherm. Da passt doch sowieso nichts rein. Meine Services und Bouquets liegen übrigens auch auf einem Server, denn die ändern sich ja auch öfter mal.
Ich mache das allerdings nicht, weil ich um die Lebensdauer meines Flashs fürchte, sondern weil ich die Daten zentral nutze.

Ich fand nur das Gedankenexperiment mit der Kompression so schön und wollte zeigen, dass die sich auch sinnvoll einsetzen ließe.
Barf
Developer
Beiträge: 1475
Registriert: Dienstag 4. Februar 2003, 22:02

Beitrag von Barf »

Nirvana hat geschrieben:Ich habe der sectionsd API (sectionsdclient) 2 Funktionsaufrufe hinzugefügt:
writeSI2xml(dateiname)
readSIfromxml(dateiname)
(daüberhinaus noch eine Funktion mit der Neutrino den sectionsd anweisen kann seinen Speicher wieder freizugeben. freeMem) Aber das nur nebenbei.
Quellen? :wink:
Nirvana
Erleuchteter
Erleuchteter
Beiträge: 646
Registriert: Mittwoch 16. April 2003, 14:12

Beitrag von Nirvana »

Ja gibts auch. Wenns fertig ist. ;)
Vorher erstmal die neue Version zum Anschauen und Vorschläge machen.
http://s32.yousendit.com/d.aspx?id=1W9B ... HNI4I83UK9
Da kann man auch mal schön Studien treiben. Z.B. wieviel Platz der ARD-Radio-TP einnimmt (TS 445). Oder dass die HD-TPs mitgecached werden (0006 und 0010). Vielleicht sollten man doch mal einen TP-Filter implementieren. Also eine Liste mit unerwünschten EPG - Daten. Aber irgendwas sträubt sich in mir noch.
mb405
Tuxboxer
Tuxboxer
Beiträge: 2331
Registriert: Donnerstag 24. März 2005, 21:52

Beitrag von mb405 »

und wie wird das dann wieder eingelesen ??
also beim neustart die xml einlesen, und beim standby oder reboot oder shutdown speichern.
InTheCliringSt&sTheDB
Interessierter
Interessierter
Beiträge: 64
Registriert: Montag 15. Dezember 2003, 11:16

Beitrag von InTheCliringSt&sTheDB »

Hab gerade den aktuellen Ryker-Snap mit Nirvanas neuem sectionsd im Betrieb, da hätt ich noch nen Vorschlag. Es wurde ja in der Vergangenheit immer wieder an der Größe des dem EPG zur Verfügung stehenden Speichers geschraubt. Würde es nicht Sinn machen, dem sectionsd dynamisch die Speichergröße zuzuweisen? Also zu sagen, wenn Freemem kleiner als z.B. 4 MB, dann rück wieder was raus davon, bis diese Bedingung erfüllt ist. Hätte zwei Vorteile:
User mit Speichererweiterung hätten auch was davon
Mem-Leaks in welchem Modul auch immer würden nicht unweigerlich zum Crash führen, der User sieht, dass die Box nur noch für nen halben Tag EPG vorhält und kann die Box neu starten.
Günther
Developer
Beiträge: 587
Registriert: Freitag 9. September 2005, 21:48

Beitrag von Günther »

Erstmal ein Dankeschön für Eure Bemühungen den sectionsd wieder auf Vordermann zu bringen!!!

Allerdings habe ich auch schon beobachtet, das der EPG nur über wenige Tage zu sehen ist (z.B ARD) obwohl ich in der sections.conf den Wert auf 400 eingestellt habe. Werden diese Einstellungen überhaupt noch verwendet?

Ich glaube gelesen zu haben, das auch die Anzahl der Events begrenzt wurde. Könnte man die nicht auch in die sections.conf legen? Ich habe nämlich 64 MB :) und damit keine Speicherprobleme und ein großer EPG ist schon was schönes :') (Eventuell kann der sectionsd auch abfragen, ob es ein System mit 32MB oder 64MB ist und entsprechend die max. Eventanzahl -ich sag mal -verdreifachen?)
Nirvana
Erleuchteter
Erleuchteter
Beiträge: 646
Registriert: Mittwoch 16. April 2003, 14:12

Beitrag von Nirvana »

Günther
Developer
Beiträge: 587
Registriert: Freitag 9. September 2005, 21:48

Beitrag von Günther »

mmhh, also müßte ich die Event-Einstellung über sections.conf selber reinbauen (natürlich mit den jetzigen Werten als Default)? Wie gesagt, für 64 MB Nutzer stellt sich die ganze instabil Frage nur am Rande.
doktorknow
Interessierter
Interessierter
Beiträge: 99
Registriert: Dienstag 27. November 2001, 00:00

Beitrag von doktorknow »

kann mal bitte jemand eine sectionsd.conf anhängen? In den selbstkompilierten Images ist ja keine vorhanden und mich würde schon mal interessieren, was man da so voreinstellen kann.
Vielen Dank im Voraus!
doktorknow
Nirvana
Erleuchteter
Erleuchteter
Beiträge: 646
Registriert: Mittwoch 16. April 2003, 14:12

Beitrag von Nirvana »

mb405 hat geschrieben:und wie wird das dann wieder eingelesen ??
also beim neustart die xml einlesen, und beim standby oder reboot oder shutdown speichern.
Statusupdate:
Ich habe am WE ein paar Minuten weiter gemacht. Leider bin ich nicht ganz fertig geworden. Die Events werden in einem eigenen Thread niedriger Priorität wieder eingelesen. Niedrige Priorität, weil die Box sonst nach dem Booten erstmal 30 Sekunden unbedienbar langsam ist. Jetzt zieht er sich die Events parallel vom Sat und aus dem Netz. Der Pfad/Dateiname ist über neutrino.conf einstellbar. Wer will kann dafür ja mal ne GUI - Einstellung machen. Kann man sich schon dran gewöhnen gleich EPG auf allen Sendern zu haben ohne hinzuschalten. ;)

Was klappt noch nicht?
- Die Events mit "ä" "ö" "ü" "ß" sehen irgendwie komisch aus. In der xml-Datei sind sie noch korrekt. Da muss ich mal sehen, in welchen Format Neutrino die gerne hätte.
- Das Runterfahren dauert noch unnötig lange, weil ich da einen Timer von 3 Minuten gesetzt habe. Da muss noch eine Message kommen: Bin fertig.
- Die content classification wird noch nicht wieder korrekt eingelsen. Aus Science-Fiction wird immer Quizshow. Naja.

@doctorknow
AFAIK gibts keine sectionsd.conf.