skindesigner - bad locking order for vdr-2.3.x

  • Tokens {currentrecording}, {nextrecording}, {isRecording} and {devices[recording]} in displaychannel will not work anymore.

    This is not true.

    Signatur

    AsRock j3455-m | 8 GB Ram | 2x DVBSky S952 V3 am Inverto Unicable LNB | SanDisk SDSSDP064G + Seagate ST4000LM024 | yaUsbIRv3 | Ubuntu Budgie | VDR 2.4.0 | vaapidevice

    Raspberry Pi3 | DIY IR | Raspbian | VDR 2.4.0 | Streamdev-Client | rpihddevice
    Raspberry Pi2 | DIY IR | Raspbian | VDR 2.4.0 | Streamdev-Client | rpihddevice
    Samsung UE40D5700 | Yamaha RX-V473 | Kef HTS2001 + PSW2000

  • Ich hatte mit SkinFlatPlus auch den einen oder anderen Deadlock. Das Problem war da das gleiche, dass die aktiven Timer irgendwo in SetChannel abgerufen wurden. Ich habe das Timer-Holen dann einfach in einem seperaten Thread ausgelagert.

    Für Skindesigner würde das dann so ausssehen (Achtung, das ist ein völlig ungetesteter Patch, der nur zeigt, wie ich das ungefair bei SkinFlatPlus gemacht habe)


    locking-fix.diff

  • Hey louis,

    ich würde mich auch sehr freuen wenn du wieder am vdr weiter arbeiten würdest.

    Habe Deine Arbeit immer sehr wertgeschätzt.

    Gruß

    Geht mir ähnlich, hast auch immer zügig und freundlich auf sämtliche Anregungen und Probleme hinsichtlich deiner Plugins reagiert. Ich fand deinen Support und den Umgang im Forum immer sehr vorbildlich.

    Vielleicht findest du den Weg ja mal wieder zurück.

    Gruss

    Stefan

    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

  • Ich glaube, es gibt viel viel mehr Skindesigner-Nutzer, als hier mit "positiven Beiträgen" auffallen.

    Mich würds auch sehr freuen, wenn du weitermachen würdest; respektiere aber deine Entscheidung.

    MyVDR: yaVDR-Ansible (Ubuntu 20) - softhddevice-openglosd (ffmpeg 2.8) - epgd/epg2vdr - skindesigner estuary4vdr (adaptiert) - 1920x1080@50 Hz | kodi 21 - xstream
    Aerocube M40 | 300W | ASRock H61M-GE | Intel G530 | Asus ENGT520 | 2 x TT-budget S2-3200 | ASRock Smart Remote (CIR) | 4 GB RAM | 120 GB SSD | 3 TB HDD

  • :tup

    Gruß
    Frodo

    Meine VDR Hardware

    YaVDR 0.6: Intel DQ67SW, Digital Devices Octopus Duo CI, 2x DD DuoFlex S2 V4, NVIDIA GT 610 (GF119), IMON VFD

    YaVDR 0.6: Asus Z170I PRO GAMING, NVIDIA GT 1030 (GP108-A), SilverStone ML02B-MXR, IMON LCD

    YaVDR 0.6: Intel DH67CF, TT S2-6400, NVIDIA GTX 1050 (GP107-A)

    YaVDR 0.5: Intel DH67BL, TT S2-6400, TT S2-3200, NVIDIA 210 (GT218)

    YaVDR 0.6: Zotac D2550ITX, NVIDIA GT 610 (GF119) onboard, IMON VFD

  • Kann mich da nur anschließen. Ohne Skindesigner ist vdr optisch so ziemlich 90er-mässig.

    Erst mit skindesigner wird daraus was anständiges.

    Ich würde es auch begrüßen wenn das Plugin wenigstens funktionstüchtig gehalten wird.

    Louis seine Hilfe hier war auch immer sehr anständig!

  • Ohne Skindesigner ist vdr optisch so ziemlich 90er-mässig.

    Erst mit skindesigner wird daraus was anständiges.

    Kommt halt immer darauf an, wozu man es benutzt ;-).

    Als Video-Spiel ist es echt etwas eintönig, da hast du recht. Ich nehme es daher eigentlich nur zum Aufnehmen und Wiedergeben von TV-Sendungen her ;-).

    Klaus

  • @Klaus

    Das ist das Problem vom VDR und weshalb das Programm auch sein Leben als Backend für Kodi fristet.. weil der Hauptentwickler ja mit seiner 90er-Jahre-Optik zufrieden ist und auch mit Einschränkungen wie kein GIT und bloß keine großen Veränderungen.. aber das steht ja im Forum schon zur genüge..

  • Für die Optik gibt es ja die Plugin-Schnittstelle - wenn der Autor eines Plugins dieses nicht mehr pflegen will, dann ist das seine Sache und nicht meine Schuld. Was "kein GIT" mit der Plugin-Entwicklung zu tun hat erschließt sich mir nicht.

    Klaus

  • was prinzipiell mit der GUI möglich ist sieht man ja im demo plugin / da ginge schon einiges ....

    Signatur

    Server: ASRock Q1900M + 4GB RAM + cineS2 6.5 + Debian 8 + vdr 2.x , epgsearch, live, streamdev
    Client: Macbook Pro Retina 2015 + 16GB ram 512GB ssd  OSX 10.11.1)
    File-Server/client: GA-Z77-DS3H (Ozmosis 1669 ) + I3 2105 + 16GB RAM NVGF 650GTX 1GB, 250 GB-HD (sys)+ 44TB Storage OSX 10.11.6 VLC 3.x beta , Remote Buddy, PS3-FB
    2x Cubieboard2: 16GB microSD, debian mit VDR 2.0.6 + epgsearch, live(osdpatch), streamdev(0.6), soft-hd-device
    Ausgabe:
    Acer H7530D, T.amp Proline1300, 2x K&H sms 54T + horn sub - Eigenbau

  • Geht mir ähnlich, hast auch immer zügig und freundlich auf sämtliche Anregungen und Probleme hinsichtlich deiner Plugins reagiert. Ich fand deinen Support und den Umgang im Forum immer sehr vorbildlich.

    Vielleicht findest du den Weg ja mal wieder zurück.

    Gruss

    Stefan

    Volle Zustimmung :thumbup:

    YaVDR ansible focal UHD :naenae

  • Ich hatte mit SkinFlatPlus auch den einen oder anderen Deadlock. Das Problem war da das gleiche, dass die aktiven Timer irgendwo in SetChannel abgerufen wurden. Ich habe das Timer-Holen dann einfach in einem seperaten Thread ausgelagert.

    Für Skindesigner würde das dann so ausssehen (Achtung, das ist ein völlig ungetesteter Patch, der nur zeigt, wie ich das ungefair bei SkinFlatPlus gemacht habe)


    locking-fix.diff


    Da die Holzhammer Variante bei mir gut läuft, habe ich deine Lösung jetzt nicht mehr getestet. Trotzdem danke für den konstruktiven Beitrag!

    Signatur

    AsRock j3455-m | 8 GB Ram | 2x DVBSky S952 V3 am Inverto Unicable LNB | SanDisk SDSSDP064G + Seagate ST4000LM024 | yaUsbIRv3 | Ubuntu Budgie | VDR 2.4.0 | vaapidevice

    Raspberry Pi3 | DIY IR | Raspbian | VDR 2.4.0 | Streamdev-Client | rpihddevice
    Raspberry Pi2 | DIY IR | Raspbian | VDR 2.4.0 | Streamdev-Client | rpihddevice
    Samsung UE40D5700 | Yamaha RX-V473 | Kef HTS2001 + PSW2000

  • Here we go again, but this time epg2vdr and his timer service is involved, too :(

    I doesn't see this kind of errors on my main vdr, only on the raspberries ...

    And some minutes later I got this:

    Sad but true, skindesigner isn't usable with my raspberry anymore.

    Signatur

    AsRock j3455-m | 8 GB Ram | 2x DVBSky S952 V3 am Inverto Unicable LNB | SanDisk SDSSDP064G + Seagate ST4000LM024 | yaUsbIRv3 | Ubuntu Budgie | VDR 2.4.0 | vaapidevice

    Raspberry Pi3 | DIY IR | Raspbian | VDR 2.4.0 | Streamdev-Client | rpihddevice
    Raspberry Pi2 | DIY IR | Raspbian | VDR 2.4.0 | Streamdev-Client | rpihddevice
    Samsung UE40D5700 | Yamaha RX-V473 | Kef HTS2001 + PSW2000

  • Exakt denselben Fehler hab ich hier auch (noch mit vdr-2.3.8)

    Der Backtrace ist ein bisschen detaillierter:

    Wenn ich nun analog zum Patch von nanohvc diesen patch anwende:

    bekomme ich diesen Compile error:

    Code
    displayreplay.c: In lambda function:
    displayreplay.c:98:30: error: 'globalTimers' is not captured
             std::async([this](){ globalTimers.LoadTimers(); }).get();
                                  ^~~~~~~~~~~~
    displayreplay.c:98:25: note: the lambda has no capture-default
             std::async([this](){ globalTimers.LoadTimers(); }).get();
                             ^
    displayreplay.c:96:23: note: 'cGlobalTimers globalTimers' declared here

    Hat dazu jemand nen Tipp ?

    Gen2VDR - HW: Asrock Q1900 Geforce 730 / Cine-S2

  • Damit geht es leider ach nicht:

    Code
    displayreplay.c: In member function ‘void cSDDisplayReplay::SetTimeShiftValues(const cRecording*)’:
    displayreplay.c:97:7: error: ‘async’ is not a member of ‘std’
      std::async([&globalTimers](){ globalTimers.LoadTimers(); }).get();
           ^~~~~
    displayreplay.c:97:7: note: suggested alternative: ‘asinh’
      std::async([&globalTimers](){ globalTimers.LoadTimers(); }).get();
           ^~~~~
           asinh
    Makefile:141: recept voor doel 'displayreplay.o' is mislukt
  • Welche gcc-Version verwendest du?

    Meine VDRs

    VDR 1: Point of View Ion-330-1, 2x Sundtek MediaTV Pro (DVB-C), Atric IR-Einschalter Rev.5, Ubuntu 18.04 (yavdr-ansible)
    VDR 2: Acer Revo 3610, Pinnacle PCTV SAT 452e, Medion X10, yaVDR 0.6
    VDR 3: Intel DH67BL, Celeron 540, 4 GB Ram, POV Geforce GT 1030, Ubuntu 18.04 (yavdr-ansible), VDR 2.4.1, CIR-Empfänger
    Client 1: Raspberry Pi 2, Arch Linux ARM, VDR 2.3.8
    vdr-epg-daemon auf Cubietruck mit 32 GB SSD, Arch Linux ARM

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!