Hardware-Transcoding nicht möglich

  • Hallo,


    dank Kodinerds bin ich auf die grandiose Software Unraid aufmerksam geworden, und habe mir hier auch einen kleinen Server zusammengestellt.
    Darin läuft ein AMD Ryzen 3 PRO 4350G mit 32 GB DDR4 ECC RAM auf einem ASUS B550M-C Pro.

    Diese Konstellation sollte unter Unraid 6.9.2 nach meinem Kenntnisstand grundsätzlich in der Lage sein Transcodierungen in Hardware auch innerhalb von Docker-Containern durchführen zu können.

    Mein Ziel wäre es im offiziellen Docker-Container von BubbleUPnP GPU transcoding nutzen zu können. Laut der zugehörigen Dokumentation wird Va-API unterstützt.

    In der Webkonsole des BubbleUPnP-Servers gibt es das zu eine Schaltfläche "Perform GPU Transcoding test". Hier erhalte ich aber nur die folgende Fehlermeldung:

    Die zugehörige Log-Datei aus dem Container habe ich mit angehängt.


    Zur Aktivierung der Hardwaretranscodierung hatte ich gemäß dieser Vorlage unter Unraid die Datei amdgpu.conf angelegt.


    Code
    chmod -R 777 /dev/dri

    wie in einer anderen Anleitung hatte ich unter Unraid bereits ebenfalls durchgeführt.


    Code
    ls -la /dev/dri

    gibt bei mir unter Unraid folgendes aus:
    drwxrwxrwx 3 root root 100 Jul 20 16:22 ./
    drwxr-xr-x 16 root root 3460 Jul 20 16:22 ../
    drwxrwxrwx 2 root root 80 Jul 20 16:22 by-path/
    crwxrwxrwx 1 root video 226, 0 Jul 20 16:22 card0
    crwxrwxrwx 1 root video 226, 128 Jul 20 16:22 renderD128

    /dev/dri habe ich im Docker entsprechend durchgereicht:


    Zwischenzeitlich habe ich die amdgpu.conf wieder entfernt und stattdessen das Plugin Radeon-TOP, das Hardware-Transcoding ebenfalls aktivieren soll, zusammen mit GPU Statistics im Einsatz.

    Getestet hatte ich außerdem einen alternativen Container für den BubbleUPnP-Server.

    Code
    vainfo

    gibt hier folgendes aus:
    error: XDG_RUNTIME_DIR not set in the environment.
    error: can't connect to X server!
    libva info: VA-API version 1.4.0
    libva info: va_getDriverName() returns 0
    libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/radeonsi_drv_video.so
    libva info: Found init function __vaDriverInit_1_4
    pci id for fd 4: 1002:1636, driver (null)
    libva error: /usr/lib/x86_64-linux-gnu/dri/radeonsi_drv_video.so init failed
    libva info: va_openDriver() returns 2
    vaInitialize failed with error code 2 (resource allocation failed),exit


    Kann mir einer von euch Experten hier sagen wo hier der Fehler liegt?

  • Hast du mal die "Radeon TOP" App installiert ?

    Ps: Mal wieder zu schnell, hast du ja schon gemacht.

    Calidors Kino |3m Leinwand |Optoma 131x 3D DLP Beamer|Onkyo 11.2 Avr|HTPC|
    Automaskierung über Cinescreen 2 Steuerung|Teufel Theater 2 7.4.4 Atmos |
    Podest mit 4 Shakern|Alexa mit Braodlink Pro und Rii 8|
    Unraid Server mit Emby,TVHeadend und Iobroker Docker und momentan 40 TB Datenpool|Popcornmaschine :thumbup:

    Einmal editiert, zuletzt von Calidor (8. August 2021 um 00:23)

  • Danke für die Rückmeldung.

    Es war tatsächlich alles korrekt eingerichtet.
    In der Dokumentation zum Container war zwar angegeben, dass VA-API unterstützt wird, jedoch waren die MESA-Treiber und FFMPEG in einer zu alten Version installiert.

    Der Maintainer des Containers hat die beiden Komponenten inzwischen aktualisiert und Hardware-Transkodierung läuft jetzt wie gewünscht. [ab]

Jetzt mitmachen!

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