Posts by MarkusE

    > MarkusE Sag mir bitte bescheid, wenn ich die Funktion deprecaten soll.


    Das ist jetzt vielleicht doch außerhalb meiner Gehaltsklasse :) .


    Ich bedanke mich für Deine Rückmeldungen in diesem Thread. Meine Frage, ob MainThreadHook vor der Verfügbarkeit von Locks notwendig war, um auf globale Tabellen (z.B. Timers) zuzugreifen, wurde zwar nicht direkt beantwortet. Ich entnehme den Antworten aber, dass MainThreadHook zumindest jetzt nicht mehr notwendig ist.

    • Ich habe es aus live inzwischen ausgebaut, ein entsprechendes Update ist im git. Anmerkung: In live gab es Probleme, weil MainThreadHook während der Ausgabe einer OSD Meldung nicht aufgerufen wird.
    • In tvscraper wird es nicht verwendet
    • In dynamite wird es verwendet, um vor dem ersten Aufruf von MainThreadHook OSD Meldungen zu verhindern. Kann man vermutlich auch anders lösen.

    Also, falls Du entscheidest, es auf deprecated zu setzen, baue ich es auch aus dynamite aus.


    Ob die Nachteile / Probleme mit MainThreadHook so gravierend sind, dass wir allen Plugins auf's Auge drücken wollen, es auszubauen? Kann ich nicht beurteilen, Klaus, das musst Du entscheiden.


    ~ Markus

    live verwendet es auch. Es hat aber Nachteile, und wird in bestimmten Situationen nicht aufgerufen. Daher würde ich lieber einen eigenen Thread verwenden.

    Aber: Die live Entwickler haben Kommentare wie

    Quote

    // may only be called from Plugin::MainThreadHook

    hinzugefügt. Leider wird das nicht begründet. Daher würde ich gerne wissen, ob ich diesen Kommentar ignorieren kann (weil durch Locking inzwischen outdated). Oder ob ich mit den Nachteilen von MainThreadHook leben muss, weil die Verwendung eines eigenen Threads unerwünschte Nebenwirkungen haben kann.

    In PLUGINS.html steht:

    Ich vermute mal, vor der Verfügbarkeit von Locks musste der MainThreadHook von Plugins verwendet werden, die in einem eigenen Thread laufen und z.B. Zugriff auf die globale Timers Tabelle benötigen.


    Inzwischen sind ja Locks verfügbar, und da stellt sich mir die Frage, was ein Plugin im "context of the main program thread" machen muss.

    Anders gefragt: Könnte ein Plugin alles, was es in MainThreadHook macht, auch einfach in einem eigenen Thread machen? Oder gibt es Situationen, in denen ein Plugin auf den Kontext des "main program thread" angewiesen ist?


    ~Markus

    Im git ist ein Update. Bitte testen.


    Ich denke, es liegt am Encoden von speziellen Zeichen. tntnet 3* steigt da schneller aus als tntnet 2*.

    Und manche Anwender haben halt noch Aufzeichnungen, in denen "kritische" Zeichen vorkommen. Andere nicht. Daher tritt der Fehler nicht bei allen auf.

    Was könnte da falsch laufen?

    Ich habe jetzt mal ohne tvscraper mit chrome getestet, funktioniert perfekt.

    Falls das direkt nach dem Start von VDR passiert: einfach mal 1 Minute (mindestens) warten, und Browser refresh drücken.

    Wenn das nicht hilft, brauche ich mehr Infos:

    • Syslog
    • Seiten-Quelltext (im Browser)
    • Ruf doch mal den Debugger im Browser auf (shift+Strg+I), und prüfe, ob Fehler angezeigt werden.

    ~ Markus


    P.S.: Könnte ein Fehler beim Escapen von Sonderzeichen im Namen/Titel der Aufnahme sein

    MarkusE , hier der Fix für die im Web-Streaming falsch angezeigten und referenzierten Kanaldaten:

    Ich habe auch gleich ergänzt, dass man das Programm ebenfalls per ChannelID und das Web-Streaming auch ohne Kanalangabe aufrufen kann. Bezüglich der Kanäle sollten sich die URL-Parameter von Programm und Web-Streaming jetzt gleich verhalten.

    Ist im git. Bitte testen.

    Ich wollte hier nicht diskutieren, ob der Suchstring enkodiert werden muss oder nicht. Er muss enkodiert werden, das ist klar.

    Die Frage ist, wie die korrekte Enkodierung aussehen muss. Und hier liegt https://docs.microfocus.com/OM…/ExtApps/URL_encoding.htm wohl falsch. Auch für Zeichen innerhalb von " muss bei Urls die % Enkodierung verwendet werden.


    Code
    searchresults.html?searchplain="Mein$20Schatz"

    findet nichts.

    Code
    searchresults.html?searchplain="Mein%20Schatz"

    findet

    Quote

    ARD-Radio-Tatort | "Mein Schatz" von Madeleine Giese

    In der Regie von Matthias Kapohl

    auf hr2.

    Hi Stefan,


    Du hast ja mit dem letzten Patch einen URI Encoder implementiert. Ich habe jetzt https://en.wikipedia.org/wiki/Percent-encoding gefunden, da steht:

    Quote

    Current standard

    Main article: Internationalized Resource Identifier

    The generic URI syntax recommends that new URI schemes that provide for the representation of character data in a URI should, in effect, represent characters from the unreserved set without translation and should convert all other characters to bytes according to UTF-8, and then percent-encode those values. This suggestion was introduced in January 2005 with the publication of RFC 3986. URI schemes introduced before this date are not affected.


    Sollten wir das entsprechen anpassen? Oder, anders gefragt: Warum hast Du das so implementiert?


    ~ Markus