Beiträge von dbluelle

    You will add this to plugins too?

    IMHO it will take a lot of work to make plugins skinnable


    If the idea is reduce more the enigma "bin", way don't you do this:

    Code
    // lldir = CreateSkinnedLabel("lldir");


    For better reading on c++ code you can put the lable text on code but not compile it, you can add on skin the text for that "string", like:

    Code
    <eLabel name="lldir" text="LocalDir:" position="20:90" size="120:30" />

    I've done this whereever it was possible, but in some dialogs a pointer to the Label is needed because it's used in some other method of the dialog.


    dbluelle

    undefined symbol:
    _ZNK11XMLTREENODE17GETATTRIBUTEValueEPc

    Da wird vermutlich die entsprechende Funktion sonst nirgends im Image verwendet.
    Da hilft nur, das Plugin vor dem "shrinken" an die entsprechende Stelle zu kopieren.


    Wenn du die "alternative" Methode zum Imagebau verwendest, reicht ein entsprechender Kopierbefehl in root-enigma-squashfs-local.sh.
    (Bei der "klassischen" Methode musst du das IMHO vor dem make rebuild-flash machen, da bin ich mir aber nicht so ganz sicher...)

    Hallo,


    Ich habe einen Patch zusammengestellt, der das Enigma-Binary um 50 KB verkleinert.
    (Hauptsächlich habe ich so gut wie alle Dialoge "skinbar" gemacht und einige immer wieder auftretende Codefragmente zusammengefasst.)


    Da der Patch sehr groß ist und viele Dateien "anpackt", will ich ihn nicht einfach so einchecken, sondern erstmal zum Testen zur Verfügung stellen.


    Bitte testet, ob alle Dialoge noch funktionieren (vor allem die "exotischeren" Einstellungsdialoge).
    Ausserdem konnte ich nur auf der 7000 testen, deshalb wäre auch Feedback zu den anderen Enigma1-Boxen ganz gut.
    (Bei mir läuft das ganze schon ein paar Wochen problemlos :smiling_face: )


    Hier der Download-Link: http://www.blau-weissoedingen.…/diff_enigma_20091005.zip


    gepatcht wird mit

    Code
    patch -p0 <enigma.diff

    im Startverzeichnis des CDK


    Edit: neuer Download-Link mit ein paar Korrekturen


    dbluelle

    Vermutlich liegt das an Decoder::Flush() in /lib/dvb/decoder.cpp.
    Die habe ich letztes Jahr um einen Aufrufparameter erweitert, womit das Plugin wohl nicht klarkommt.:kissing_face:


    Ich werde mir das mal anschauen.


    Edit:
    Ich hab's mir angeschaut :winking_face: und den Fehler im CVS behoben.
    Gibt's eigentlich nirgends den Sourcecode des Plugins?


    dbluelle

    naja sagen wir mal so. Enigma war damals schon konzept bedingt total am Ende. Allein dafür, dass wenn eine Aufnahme im Hintergund startet waren schon Hacks an x stellen nötig. Damit der Vordergrund "Service" nicht beendet wurde.. usw.. das hat man doch auch sehr gut an dem "komischen" permanentem Timeshift Patch gesehen. Das Thema zog sich dann über Wochen hin. Sprich bis enigma wieder brauchbar lief danach. Weil an einer Stelle was geändert wurde... und durch Nebeneffekte dann X andere Stellen kaputt gingen.

    Ok, das ist vielleicht etwas blöd gelaufen. Die Patches hätte ich evtl. besser erst als eigenen Diff zur Verfügung stellen sollen :kissing_face:
    Andererseits denke ich, das wesentlich weniger Feedback kommt, wenn die Imagebauer erst einen Diff einbauen müssen, um etwas zu testen
    (Zumal dann nicht alle überhaupt mitkriegen, dass es einen Diff gibt).


    Z.b. der Teletext subtitles patch.. das ist auch naja.. ich weiss nicht.. eher unschön... also dass dafür nun irgendwie der tuxtxt benutzt wird.

    Wie sollte das denn anders funktionieren?
    Oder meinst du, man hätte mehr oder weniger die komplette libtuxtxt in Enigma-Klassen umwandeln sollen?

    Oder eben dinge die am EPG gedreht werden. Der EPG läuft multithreaded.. von daher sollte man schon aufpassen, wie man was ändert.

    Da weiss ich jetzt nicht, auf was du anspielst. Die einzige grössere Änderung bzgl. EPG ist die EPG-Suche, und da habe ich eigentlich drauf geachtet, das entsprechende Locks gesetzt werden.

    Die meisten Änderungen sind halt irgendwie reingehackt.... und sehen mehr nach Quick und Dirty aus. Teilweise eben wie oben schon beschrieben dadurch begründet, dass e1 konzept bedingt am ende ist. Und je mehr da nun reingehackt wird, desto schlimmer wirds halt.

    Wie weiter oben schon geschrieben, versuche ich immer, die Neuerungen "passend" zum bisherigen Code einzubauen...
    Ich denke das meiste ist dadurch bedingt, dass man bei den E1-Boxen ja immer sehr auf den Speicherverbrauch und die Flashgrösse achten muss.
    Da sind dann Kompromisse zwischen "Eleganz" und Effizienz nötig.
    Das ist auch das, was mich immer noch an Enigma1 reizt: Was ist mit der begrenzten Hardware alles noch möglich :smiling_face: .
    (IMHO ist Enigma übrigens im Vergleich zu Neutrino wesentlich übersichtlicher :grinning_squinting_face: )


    dbluelle

    Also da würde ich doch gerne mal wissen, was denn so "grausam" am derzeitigen Stand von Enigma ist :question_mark:


    (Ich bin ja so ziemlich der einzige der noch was Enigma-spezifisches in's CVS eincheckt :frowning_face: )
    Ich versuche bei allem, was ich einchecke, immer möglichst wenig Code zu änderen und mich an den jeweiligen Stil des Codes zu halten.


    Seitdem ich einen CVS-Account habe, hat sich erst einmal jemand (von einem anderen sehr beliebten anderen Image Team :winking_face: )
    über eingecheckte Sachen beschwert (hauptsächlich wegen Swapmanager und der EPG-Suche).
    (Da kann man beim Swapmanager sicher diskutieren, ob der rein soll, aber der ist auch sehr einfach entfernbar).
    Leider kam auf meine Bitte, man möge dann doch selber "Hand anlegen" und etwas zum CVS beitragen, keine Antwort mehr ...


    Ich hatte allerdings schon erwartet, das die DMM-Jungs wenigstens ab und zu mal in den Sourcecode schauen und sich melden, falls ihnen irgendwas nicht passt!


    Zu der Codequalität: Sicher ist da auch einiges verbesserungswürdig, aber als so "grausam" sehe ich das nicht
    (jedenfalls nicht grausamer als der "alte" Enigma-Code :winking_face: ).
    Vielleicht kann ja mal jemand ein paar Beispiele bringen.
    Ich stehe jedenfalls auf dem Standpunkt, lieber etwas einchecken und dann verbessern als überhaupt keine Änderungen mehr zu machen.


    dbluelle

    The plain-text subtitles are not (yet) supported, sorry :frowning_face:
    (I have not found any documentation about how these subtitles should be decoded and displayed )

    Good News, now the plaintext subtitles are working, too :smiling_face_with_sunglasses:

    I only hope that existing dvb-subtitles routines for european channels which work excellent since you fix it 2 years ago will still working flawless :winking_face: :smiling_face_with_sunglasses:

    Well, I've tested it with a few channels without problems, so chances are it will work :winking_face:


    dbluelle

    I've commited a patch to the CVS which fixes the DVB-Subtitles. :smiling_face:


    The plain-text subtitles are not (yet) supported, sorry :frowning_face:
    (I have not found any documentation about how these subtitles should be decoded and displayed )


    dbluelle

    Ist eingebaut.
    Da hätte ich auch vorher mal dran denken können, bei euch nachzuschauen :kissing_face:


    Eigentlich wollte ich nur die Möglichkeit einbauen, den EPG-Cache auf die User-Bouquets zu begrenzen
    (Der Freesat-EPG braucht 'ne Menge Speicher, wenn er komplett geladen wird), aber dann kam immer mehr dazu... :smiling_face:


    dbluelle

    Hallo,


    Ich habe die Einstellungen für den EPG in einen eigenen Dialog ausgelagert.
    Damit kann man auch über Enigma festlegen, wohin der EPG-Cache gespeichert wird (ging bisher nur über Expert-WebIF).
    Ausserdem kann man einstellen, dass nur die EPG-Einträge der Sender gepuffert werden, die in den Bouquets definiert sind.
    Dadurch geht bei mir der Speicherverbrauch ordentlich runter (von >60% auf ca.45% inkl. Freesat-EPG) :thumbs_up: .


    Das ganze findet sich unter Einstellungen->Experten->EPG Einstellungen.


    dbluelle

    I just checked in a Fix for this.


    (On my system this only resulted in every button image being copied twice to the same directory,
    so I think it depends on the version of the "install"-Command that is used in your Linux-Distribution.)


    By the way, this error must have been in the CVS for about 6 years :exclamation_mark:


    dbluelle

    Currently an unmodified Image is too big for the flash, so you have to remove a few languages or plugins :loudly_crying_face:


    make flash-enigma-squashfs will abort with an error message and the squashfs-part of the image will be renamed to root-squashfs.img.too-big.
    This part has to be <5111808 Bytes.


    (AFAIK an Image build the old fashioned way has the same problem ;))


    dbluelle