epgsearch für vdr 2.3.x

  • epgsearchext.c: Da nichts verändert wird, sollte der READLOCK der richtige sein ???


    searchtimer_thread.c: da die Locks jeweils bis zum Ende des umschließenden Codeblocks gehalten werden, sind die Änderungen unnötig und störend.


    Hier erst mal ohne diese beiden Sachen, der VDR-Absturz:


    Code
    Jan 09 13:55:06 home-05.home.de vdr[11723]: [11747] EPGSearch: search timer update finished
    Jan 09 13:55:06 home-05.home.de kernel: EPGSearch: sear[11747]: segfault at 8 ip 00007fe1f9142531 sp 00007fe1f84a19a0 error 4 in libvdr-epgsearch.so.2.3.1[7fe1f90dc000+108000]


    der Backtrace dazu :



    und der epgsearch-Abschnitt der setup.conf:


    setup-epgsearch.conf


    Beim nochmaligen Testen hat sich gezeigt, das ein absturzfreier Start nur mit der Änderung in epgsearchext.c Zeile 1444 möglich ist.
    Die beiden LOCK's in epgsearchext.c Zeile 1444 und searchtimer_thread.c Zeile 824 scheinen hier direkt voneinander abhängig zu sein, denn wenn man beide gleich als WRITE oder als READ definiert, startet der VDR absturzfrei. Ein WRITE ist aber wohl logischer???


    Naja, vielleicht gibt es aber noch eine ganz andere Lösung.


    Grüße
    kamel5

    VDR 2.6.6: ASUS Prime X470-PRO, Ryzen 7 5700X, 64GB, 6TB HD, GT1030, Fedora 39 Kernel 6.8 X86_64, Devicebonding 2 x 1 auf 2, TT6400, DVBSky S952 V3

    Git-Repo: gitlab.com/kamel5

  • Hallo,


    mit dem letzten Patch startet bei mir jetzt vdr 2.3.1 + epgsearch ohne Abstürze.


    Verschiedene Tests, die ich gemacht habe, zeigten bisher keine weiteren Auffälligkeiten.


    Grüsse
    kamel5

    VDR 2.6.6: ASUS Prime X470-PRO, Ryzen 7 5700X, 64GB, 6TB HD, GT1030, Fedora 39 Kernel 6.8 X86_64, Devicebonding 2 x 1 auf 2, TT6400, DVBSky S952 V3

    Git-Repo: gitlab.com/kamel5

  • Der letzte Patch von mir ist leider immer noch nicht im git.
    Im Anhang ein darauf aufsetzender Patch mit Modifikationen zum richtigen Behandeln von SetModified und ein neuer Patch mit einem ersten Ansatz, SVDRPDefaultHost auszuwerten und Timer remote anzulegen.
    Damit das funktioniert, muss in vdr/menu.c die Definition von HandleRemoteModifications von "static bool" auf "bool" geändert werden, weil sonst der Linker die Funktion nicht findet!
    Dann sollte das meiste gehen. Im Setup ist das Timeredit-Menü vom VDR einzustellen, das epgsearch-eigene kennt noch keinen remote host.
    Mir ist noch nicht klar, wie der conflictcheck remote ablaufen soll und es ist noch nicht getestet, was passiert, wenn die Suche eine Timermodifikation findet (könnte aber auch gehen).

  • Im Anhang ein darauf aufsetzender Patch mit Modifikationen zum richtigen Behandeln von SetModified und ein neuer Patch mit einem ersten Ansatz, SVDRPDefaultHost auszuwerten und Timer remote anzulegen.


    Hi TomJoad,
    Klasse Arbeit ! Endlich kann epgsearch vernünftig in einer Client-Server Umgebung mit VDR-Peering benutzt werden. Fehler konnte ich keine beobachten, allerdings habe ich noch keinen Test der Timerkonfliktprüfung durchgeführt.
    :] :] :]

  • Hi TomJoad,


    Der letzte Patch: pgsearch-2.3.1-160315.diff verursacht ein Fehler:


    vdr: /home/carel/src/vdr/vdr-2.3.1/PLUGINS/lib/libvdr-epgsearch.so.2.3.1: undefined symbol: _Z25HandleRemoteModificationsP6cTimerSO_


    Was mache ich Falsch? vdr.pc ist aktualisiert. Passiert mit ungepatchten VDR


    Vielen Dank!


    Carel


    EDIT: Wer lesen kann ... loesung steht oben


    Entschuldigung. Carel

  • Hi,
    was ist am obigen noch nicht ok? Weil alle sagen, epgsearch tut nicht mit 2.3?


    MfG,
    Stefan

    Test-VDR1: HP rp5700 Fertigsystem, Core2Duo E6400, 2GB RAM, FF-SD C-2300, nvidia Slim-GT218 x1 | easyVDR 2.0 64Bit
    VDR3: in Rente

    VDR4: MSI G31M2 v2, Digitainer2-Geh., t6963c 6" gLCD, E5200, 2GB, 3TB WD Red, GT730, 2x TT S2-3200; easyVDR 3.5 64bit
    VDR5: Gigabyte
    GA-G31M-S2L, Intel E2140, Zotac GT730 passiv, Digitainer2-Geh., t6963c 6 " gLCD, 2 TB WD Red, 2x TT S2-3200 (an 1 Kabel) easyVDR 3.5 64bit
    VDR6:
    Intel E5200, GT630 passiv, F1 750 GB, t6963c gLCD, 2x TT S2-3200 | easyVDR 3.5 64bit
    VDR-User #1068
    www.easy-vdr.de

  • HI @TomJoad, ich versuche grade verzweifelt epgsearch mit vdr 2.3.1 gebaut zu bekommen. Leider scheitere ich wohl aus unzureichenden skills :(


    Ich verstehe nicht ganz was ich mit deinen ganzen patches .diff machen soll. Ich habe mir das git repo geclont und habe die .diff Dateien 160110, 160128, 160315 in den ordner Patches gelegt. Zudem habe ich bei /vdr/menu.c die von dir beschriebene Änderung vorgenommen. Leider klappt das dennoch nicht da ich sicher etwas übersehe.


    Kannst du mir das evtl etwas genauer erklären wie ich epgsearch gebaut bekomme?


    Grüße

  • Test-VDR1: HP rp5700 Fertigsystem, Core2Duo E6400, 2GB RAM, FF-SD C-2300, nvidia Slim-GT218 x1 | easyVDR 2.0 64Bit
    VDR3: in Rente

    VDR4: MSI G31M2 v2, Digitainer2-Geh., t6963c 6" gLCD, E5200, 2GB, 3TB WD Red, GT730, 2x TT S2-3200; easyVDR 3.5 64bit
    VDR5: Gigabyte
    GA-G31M-S2L, Intel E2140, Zotac GT730 passiv, Digitainer2-Geh., t6963c 6 " gLCD, 2 TB WD Red, 2x TT S2-3200 (an 1 Kabel) easyVDR 3.5 64bit
    VDR6:
    Intel E5200, GT630 passiv, F1 750 GB, t6963c gLCD, 2x TT S2-3200 | easyVDR 3.5 64bit
    VDR-User #1068
    www.easy-vdr.de

  • vdr 2.3.1 gebaut zu bekomme

    Und vorallem warum gegen VDR Developer 2.3.1, wo doch aktuell 2.3.2 raus kam?


    Ach ja, hier ein Diff mit allen Änderungen, aber patchen musst'e selbst: Produktive Problem- und Pluginlösungen für VDR 2.3.2 und höher


    Regards
    fnu

    HowTo: APT pinning

    4 Mal editiert, zuletzt von fnu ()

  • Da ich so viel zitiert werde:
    Ich benutze produktiv einen noch nicht veröffentlichten Stand.
    Es gibt ein paar Vereinfachungen, weil Klaus das Locking nochmal leicht verändert hat.
    Es sind aber noch nicht alle Anpassungen gemacht, um die richtigie Lockreihenfolge einzuhalten, so dass es theoretisch zu Deadlocks kommen könnte.
    Vor allem fehlt noch das Verwalten von Timern auf remote Rechnern (möglichst mit Rechnernamen im Suchfenster). Benutzt man das Timereditmenü von Klaus, kann man aber die Timer anpassen. Auf jeden Fall wird der Sevicehost für Aufnahmen hergenommen.
    Und vor allem fehlt noch die Konfliktüberprüfung auf Remoterechnern, da ja die lokale keinen Sinn macht, wenn der Timer remote angelegt wird (die habe ich bei mir erstmal nur abgeklemmt).
    Ich nutze auch längst nicht alle Möglichkeiten, sondern im wesentlichen die epgsearch-Programmansicht und automatisch angelegte Timer.
    Ich hoffe, dass ich in den nächsten Wochen dazu komme, was zu veröffentlichen. Da mini73 meine Patches nicht übernimmt, muss ich wohl ein eigenes Projekt anlegen.

    vdr-2.6.7

    softhddevice, dbus2vdr, dvd, epgsearch, femon, graphtftng, web, menuorg,
    osdteletext, radio, recsearch, satip, tvguide, vnsiserver

    ubuntu focal, yavdr-ansible, linux-5.15 ,AsRock J4105, CIne CT-V7 DVB-C

  • Hi,


    also ich habe das nun mal, wie von fnu verlinkt, bei mir unter vdr2.3.2 und Debian Stretch installiert. Compilieren usw. hat auch alles geklappt aber es werden keine Timer angelegt. Muss ich da jetzt noch etwas neu konfigurieren ? Derzeit habe ich nur den Server laufen, Clienten interessieren mich diesbezüglich erstmal nicht.


    Gruss


    Hollywood

    Server: VDR 2.4.1 mit Ubuntu 19.04 x64 mit vaapidevice, Kernel 5.2.9, ASRock J4105M, 2 x 4096 MB DDR4-RAM, 2 x DD Cine S2, Lirc-Serial mit One4All URC 7960
    Client: VDR 2.4.1 mit Ubuntu 19.04 x64 mit softhddevice-OpenGL oder mit KODI+vnsiserver, Kernel 5.2.5, ASRock H81M, Intel i3-4150, NVIDIA GPU GeForce GT 610 (GF119), 2 x 2048 MB DDR2-RAM, 1 x Technotrend S2-1600, SilverStone Milo ML03, ASRock Smart Remote CIR mit Logitech Harmony 650, Beamer 120'' FullHD-3D

  • Hi carel,


    danke für die Info ! Mich würde aber auch mal brennend interessieren, ob das so gewollt ist. Es gibt doch mehrheitlich Systeme bei denen nur ein Server installiert ist :( . Naja ich kompiliere mal wieder vdr2.2.0, der tat´s das letzte Jahr ja auch. :]


    Gruss


    Hollywood

    Server: VDR 2.4.1 mit Ubuntu 19.04 x64 mit vaapidevice, Kernel 5.2.9, ASRock J4105M, 2 x 4096 MB DDR4-RAM, 2 x DD Cine S2, Lirc-Serial mit One4All URC 7960
    Client: VDR 2.4.1 mit Ubuntu 19.04 x64 mit softhddevice-OpenGL oder mit KODI+vnsiserver, Kernel 5.2.5, ASRock H81M, Intel i3-4150, NVIDIA GPU GeForce GT 610 (GF119), 2 x 2048 MB DDR2-RAM, 1 x Technotrend S2-1600, SilverStone Milo ML03, ASRock Smart Remote CIR mit Logitech Harmony 650, Beamer 120'' FullHD-3D

  • Das Nichtanlegen von Timern kann ich nicht nachvollziehen. Allerdings starte ich das Plugin auch mit

    Code
    -f /usr/bin/svdrpsend


    in der conf.d/50-epgsearch.conf wie bei yavdr üblich. Wenn im vdr-Setup kein SVDRPDefaultHost angelegt ist, sollten alle Timer lokal erzeugt werden.

    vdr-2.6.7

    softhddevice, dbus2vdr, dvd, epgsearch, femon, graphtftng, web, menuorg,
    osdteletext, radio, recsearch, satip, tvguide, vnsiserver

    ubuntu focal, yavdr-ansible, linux-5.15 ,AsRock J4105, CIne CT-V7 DVB-C

  • Hi TomJoad


    hab mal "SVDRPDefaultHost = " eingestellt und dass hat es gelost.


    Darf ich noch mal fragen wie ich die conflict-check abstelle?
    Ich sehe da so schnell keine Makfile Option oder etwas ähnliches.


    Vielen dank,


    Carel

  • Ich glaube die Konfliktprüfung kann man im OSD abschalten (Plugin-Einstellungen)

  • Diese Meldung kommt bei epgsearch wenn man die grüne Taste mehrfach drückt:

    RPI3, DVB-Sky S960, VDR 2.4.4, Raspbian Jessie, Onkyo AV Receiver, Panasonic Plasma.

    Einmal editiert, zuletzt von fnu ()

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!