softhdcuvid mit CUVID&LIBPLACEBO: OSD überdeckt Bild

  • Hallo,


    wenn ich softhdcuvid (aktulle github Version) mit LIBPLACEBO baue, dann wird das Video Bild vom OSD immer ganz überdeckt. Sogar wenn nur die Lautstärke verändert wird, wird das ganze Bild schwarz, solange die Lautstärke-Anzeige eingeblendet ist. Das passiert sogar mit der "Klassischer VDR" Oberfläche ( und skindesigner Plugin nicht geladen).


    libplacebo ist eine Version von experimental Debian lokal gebaut mit vulkan und shaderc.


    Wenn ich LIBPLACEBO ausschalte, dann passiert das nicht.


    Hat da jemand eine Idee woran es liegt?

    Gruss, Xcoder

    VDR: Zotac ZBOX EN860, 16GB RAM, 2 TB HDD, Debian Stretch, vdr-2.4.1, softhddevice, satip

  • Da habe ich schon lange nicht mehr rumgeschraubt

    Ist auf 24 bit. Brauche ich da 32bit? Treiber ist auf 440.82.

    VDR: Zotac ZBOX EN860, 16GB RAM, 2 TB HDD, Debian Stretch, vdr-2.4.1, softhddevice, satip

  • Ist hier angehängt.


    Hatte noch mit den Optionen # Option "RenderAccel" "true" # Option "AllowGLXWithComposite" "true" # Option "AddARGBGLXVisuals" "True" experimentiert. Hat aber auch nicht funktioniert.

  • Sieht alles soweit gut aus. Nur einen Eintrag bei Vulkaininfo ist bei mir anders:

    advancedBlendMaxColorAttachments = 1

    da steht bei mir eine 8. Aber ob es damit etwas zu tun hat kann ich leider nicht sagen. Die GTX860M sollte eigentlich neu genug sein.


    Evtl. kann jemand hier bestätigen das es bei ihm mit der GTX 860M geht :-)

  • Du brauchst wohl glfw3 glaube ich...


    Mit folgendem Python wurde es erst nicht transparent.

    Code
    1. from tkinter import *
    2. root = Tk()
    3. root.geometry("1280x720")
    4. root.attributes('-type', 'normal')
    5. root.attributes('-alpha', 0.1)
    6. root.mainloop()

    Mit xcompmgr -c wurde es transparent.


    Das funktioniert aber softhdcuvid nicht. Eventuell aus dem gleichen Grund wieso es mit dem glfw Test nicht geht. Gibt immer noch "FB is not transparent"


    Gruss

    VDR: Zotac ZBOX EN860, 16GB RAM, 2 TB HDD, Debian Stretch, vdr-2.4.1, softhddevice, satip

  • Ich versuche immer noch einen "einfachen" Testfall zu konstruieren. Habe einiges vom softhcuvid zusammenkoppiert:

    test.c.txt


    Stecke aber noch etwas fest:

    Das soll später mit pl_render_image gerendert werden. Aber irgendwie bleibt das Bild schwarz.


    Irgend eine Idee

    VDR: Zotac ZBOX EN860, 16GB RAM, 2 TB HDD, Debian Stretch, vdr-2.4.1, softhddevice, satip

  • Damit wird es nur noch schwarz und das OSD wird gar nicht dargestellt.


    Kann man noch irgend etwas beim konfigurieren von libplacebo verdrehen? Ich hate es so konfiguriert:

    Mit shaderc hatte ich es auch probiert. Macht aber keinen Unterschied.

    VDR: Zotac ZBOX EN860, 16GB RAM, 2 TB HDD, Debian Stretch, vdr-2.4.1, softhddevice, satip

  • Ich habe mein test.c noch einmal erweitert. Es sollte jetzt wie im softhdcuvid ein overlay gerendert werden. Kannst du das mal bei dir probieren:


    Bauen mit gcc -g -o test -lplacebo -lvulkan -lX11 -lX11-xcb -lxcb test.c


    Das Bild wird in create_image() erzeugt. Das overlay kommt von make_osd_overlay() mit 0.5 alpha.


    Effekt ist bei mir der gleiche wie mit dem VDR. Die overlay Farbe wird durch den alpha Faktor auf einen schwarzen Hintergrund gerendert, anstatt auf das image.


    Ich möchte diesen Testcase dann bei libplacebo fillen.


    Gruss

    Files

    • test.c.txt

      (19.31 kB, downloaded 133 times, last: )

    VDR: Zotac ZBOX EN860, 16GB RAM, 2 TB HDD, Debian Stretch, vdr-2.4.1, softhddevice, satip

  • Hallo


    also bei mir wird das Overlay halb transparent auf das Image gerendert. D.h. das Image ist unter dem Overlay noch zu sehen.

    Also entweder ist das nun ein placebo, vulkan oder Graka Problem.


    Die neuste Version von placebo kann auch opengl statt vulkan. Evtl. kannst du das ja mal mit deinem Testprogramm ausprobieren. Dann würde zumindest mal vulkan rausfallen. Für das plugin ist das leider noch nicht einsetzbar weil da noch Funktionen fehlen die ich brauche. Dein Testprogramm sollte damit aber gehen wenn du das anpasst. Schau dir mal das glfw Beispiel an


    mfg

    jojo61