softhdcuvid/softhdvaapi/softhddrm with hevc and UHD

  • Wenn du das Bild nachschärfen willst dann könntest du den adaptive-sharpen nutzen, das ist aber Geschmacksache.

    Das habe ich eben gemacht. Das Bild stottert leider extrem - 576i und 720p-Sender.

  • Danke!

    Jetzt habe ich auch im Menü die Scaler zur Auswahl.

    Einmal editiert, zuletzt von nobanzai ()

  • Ich habe nun ein Update gemacht damit das ganze auch wieder mit der neusten libplacebo läuft.

    Leider hat sich die Reihenfolge der Scaler geändert und ihr müsst sie neu einstellen für die jeweiligen Auflösungen.


    Jetzt muss ich nur noch nach dem atmo Zeugs schauen :) Und schon fertig. Lasst mich wissen ob es funktioniert.

  • vdr -plugin-seduatmo geht wieder mit drm und libplacebo, vielen Dank dafür!


    ich hab jetzt erstmalig das Menu "bilinear" mit Leben gefüllt, ruckelt aber selbst mit dem nuc8i3 momentan noch (auf dem nuc7 natürlich auch). - muss ich noch mal schauen.

    CKone: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G540, 2x 2GB Kingston DDR3, Zotac GT630 1GB, S2-1600, Ocz Agility 3 60GB, LG GH24NS DVD, 15.6" Selbstbau TFT, Harmony 665, CIR Selbstbau - das Ganze im Silverstone SST-SG03B
    CKtwo: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G1610, 2x 2GB Corsair DDR3, Zotac GT630 1GB, TT S2-1600, Ocz Vertex 2 50 GB, 92 Kanal Seduatmo, Harmony 665, atric USB
    CKthree: yavdr-ansible/22.04 LTS/2.6.1/kodi19.3 auf Intel NUC, Celeron J4005, UHD Graphics 600, 4GB Crucial DDR4, Ocz Vertex2 50 GB, Harmony 350

    PowerEdge: Ubuntu Server 16.04 LTS / VDR 2.4.1 auf Dell PowerEdge T20, Xeon E3-1225 v3, 16GB ECC DDR3, 2x Cine S2 V6 mit Duoflex, Samsung 840 EVO 120GB, 3x WD White WD80EZAZ 8TB in SW Raid5



  • Die Shader sind schon rechenintensiv für die GPU.

    Tatsache, das hätte ich nicht gedacht. Ich habe eben mal intel_gpu_top installiert und hier habe ich eine Render-Auslastung von 80 % mit dem Scaler ewa_robidouxsharp. Mit binlear sind es noch 65 %, mit spline16 sind es 55 %. Ich dachte nämlich, dass die CPU bei libplacebo unterstützt.

    Und mit dem Shader sind's 100 %...

    Dann reicht hier meine i3-8100 mit der UHD Graphics 630 nicht aus... Du hast eine Iris Graphics 855, oder? Die reicht aus?

    Aber bevor ich die CPU tausche, könnte ich vermutlich gleich eine nVidia nachrüsten. Aber braucht's hier die GT1050 oder reicht die GT1030 mittlerweile auch?


    Danke!

    Jetzt habe ich auch im Menü die Scaler zur Auswahl.

    Du hast doch eine 10er CPU, oder? Die dürfte auch die UHD Graphics 630 haben, ggf. mit einer höheren max. Frequenz. Hast Du den Shader adaptive-sharpen.glsl auch mal getestet?


    Stefan

  • Du hast doch eine 10er CPU, oder? Die dürfte auch die UHD Graphics 630 haben, ggf. mit einer höheren max. Frequenz. Hast Du den Shader adaptive-sharpen.glsl auch mal getestet?


    Stefan

    Ja, hier werkelt ein Gen10 mit UHD630 (i5-10400T CPU @ 2.00GHz). Das Ganze ist aber komplett passiv gekühlt, daher neigt die CPU schon mal zum throtteln.

    Ich hatte zwei Shader mal dazu genommen, allerdings noch bevor das mit den Scalern geklappt hat. Da haben CPU und/oder GPU eher keine Engpässe in Form von Throttelitis erkennen lassen; das Bild war schön scharf (adaptive-sharpen.glsl), den zweiten Shader (filmgrain.glsl) habe ich eher nicht bemerkt, muss ich zugeben.

    Jetzt - nur mit dem ewa_robidouxsharp Scaler - langweilen sich CPU/GPU eher.

    Ich hab gerade mal die Shader auch wieder dazu genommen - mal sehen, ob sich das irgendwie bemerkbar macht.


    Ciao.

    Michael.

  • Hallo Michael,


    danke für Deine Rückmeldung! Das klingt ja sehr gut mit der Auslastung der 10er CPU.

    Hast Du irgendwas selber kompiliert (libdrm, libva oder Ähnliches?) oder alle Pakete von Tumbleweed übernommen?


    Gruß

    Stefan

  • Ich hab iHD/vaapi von Intel und libplacebo selber gebaut.


    Der Test mit Shadern *und* Scalern hat die CPU/GPU übrigens bei mir auch nicht weiter aufgeregt - die dümpeln nach wie vor lustig vor sich hin.

    Und wichtig: Auch die Temperaturen halten sich in Grenzen, was für mein passiv gekühltes System natürlich besonders wichtig ist.

    Ich habe allerdings auch mal intel_gpu_top laufen lassen. Der zeigt tatsächlich eine 95% load an:


    Code
    intel-gpu-top - 1100/1100 MHz;    2% RC6;   9.10 Watts;      453 irqs/s
    IMC reads:     6080 MiB/s
    IMC writes:     3699 MiB/s
    
    ENGINE      BUSY                                                                              MI_SEMA MI_WAIT
    Render/3D/0    94.79% |██████████████████████████████████████████████████████████████████████▏   |      0%      0%
    Blitter/0     0.00% |                                                                          |      0%      0%
    Video/0     3.83% |██▊                                                                       |      0%      0%
    VideoEnhance/0     0.00% |                                                                          |      0%      0%


    Ciao.

    Michael.

  • Ich habe noch ein wenig weiter damit herum gespielt und mit intel_gpu_top die Last beobachtet.

    Die Shader scheinen sich nicht groß auszuwirken, aber bei den Scalern gibt es große Unterschiede:

    Während beim ewa_robidouxsharp die GPU auf 90 - 95% werkelt, sind es beim bilinear nur 35 - 50%.

  • Während beim ewa_robidouxsharp die GPU auf 90 - 95% werkelt, sind es beim bilinear nur 35 - 50%.

    Naja das ist auch kein Wunder. Der ewa_robidouxsharp ist viel aufwändiger beim skalieren und damit auch besser :)


    So ich habe noch das einstellen der Farbtemperatur eingebaut. Damit kann man die Grundfarbe von 6500K mit einem Offset versehen und das Bild wärmer (negative Werte) oder kälter (positive Werte) machen.


    mfg

    jojo61

  • Naja das ist auch kein Wunder. Der ewa_robidouxsharp ist viel aufwändiger beim skalieren und damit auch besser :)

    Das sagst du auch nur, weil du im Gegensatz zu mir Ahnung hast ;)

  • Die Shader sind schon rechenintensiv für die GPU.

    Ich habe allerdings auch mal intel_gpu_top laufen lassen. Der zeigt tatsächlich eine 95% load an:

    Ich habe nun auch "gespielt". Ein kompilierter iHD-Treiber brachte eine Senkung von etwa 2 % im intel_gpu_top. Ein kompiliertes libva, drm brachten dagegen keine Vorteile.

    Wird libplacebo mit schaderc als mit glslang kompiliert, dann kann ich den adaptive-shader zusammen mit dem Scaler "robidouxsharp" laufen lassen. Was mich dabei wundert ist, dass sich der Shader im GPU-Load nicht großartig auswirkt, dennoch kommt es bei den meisten Scalern, bis auf robidouxsharp oder bilenear zu Bild- und Tonaussetzern.

    Hätte ich nicht gedacht, dass die UHD 630 bei einer 8er CPU am Ende ist und bei einer 10er CPU vermutlich anders angebunden ist und noch etwas Leistung übrig hat, dass Shader und ewa-rbidouxsharp gehen.


    Und dann das Wichtigste: Im oberen Bereich flimmert das Bild, vor allem bei i576-Sendern und nur bei hellen Farben. Ist das nur bei mir so? Oder scheidet Ihr im Plugin-Setup oben ein oder zwei Pixel-Reihen ab?


    Stefan

  • Ich schneide nix ab und es flimmert auch nicht.

  • Ah, ok, ist bei mir auch aus.

  • Hi,

    ist die GL-Variante von libplacebo grundsätzlich auch mit CUVID möglich?

    Beim Bauen bekomme ich immer die folgenden Fehler:

    Code
    video.c: In function 'CuvidSwapBuffer':
    video.c:4545:20: error: 'eglDisplay' undeclared (first use in this function); did you mean 'EGLDisplay'?
         eglSwapBuffers(eglDisplay, eglSurface);
                        ^~~~~~~~~~
                        EGLDisplay
    video.c:4545:32: error: 'eglSurface' undeclared (first use in this function); did you mean 'EGLSurface'?
         eglSwapBuffers(eglDisplay, eglSurface);
                                    ^~~~~~~~~~
                                    EGLSurface

    und

    Code
    video.c: In function 'InitPlacebo':
    video.c:5641:26: error: 'eglDisplay' undeclared (first use in this function); did you mean 'EGLDisplay'?
         params.egl_display = eglDisplay;
                              ^~~~~~~~~~
                              EGLDisplay
    video.c:5642:26: error: 'eglContext' undeclared (first use in this function); did you mean 'glxContext'?
         params.egl_context = eglContext;
                              ^~~~~~~~~~
                              glxContext


    Wenn ich das Plugin zum Gegencheck mit VAAPI und PLACEBO_GL baue, läuft es durch.

    CUVID und PLACEBO baut auch ohne Probleme, aber ich bekomme Vulkan ums verrecken nicht zum laufen.

    CUVID ohne PLACEBO läuft auch.

    Und MPV mit der OpenGL-API läuft auch ohne Probleme (mit NVDEC als Dekoder).


    Vielen Dank schon mal.


    Gruß

    Christoph

    yavdr-ansible - Asus A55BM-A/USB3 - A4-6300 - Samsung 830 SSD 64 MB - WD AV-GP 3TB - MSI GTX 1050 Ti - DD Cine S2 6.5 - LG CH12NS30 - OrigenAE S14V

  • Ne, lässt sich bei mir auch nicht mit PLACBO_GL übersetzen - selber Fehler. Und auch bei mir klappt es mit den beiden anderen Inkarnationen.

    Und auch bei mir klappt Vulkan nicht.

  • ist die GL-Variante von libplacebo grundsätzlich auch mit CUVID möglich?

    Nein mit Cuvid funktioniert die GL Variante nicht. Das liegt an NVIDIA Treiber, der kann die Cuvid decodierten Frames nicht per zerocopy an ein GL shader übergeben.


    Warum ihr aber vulkan nicht zum laufen bringt bleibt mir ein Rätsel.

  • Hallo,

    im Testing-Branch von Slackware-current ist nun Kernel 5.12.0 enthalten.

    Ich habe nun die HDR-Ausgabe getestet und das funktioniert sehr gut. Bravo!

    Getestet habe ich auf dem NUC8 ohne libplacebo.


    jojo : Kannst Du nochmal erläutern welche Vorteile zusätzlich die Verwendung von libplacebo hätte.

    Das ist mir noch nicht ganz klar,


    Gute Arbeit!

Jetzt mitmachen!

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