Skindesigner and openGL OSD

  • If you are using a skindesigner and a output plugin with openGL OSD (softhddevice or softhdcuvid), you will get a distorted menu for any of the actions:

    detach/attach;

    suspend/resume;

    external plugin;

    mpv plugin;

    mplayer plugin.

    At first I thought it was due to an incorrect skin, but now I assume that it is due to corruption of the image cache.

    The skindesigner creates a cache once upon skin initialization. But when the output plugin is paused, the openGL OSD discards the image cache.

    During the operation of external plugins, the openGL OSD does not work, and starts again when returning to the vdr.

    But the skindesigner does not know about it, and uses the damaged cache of images. It is easy to recover by giving the command "svdrpsend PLUG skindesigner DLIC".

    I tested VDPAU and CUVID, but I think the same with VA-API (softhdvaapi).

    Does anyone have such a problem?


    Who thinks what, the output plugin should manage by the skindesigner, or the skindesigner should update the cache itself, for example, when the cOsdProvider is destroyed.

  • Dear lnj,

    I'm using softhdcuvid and use detach/attach a lot. Have the same problems.

  • Hi lnj,


    I observe exactly the same issues and the workaround to clear the image cache also works here.


    I would choose the 2nd option, make skindesigner which ‘owns’ the cache responsible for the update.

    But this plugin is not maintained anymore :(


    So either way ...


    Carel

  • Does anyone have such a problem?

    In yaVDR there is a mechanism in the script that controls the vdr-frontend which send the neccesary SVDRP-Commands. IIRC there are siminar approaches in EasyVDR and Gen2VDR (I am not sure if MLD does handle this, too).

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Hi,


    I am not so familar with the skindesigner code right now and I am not shure if it is primary a skindesigner problem.

    But I adding a little quick and dirty patch to hopefully solve this problem.

    I know that is not the best solution and then also not the best cache anymore, but if it helps.

    Maybe I can do some research in the future to find a better solution (Any help is welcome).

    At the moment the patch refreshes the cache every time a Skindesigner menu is opened.

    The patch can be activated in the setup menu if nessesary.


    Because I don't have sutch hardware here, can somebody check if that works as expected.

    With my hardware, I don't see any differences between the old and the new behavior.


    kamel5

    Files

    VDR 2.4.4: ASUS Prime X470-PRO, Ryzen 7 2700, 32GB, 6TB HD, GT630, Fedora 32 Kernel 5.8 X86_64, Devicebonding 2 x 1 auf 2, TT6400, DVBSky S952 V3