softhdcuvid jetzt mit VAAPI support

  • Das kommt dann auch den VAAPI Nutzern zugute die dann auch ohne libplacebo evtl. mit den "schwachen" GPUs wieder ausgeben können

    Toll:thumbup:. Dein Plugin macht aber auch schon auf schwachen GPUs einen besseren Job (abgesehen von UHD aber das brauche ich derzeit ohnehin noch nicht) als die anderen Plugins.

    Lediglich ein Problem gibt es noch wenn der VDR mit einem Radio-Programm und Radio-Plugin startet. Das Standbild vom Radio-Plugin wird nicht angezeigt, ich muss dann erst mal auf ein TV-Programm schalten und dann wieder zurück.

    VDR 2.4.1 Kodi 18.3-Leia
    Ubuntu 19.04, Kernel 5.3.7, Thermaltake DH102, ASHRock J4105B, CineS2 V6.5.
    Plugins:
    radio v1.1.0-6-g468280f , trayopenng 1.0.2, fritzbox 1.5.3, cdplayer 1.2.4, femon v2.4.0-GIT-d366856, menuorg 0.5.2, extrecmenu v1.2.5-git, streamdev-server v0.6.1-git, cecremote 1.5.0, osd2web 0.2.48, vaapidevice v1.0.0-GITd19657b

  • Hi,


    für die aktuelle GPU-Unterstützung sollte man diese Intel-Pakete neu erstellen.


    index : drm-intel

    git://anongit.freedesktop.org/drm-intel


    index : drm/drm-firmware

    https://cgit.freedesktop.org/drm/drm-firmware/


    Grüße

    cinfo

    Server mit Tunerstation: NetCeiver, 5x DVB-S2 extern VDR: Intel NUC i5 Coffee Lake, SSD: 128GB, 8GB RAM Software: Ubuntu 18.04, ReelVDR oder VDR-2.4.0 , Kernel: 4.x NAS: CPU Intel Atom 1.8 GHz, 4GB RAM mit 8 TB Speicher Client1-2: Amazon Fire TV - OLED TV: LG OLED55E8

    The post was edited 3 times, last by cinfo ().

  • So ich habe nun einen Update eingecheckt. Darin habe ich die VAAPI Version auf egl umgestellt.

    Mit cuvid geht das leider nicht weil es keine cuda egl interopt funktionen von Nvidia gibt. Insofern gibt es für cuvid hier nichts neues. Ich habe aber am audio/video sync veränderungen gemacht. Das würde auch mit cuvid helfen falls da jemand Probleme hat.


    Die neue Version geht nur noch mit openglosd und libplacebo kann nun für cuvid und für vaapi abgeschaltet werden. Ich habe das im Makfile entsprechend angepasst und beschrieben.

    Damit sollte vaapi erst mal stabil sein (hoffentlich) und ich werde nun mal auf dem Raspi testen.


    Das HDR mit Intel habe ich mir mal angeschaut aber bisher noch nicht verstanden wir das gehen soll. Außerdem geht das nur mit GeminiLake und IceLake CPUs und mein NUC hat nur eine KabyLake CPU :-( Da muss Intel wohl noch nacharbeiten. Ich verstehe auch nicht warum das unter Windows alle unterstützen und unter Linux alle so Zickig sind.


    Feedback erwünscht.

    Jojo61

  • Ich bekomme beim compilieren


    Code
    1. x86_64-pc-linux-gnu/bin/ld: cannot find -lEGL_mesa

    mesa ist mit egl Unterstützung compiliert


    Code
    1. [ebuild R ] media-libs/mesa-19.0.8::gentoo USE="classic dri3 egl gallium gbm gles1 gles2 llvm osmesa vaapi vulkan -d3d9 -debug (-libglvnd) -lm_sensors -opencl -pax_kernel -pic (-selinux) -test -unwind -valgrind -vdpau -wayland -xa -xvmc" ABI_X86="(64) -32 (-x32)" VIDEO_CARDS="i965 intel radeonsi (-freedreno) -i915 (-imx) -nouveau -r100 -r200 -r300 -r600 -radeon (-vc4) -virgl (-vivante) -vmware" 0 KiB


    vdr-User-# 755 to_h264 chk_r

  • Verstehe ich das richtig, dass man libplacebo bei VAAPI nur dann aktivieren sollte, wenn man dessen Scaler nutzen will (was die meisten Intel-IGPs überfordert)?


    Ich habe gerade softhdvaapi paketiert (https://launchpad.net/~seahawk…rchive/ubuntu/softhdvaapi), dabei habe ich für EGL auf die pkg-config aus der egl.pc zurückgegriffen, gegen EGL_mesa scheint man nicht linken zu müssen:

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Ich habe gerade versucht die Version mit CUVID und libplacebo zu bauen, dabei meckert er über undeklarierte Variablen, weil die in einem ifdef DEBUG Block stecken (https://github.com/jojo61/vdr-…/blob/master/video.c#L889) :

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Oh ja die lib EGL_mesa kann raus aus dem Makefile. Werde ich gleich updaten.

    Und den Fehler mit dem DEBUG korrigiere ich auch gleich mit.


    Danke fürs Feedback.


    Quote

    Verstehe ich das richtig, dass man libplacebo bei VAAPI nur dann aktivieren sollte, wenn man dessen Scaler nutzen will (was die meisten Intel-IGPs überfordert)

    Ja bei VAAPI lohnt sich placebo nur mit einer schnellen GPU und wenn man die Scaler nutzen will.

  • ...

    Das HDR mit Intel habe ich mir mal angeschaut aber bisher noch nicht verstanden wir das gehen soll. Außerdem geht das nur mit GeminiLake und IceLake CPUs und mein NUC hat nur eine KabyLake CPU :-( ...

    Hi jojo61,

    ich hatt mir erhofft, von hier einen Weg für einen sauber laufenden VDR am 4k TV zu erhalten. (Wird ja vielleicht erst noch...)

    Da mein letzter VDR gestorben ist, bin ich auf der Suche nach einem zukunftsfähigen Rechner und lese deshalb hier mit.


    Die Informationen welchen Prozessor bzw. Intel GPU wirklich benötigt werden habe ich nirgends sauber gefunden.


    Was ist der Parameter den ich hierfür brauche (Anzahl execution engines, Anzahl Gflops, Feature-Tabelle)?


    Hier habe ich nur eine allgemeine Tabelle gefunden

    Wkipedia - Intel Graphics

    hier wird bei Ice Lake auf open source treiber verwiesen:

    wikipedia - Intel Quick-Sync

    ... bei denen wiederum u.a. Kabylake das 10Bit decoding deklariert wird

    github: intel media-driver for VAAPI


    Ist das so unübersichtlich, oder habe ich nur keine Peilung? Dann müsste ich mir am Besten einen Ice Lake holen und auf fertige Treiber warten....


    Wer bringt Licht ins Dunkel?


    Gruß Klemens

    Und bist Du nicht willig, so brauch ich Geduld!
    System: MLD 5.4 on Intel Core2 Duo E8400, NVIDIA GF108 [GeForce GT 430], TV Philips 4k, Tuner: DD Cine S2 V6.5 + Duoflex S2 + CEC-Remote

  • Klemmerle Die Information welcher Prozessor gebraucht wird habe ich in den verschieden ankündigungen für den Kernel 5.3 gefunden.

    Ausserdem habe ich dann in den Quellen nachgeschaut und da redet Intel immer von Version 10. Das ganz bezieht sich auf Linux und nicht auf die Hardware als solches. D.h. Die Hardware im NUC8ixxx kann durchaus 10 Bit HDR ausgeben, wird aber unter Linux derzeit dafür nicht unterstützt.


    Zumindest hättest du mit einer IceLake CPU schon mal die richtige CPU damit das unter Linux was wird. Wie man das dann aber ansteuert habe ich bisher nirgends gefunden. Bin aber noch dran das du ermitteln. Bisher versuche ich schon mal 10 Bit Farben mit xorg auszugeben. Aber auch das ist mir mit Intel noch nicht gelungen :-(


    Im Prinzip ist es ganz einfach. Man braucht 10 Bit Farben und ein API um die HLG Metadaten auszugeben. Zumindest die 10Bit visuals soll es schon geben.

  • Hi,

    I do have a issue with the skinnopacity, but it was happen also before the latest changes

    Code
    1. MALLOC_CHECK_=2 runvdr-vulkan
    2. free(): invalid pointer
    3. Aborted (core dumped)

    it did come from the openglosd


    CU

    9000h

    Es ist eagl in wlehcer Reiehnfogle die Bchustebaen in Woeretrn vokrmomen. Huapstache der estre und leztte Bchustbae sitmmen.

  • ...

    Zumindest hättest du mit einer IceLake CPU schon mal die richtige CPU damit das unter Linux was wird. ...

    jojo61 Danke für die Empfehlung. Ich werd mich mal auf die Suche nach einem passenden Drumherum machen und biete mich als Tester an- wenn Du dann auch weiter gekommen bist...

    Und bist Du nicht willig, so brauch ich Geduld!
    System: MLD 5.4 on Intel Core2 Duo E8400, NVIDIA GF108 [GeForce GT 430], TV Philips 4k, Tuner: DD Cine S2 V6.5 + Duoflex S2 + CEC-Remote

  • Ich hatte doch mal einen patch für den skindesigner veröffentlicht. Hast du denn angewendet ?

  • Funktioniert das ganze eigentlich auch mit AMD GPUs?

  • Was will mir denn dies sagen:


    vdr: codec: can't allocate HW video codec context err ffffffea


    Ist ein älterer "Intel(R) Celeron(R) CPU J3160 @ 1.60GHz (family: 0x6, model: 0x4c, stepping: 0x4)"



    Stefan

  • Ich fürchte, ein i965 ist "etwas überwutzelt". Die Grafikleistung eines Celeron-1.6GHz dürfte jedenfalls nicht mehr reichen, auch wenn ein Full-HD-Screen noch angezeigt werden kann. Welche Grafikausgänge hat der Rechner?

    --
    vdr User #2022 - hdvdr2: Intel(R) Core(TM) i5-4670S, 12 GB Ram, softhddevice-vpp
    Octopus (ddbridge-6.5) mit 2xDVB-S2 und (Flex) 2xDVB-C/T Tunern, nvidia-GF610 (nvidia-390)
    System SSD btrfs, snapper, 8TB HDD XFS /srv/vdr, yavdr-ansible-2.4.1-frodo, hwe-Kernel 5.3.0-24,

    epgd/tvm/tvsp (Frodo), vdradmin-am, vdrmanager (Smartphone als FB) + FLIRC und Standard-FB

  • Hallo zusammen,
    ich verfolge hier die Entwicklung und frage mich ob es irgendwelche qualitativen Vorteile bietet (außer UHD) die Ausgabe von Yavdr Ansible (Standardinstallation) auf meinem Gemini Lake Intel System auf das Ausgabeplugin aus diesem Thread umzustellen...
    Vor allem: Sind die letzten Versionen alltagstauglich?

    Man sagt zwar "Never Change a Running System", aber nachdem mein neuer Verstärker jetzt wie mein TV UHD-tauglich ist, juckt es schon ein bisschen wieder zu basteln...

    Cine S2 V6.5 + DuoFlex V4 Apollo-Lake Celeron (Asrock J3355M), ATRIC Einschalter, MLD 5.4 testing

  • Was will mir denn dies sagen:


    vdr: codec: can't allocate HW video codec context err ffffffea

    Ich hatte das gestern mit einem ffmpeg 4.2, das ohne cuvid-Support gebaut wurde, auf DVB-T2 Kanälen (also mit HEVC als Codec) - was listet denn ffmpeg -loglevel quiet -decoders auf deinem System?

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)