[solved] softhdvaapi: Kein Bild, VDR beendet sich sofort wieder

  • Hi,


    ich bekomme mit dem softhdvaapi kein Bild, stattdessen beendet sich der VDR nach dem Laden des Plugins sofort wieder.


    Das Log (mit DEBUG-Switch für softhdvaapi) sagt:

    Fehlt da irgendetwas auf dem System? Und wenn ja, weiß jemand evtl., was das sein könnte?


    System:

    - openSUSE Leap 15.2

    - ffmpeg-4 Libs


    HW:

    Danke und ciao.

    Michael.

  • openSUSE doesn't know a render group.

    Here I have

    Code
    ls -l /dev/dri/
    total 0
    drwxr-xr-x  2 root root        80 Dec 24 22:10 by-path
    crw-rw----+ 1 root video 226,   0 Dec 24 22:10 card0
    crw-rw----+ 1 root video 226, 128 Dec 24 22:10 renderD128


    VDR ist running as vdr.video.

    So I guess the devices below /dev/dri should be readable und writable for group video, as they are?

    So what am I missing here?



    Thx and bye.

    Michael.

    3 Mal editiert, zuletzt von nobanzai ()

  • Your VDR-User should be member of video-group, I guess.
    Or is this done with your mentioned "running as vdr.video" already?

    MyVDR: yaVDR-Ansible (Ubuntu 20) - softhddevice-openglosd (ffmpeg 2.8) - epgd/epg2vdr - skindesigner estuary4vdr (adaptiert) - 1920x1080@50 Hz | kodi 18 - inputstream + amazon vod
    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

  • That is, what I meant, yes.

  • Why is your log saying "cuvid"? Isn't this a nvidia-feature and you are having intel graphics?

    MyVDR: yaVDR-Ansible (Ubuntu 20) - softhddevice-openglosd (ffmpeg 2.8) - epgd/epg2vdr - skindesigner estuary4vdr (adaptiert) - 1920x1080@50 Hz | kodi 18 - inputstream + amazon vod
    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

  • Ist da bei ffmpeg alles einkompiliert?


    ffmpeg -hide_banner -codecs | grep vaapi

    Code: Sieht bei mir so aus:
    DEV.LS h264                 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 (decoders: h264 h264_v4l2m2m ) (encoders: libx264 libx264rgb h264_v4l2m2m h264_vaapi )
     DEV.L. hevc                 H.265 / HEVC (High Efficiency Video Coding) (decoders: hevc hevc_v4l2m2m ) (encoders: libx265 hevc_v4l2m2m hevc_vaapi )
     DEVIL. mjpeg                Motion JPEG (encoders: mjpeg mjpeg_vaapi )
     DEV.L. mpeg2video           MPEG-2 video (decoders: mpeg2video mpegvideo mpeg2_v4l2m2m ) (encoders: mpeg2video mpeg2_vaapi )
     DEV.L. vp8                  On2 VP8 (decoders: vp8 vp8_v4l2m2m ) (encoders: vp8_v4l2m2m vp8_vaapi )
     DEV.L. vp9                  Google VP9 (decoders: vp9 vp9_v4l2m2m ) (encoders: vp9_vaapi )
  • Why is your log saying "cuvid"? Isn't this a nvidia-feature and you are having intel graphics?

    I'm not sure, what you mean? I'm trying to use softhdvaapi, not softhdcuvid.

    But the main package ist named vdr-plugin-softhdcuvid.

  • Ist da bei ffmpeg alles einkompiliert?


    ffmpeg -hide_banner -codecs | grep vaapi

    Danke für den Hinweis. Das ist in der Tat ein wenig seltsam bei der openSUSE Leap 15.2 (plus packman Repo).

    Ich habe zwar die ganzen ffmpeg-4-Libs installiert. Mit denen sind auch VDR und softhdvaapi übersetzt worden.


    Allerdings gibt es nur ein ffmpeg-3-Binary (ffmpeg-3-3.4.4-lp152.3.7). Und das sagt:

    Code
    ffmpeg -hide_banner -codecs | grep vaapi
    <gähnende Leere>


    Keine Ahnung, ob das ein Problem darstellt, sonst muss ich mal ein ffmpeg-4-Binary selber bauen. Ein Source-RPM gibt es.



    Danke und ciao.

    Michael.

  • Ich habe auch Suse 15.2 und habe daher selber kompiliert.

    Code
    zypper install codec2-devel fdk-aac-devel libaacs-devel libamrnb-devel libamrwb-devel libaom-devel libfaac-devel libfaad-devel libgsm-devel libmp3lame-devel libopencore-amr-devel libSDL2-devel libtheora-devel libvorbis-devel libvo-aacenc-devel libvpx-devel libwebp-devel libxvidcore-devel nasm ocl-icd-devel openal-soft-devel opencl-headers snappy-devel soxr-devel zvbi-devel
    cd /usr/local/src && wget http://ffmpeg.org/releases/ffmpeg-4.3.1.tar.bz2 && tar xfj ffmpeg-4.3.1.tar.bz2 && rm ffmpeg-4.3.1.tar.bz2 && cd ffmpeg-4.3.1
    ./configure --prefix=/usr/local --libdir=/usr/local/lib64 --shlibdir=/usr/local/lib64 --enable-shared --enable-nonfree --enable-cuda --enable-opengl --enable-vaapi --enable-libvorbis --enable-libmp3lame --enable-libx264 --enable-libx265 --enable-gpl
    make -j4
    make install && make install-libs && ldconfig && ffmpeg -hwaccels

    So läuft das softhddevice von Inj unter vaapi perfekt.


    Das softhdcuvid von Jojo klappt bei mir allerdings mit libplacebo nicht. Er moniert ein fehlendes Vulkan-Device.

  • Whow, perfekte Anleitung - danke dir!

    Allerdings findet er einige der genannten Pakete nicht - hast du noch spezielle Repos eingebunden?

  • Nein, nix anderes, nur

    Code
    sudo zypper addrepo -cfp 90 'https://ftp.gwdg.de/pub/linux/misc/packman/suse/openSUSE_Leap_$releasever/' packman
    zypper addrepo 'http://opensuse-guide.org/repo/openSUSE_Leap_$releasever' libdvdcss
    zypper ref
  • Ja, wenn man blind ist - Repo packman war deaktiviert. Jetzt läufts durch.

    Mir haben allerdings noch ein paar weitere Pakete wie x264 und x265 gefehlt.

    Kleines Script drum rum:

    Ergebnis:


    Danke nochmal!


    Ciao.

    Michael.

  • Dummerweise bekomme ich immer noch kein Bild. Wenn ich softhdvaapi mit -D starte, kommt:

    Starte ich ohne -D, dann kommt:

    Mit -x kommt:

    Das sieht erst einmal ok aus, aber dennoch beendet sich danach der VDR wieder, vermutlich weil

    Code
    [ 81030.347] (EE) parse_vt_settings: Cannot open /dev/tty0 (Permission denied)

    im Log des X-Servers steht.

    Setze ich tty0 auf vdr.video, kommt im Log ein anderer Fehler:

    Code
    [ 81468.518] (EE) xf86OpenConsole: Cannot open virtual console 1 (Permission denied)

    Warum er jetzt diesen Fehler bringt, noch dazu für vt1 anstatt für vt0 (wenn er oben schon tty0 angemault hat), verstehe ich überhaupt nicht mehr 8-(

    Ebensowenig verstehe ich, warum er offenbar nur auf seinen eigenen X-Server connecten kann.

    Was übersehe ich da noch?


    Danke wieder mal!


    Ciao.

    Michael.

  • Am Ende des Tages sieht es so aus, als wären die softhd* Plugins bei mir nicht in der Lage, einen X-Server zu starten, bzw. auf einen bereits gestarteten X-Server zu connecten.

    xineliboutput hat aber kein Problem, einen gestartenen X-Server zu connecten.

    Was machen die softhd* denn da anders? Bzw. welche anderen Voraussetzungen brauchen sie.

  • Ok, ich bin jetzt mal zu softhddevice von nächster Schritt - der Connect klappt, es hatte ein xhost gefehlt.

    Was jetzt noch bleibt ist:

    Code
    Dec 25 22:24:31 htpc vdr[19736]: video/vaapi: Can't inititialize VA-API on ':1'
    Dec 25 22:24:31 htpc vdr[19736]: video: 'va-api' output module isn't supported

    Wenn ich mir allerdings das Log vom Compile ansehe, hat er -DUSE_VAAPI da stehen.

    Übliche Frage: Was ist faul?

  • Bei softhdcuvid muss das -v va-api als Startargument weggelassen werden.


    Edit: Ich meine natürlich softhdvaapi!

    Einmal editiert, zuletzt von 447377 () aus folgendem Grund: falsches Plugin beschrieben

Jetzt mitmachen!

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