[gelöst] Kodi Hardware-Beschleunigung, was tun mit dem Server?

Alle weiteren Dienste, die nicht in die drei oberen Foren gehören.
Antworten
vladd
Beiträge: 23
Registriert: 22.03.2017 09:15:47

[gelöst] Kodi Hardware-Beschleunigung, was tun mit dem Server?

Beitrag von vladd » 21.01.2019 11:14:51

Für die, die es eilig haben:
Hat jemand erfolgreich Kodi 18 für Debian stretch kompiliert mit funktionierender Hardware-Beschleunigung?

Hier die ausführlichere Version:
Habe vor kurzem meinen Homeserver fertiggestellt: Debian stretch ohne desktop environment als OS, darauf OpenMediaVault als NAS-Lösung und Kodi um meine Medien direkt am TV abzuspielen. Der Rest wird mit Docker containerisiert.

Habe das Mainboard AsRock J5005-ITX verwendet. Der Pentium Silver J5005 Gemini Lake soll sogar HEVC (10 Bit) dekodieren können (obwohl ich das aktuell nicht wirklich brauche).

Wenn ich 1080p Filme abspiele, ist die CPU zu ca. 30% ausgelastet. Ob ich nun die Hardware-Beschleunigung in Kodi eingeschaltet habe oder nicht. Ich gehe also davon aus, dass die Hardware-Beschleunigung eher nicht funktioniert. Zumal ich auch auf kodinerds.net nachgelesen habe, dass die Kodi-Version aus den debian-Repos (also meine Version) eine ffmpeg-Version verwendet die suboptimal für Kodi ist, da für Kodi nicht getestet und nicht optimiert.

Ich würde gerne die Hardware-Beschleunigung zum Laufen bringen und stehe vor folgenden Fragen:

- Kodi 17 aus den debian-Repos deinstallieren und Kodi 18 von GitHub herunterladen und für Debian stretch kompilieren?
- Auf Ubuntu Server umsteigen und die optimierte Version von Kodi installieren? (dann entfällt die bequeme NAS-Lösung mit OMV)
- Könnte man Kodi theoretisch mit Docker virtualisieren (klappt dann aber die Bild-Ausgabe auf HDMI?)

Kodi 18 zu kompilieren scheint mir der sympathischere Weg zu sein. Wenn das klappt, kann mein System so wie es ist hoffentlich weiterlaufen.

Kann man bei Ubuntu Server auch einen neueren Kernel installieren (aktuell habe ich den 4.19 aus den stretch-backports)?

Ist es aufwändig, mit "Bordmitteln", NFS- und Samba-Freigaben zu realisieren?
Zuletzt geändert von vladd am 22.01.2019 20:32:57, insgesamt 2-mal geändert.

Benutzeravatar
Lord_Carlos
Beiträge: 5578
Registriert: 30.04.2006 17:58:52
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Dänemark

Re: Kodi Hardware-Beschleunigung, was tun mit dem Server?

Beitrag von Lord_Carlos » 21.01.2019 11:30:13

Kann sein das du folgendes schon weist, aber nur um sicher zu sein:
Kodi 17 aus den Repos + ffmpeg aus den repos hard funktionierende Hardwarebeschleunigung fuer 264 and 265/HEVC (8Bit). Aber es gibt ein bug das bei 10bit der Bildschirm schwarz bleibt wenn Hardwarebeschleunigung an ist. Muss man dann immer vorher genau fuer den Film ausstellen.

Da es schon laenger Releasekandidaten fuer Kodi 18 gab, wollte ich eigentlich darauf warten bis es Debian Pakete gibt. Aber jetzt ist Debian Testing ja im Freez.
Vielleicht kommt wenn Kodi 18 fertig ist was in unstable oder backports was man pinnen kann.

Ja, bin mir recht sicher das es fuer Ubuntu auch aktuelle Kernel gibt. Da gibt es doch fuer alles und jeden ein PPA.
Da ich nicht so viele 10 Bit HEVC Filme habe eilt es bei mir nicht. Aber waere schon wenn es da bald mal eine Loesung geben wuerde.

Code: Alles auswählen

╔═╗┬ ┬┌─┐┌┬┐┌─┐┌┬┐╔╦╗
╚═╗└┬┘└─┐ │ ├┤ │││ ║║
╚═╝ ┴ └─┘ ┴ └─┘┴ ┴═╩╝ rockt das Forum!

JTH
Moderator
Beiträge: 3023
Registriert: 13.08.2008 17:01:41
Wohnort: Berlin

Re: Kodi Hardware-Beschleunigung, was tun mit dem Server?

Beitrag von JTH » 21.01.2019 11:30:46

vladd hat geschrieben: ↑ zum Beitrag ↑
21.01.2019 11:14:51
Ich gehe also davon aus, dass die Hardware-Beschleunigung eher nicht funktioniert.
Ob gerade hardwarebeschleunigt dekodiert wird, kannst du sehen, wenn du beim Abspielen einmal o drückst und schaust, was im Reiter Player process info bei Video decoder steht. Mit einer Nvidia-Grafikkarte steht dann dort z.B. ff-h264-vdpau (HW).

Bei mir funktioniert die Hardwarebeschleunigung allerdings auch mit der Kodi-Version 17.x aus den Debian-Repos problemlos mit Intel (vaapi) und Nvidia (vdpau).
Manchmal bekannt als Just (another) Terminal Hacker.

vladd
Beiträge: 23
Registriert: 22.03.2017 09:15:47

Re: Kodi Hardware-Beschleunigung, was tun mit dem Server?

Beitrag von vladd » 21.01.2019 11:53:42

Lord_Carlos hat geschrieben: ↑ zum Beitrag ↑
21.01.2019 11:30:13
Kodi 17 aus den Repos + ffmpeg aus den repos hard funktionierende Hardwarebeschleunigung fuer 264 and 265/HEVC (8Bit).
Oh. Das wusste ich nicht. Dann hätte ich gar kein Problem und könnte größere Umwälzungen vermeiden :)

Ist dann bei 1080p eine CPU-Auslastung von 30% normal?

vladd
Beiträge: 23
Registriert: 22.03.2017 09:15:47

Re: Kodi Hardware-Beschleunigung, was tun mit dem Server?

Beitrag von vladd » 21.01.2019 11:55:16

JTH hat geschrieben: ↑ zum Beitrag ↑
21.01.2019 11:30:46
Ob gerade hardwarebeschleunigt dekodiert wird, kannst du sehen, wenn du beim Abspielen einmal o drückst und schaust, was im Reiter Player process info bei Video decoder steht. Mit einer Nvidia-Grafikkarte steht dann dort z.B. ff-h264-vdpau (HW).
Werde ich checken und berichten.

vladd
Beiträge: 23
Registriert: 22.03.2017 09:15:47

Re: Kodi Hardware-Beschleunigung, was tun mit dem Server?

Beitrag von vladd » 21.01.2019 18:14:30

Beim Drücken auf o wird als Video-Decoder folgendes angezeigt: ff-h264(SW)

vainfo zeigt mir (in einer SSH-Sitzung) folgendes an:

Code: Alles auswählen

error: can't connect to X server!
libva info: VA-API version 0.39.4
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_0_39
libva error: /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so init failed
libva info: va_openDriver() returns -1
vaInitialize failed with error code -1 (unknown libva error),exit

JTH
Moderator
Beiträge: 3023
Registriert: 13.08.2008 17:01:41
Wohnort: Berlin

Re: Kodi Hardware-Beschleunigung, was tun mit dem Server?

Beitrag von JTH » 21.01.2019 19:15:57

vladd hat geschrieben: ↑ zum Beitrag ↑
21.01.2019 18:14:30
vainfo zeigt mir (in einer SSH-Sitzung) folgendes an:

Code: Alles auswählen

error: can't connect to X server!
[…]
In einer SSH-Sitzung am Besten so aufrufen:

Code: Alles auswählen

$ DISPLAY=:0 vainfo
Das Paket Debianva-driver-all ist installiert?

Wie/in welcher Umgebung rufst du Kodi auf? Läuft da womöglich Wayland – damit funktioniert VAAPI/VDPAU nämlich m.W.n. bisher nicht:

Code: Alles auswählen

$ # Läuft Wayland?
$ pgrep Xwayland
Manchmal bekannt als Just (another) Terminal Hacker.

vladd
Beiträge: 23
Registriert: 22.03.2017 09:15:47

Re: Kodi Hardware-Beschleunigung, was tun mit dem Server?

Beitrag von vladd » 21.01.2019 19:34:27

Das Paket "va-driver-all" war nicht installiert, habe ich nachgeholt.

Wayland läuft nicht, denn die Abfrage "pgrep Xwayland" gibt einfach gar nichts zurück.

Code: Alles auswählen

$ DISPLAY=:0 vainfo
libva info: VA-API version 0.39.4
libva info: va_getDriverName() returns -1
libva error: va_getDriverName() failed with unknown libva error,driver_name=(null)
vaInitialize failed with error code -1 (unknown libva error),exit

vladd
Beiträge: 23
Registriert: 22.03.2017 09:15:47

Re: Kodi Hardware-Beschleunigung, was tun mit dem Server?

Beitrag von vladd » 21.01.2019 19:41:19

Kodi starte ich beim Booten über eine systemd unit:

Code: Alles auswählen

[Unit]
Description=Kodi standalone
After=systemd-user-sessions.service network-online.target sound.target mysqld.service
Requires=network-online.target
Conflicts=getty@tty1.service
[Service]
User=kodi
Group=kodi
PAMName=login
TTYPath=/dev/tty1
ExecStart=/usr/bin/xinit /usr/bin/kodi-standalone -- :0 -nolisten tcp vt1
Restart=on-abort
StandardInput=tty
[Install]
WantedBy=graphical.target
​
Quelle: https://github.com/graysky2/kodi-standalone-service

JTH
Moderator
Beiträge: 3023
Registriert: 13.08.2008 17:01:41
Wohnort: Berlin

Re: Kodi Hardware-Beschleunigung, was tun mit dem Server?

Beitrag von JTH » 21.01.2019 21:33:41

Ich bin mir nicht so 100% sicher, ob man sich auf das Funktionieren von vainfo außerhalb einer X-Session verlassen kann.

Das Installieren von Debianva-driver-all hat in Kodi noch nicht geholfen?

Ansonsten schau mal, ob im Kodi-Debug-Log (/home/kodi/.kodi/temp/kodi.log) bei angeschalteter Hardwarebeschleunigung beim Start eines Videos etwas hilfreiches auftaucht. „VAAPI“ wäre da ein Suchwort.

An- und abschalten kann man das Debug-Log mit CTRL+SHIFT+D, wenns angeschaltet ist, hat man Ausgaben oben links in Kodi.

vladd hat geschrieben: ↑ zum Beitrag ↑
21.01.2019 11:14:51
[…] soll sogar HEVC (10 Bit) dekodieren können (obwohl ich das aktuell nicht wirklich brauche).
Am Rande: Dafür wirst du laut Anforderungen im Kodi-Wiki mindestens Debian Buster brauchen (für Mesa & libva). Ist das für dich generell eine Option, schon auf Buster umzusteigen, um evtl. zu altes libva etc. für deine Hardware auszuschließen? Buster ist ja schon kurz-vor-stable :wink:

Nachtrag:
Im Kodi-Debug-Log sollten ähnliche Meldungen auftauchen:

Code: Alles auswählen

21:49:44.456 T:140036116829952   DEBUG: VAAPI - open decoder
21:49:44.460 T:140036116829952   DEBUG: VAAPI - initialize version 1.3
21:49:44.460 T:140036116829952   DEBUG: VAAPI - driver in use: Intel i965 driver for Intel(R) Ivybridge Mobile - 2.2.0
21:49:44.460 T:140036116829952   DEBUG: VAAPI - attrib 0 (get/set) min -100 max 100 value 0x0
[…]
21:49:44.460 T:140036116829952   DEBUG: VAAPI - attrib 6 (get/set) min 0 max 3 value 0x0
21:49:44.460 T:140036116829952   DEBUG: VAAPI - profile 0
[…]
21:49:44.460 T:140036116829952   DEBUG: VAAPI - profile 12
21:49:44.462 T:140035571566336   DEBUG: Thread Vaapi-Output start, auto delete: false
21:49:44.462 T:140035571566336  NOTICE: COutput::OnStartup: Output Thread created
21:49:44.467 T:140035571566336   DEBUG: VAAPI::COutput::CreateEGLContext - created context
21:49:44.467 T:140035571566336   DEBUG: SECTION:LoadDLL(special://xbmcbin/system/libsse4-x86_64-linux.so)
21:49:44.467 T:140035571566336   DEBUG: Loading: /usr/lib/x86_64-linux-gnu/kodi/system/libsse4-x86_64-linux.so
21:49:44.471 T:140035571566336   DEBUG: VAAPI::COutput::InitBufferPool - Surfaces created
Manchmal bekannt als Just (another) Terminal Hacker.

vladd
Beiträge: 23
Registriert: 22.03.2017 09:15:47

Re: Kodi Hardware-Beschleunigung, was tun mit dem Server?

Beitrag von vladd » 22.01.2019 06:40:32

Werde heute Abend das Kodi Log checken.

Alternativ: Spielt die Reihenfolge beim installieren eine Rolle? Also wann die Firmware (free / nonfree) draufkommt, der Intel-Treiber, der X-Server.

Könnte mir auch vorstellen Kodi und den XServer zu deinstallieren und den Weg über den Auto-Login mit lightdm zu gehen, der im Kodi-Wiki beschrieben ist. Zumal das Kodi Projekt mittlerweile vom Autostart per systemd abrät.

Da OpenMediaVault auf der Maschine läuft, bin ich an die stable (Stretch) gebunden.

Benutzeravatar
MSfree
Beiträge: 10727
Registriert: 25.09.2007 19:59:30

Re: Kodi Hardware-Beschleunigung, was tun mit dem Server?

Beitrag von MSfree » 22.01.2019 08:12:20

vladd hat geschrieben: ↑ zum Beitrag ↑
22.01.2019 06:40:32
Könnte mir auch vorstellen Kodi und den XServer zu deinstallieren und den Weg über den Auto-Login mit lightdm zu gehen
Erkenne den Widerspruch:
lightdm setzt einen XServer voraus. :wink:

Kodi kann man ohne XServer laufen lassen, weil es die SDL-Bibliothek nutzt. Die SDL kann entweder direkt auf die Graphikkarte zugreifen oder, wenn ein XServer läuft, über den XServer gehen.

Benutzeravatar
Lord_Carlos
Beiträge: 5578
Registriert: 30.04.2006 17:58:52
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Dänemark

Re: Kodi Hardware-Beschleunigung, was tun mit dem Server?

Beitrag von Lord_Carlos » 22.01.2019 10:34:36

Den ganzen Intel non-free kuddelmuddel hast du installiert?

Code: Alles auswählen

╔═╗┬ ┬┌─┐┌┬┐┌─┐┌┬┐╔╦╗
╚═╗└┬┘└─┐ │ ├┤ │││ ║║
╚═╝ ┴ └─┘ ┴ └─┘┴ ┴═╩╝ rockt das Forum!

vladd
Beiträge: 23
Registriert: 22.03.2017 09:15:47

Re: Kodi Hardware-Beschleunigung, was tun mit dem Server?

Beitrag von vladd » 22.01.2019 20:31:55

Hab mich nun doch entschieden Buster zu installieren!

Werde meine Neztwerkfreigaben direkt über samba freigeben ohne OpenMediaVault zu installieren -> eine Abhängigkeit weniger.

Nach der Installation von firmware-linux und vainfo bekomme ich folgendes angezeigt :THX:

Code: Alles auswählen

error: can't connect to X server!
libva info: VA-API version 1.3.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_1_2
libva info: va_openDriver() returns 0
vainfo: VA-API version: 1.3 (libva 2.2.0)
vainfo: Driver version: Intel i965 driver for Intel(R) Gemini Lake - 2.2.0
vainfo: Supported profile and entrypoints
      VAProfileMPEG2Simple            :	VAEntrypointVLD
      VAProfileMPEG2Main              :	VAEntrypointVLD
      VAProfileH264ConstrainedBaseline:	VAEntrypointVLD
      VAProfileH264ConstrainedBaseline:	VAEntrypointEncSlice
      VAProfileH264ConstrainedBaseline:	VAEntrypointEncSliceLP
      VAProfileH264Main               :	VAEntrypointVLD
      VAProfileH264Main               :	VAEntrypointEncSlice
      VAProfileH264Main               :	VAEntrypointEncSliceLP
      VAProfileH264High               :	VAEntrypointVLD
      VAProfileH264High               :	VAEntrypointEncSlice
      VAProfileH264High               :	VAEntrypointEncSliceLP
      VAProfileH264MultiviewHigh      :	VAEntrypointVLD
      VAProfileH264StereoHigh         :	VAEntrypointVLD
      VAProfileVC1Simple              :	VAEntrypointVLD
      VAProfileVC1Main                :	VAEntrypointVLD
      VAProfileVC1Advanced            :	VAEntrypointVLD
      VAProfileNone                   :	VAEntrypointVideoProc
      VAProfileJPEGBaseline           :	VAEntrypointVLD
      VAProfileJPEGBaseline           :	VAEntrypointEncPicture
      VAProfileVP8Version0_3          :	VAEntrypointVLD
      VAProfileHEVCMain               :	VAEntrypointVLD
      VAProfileHEVCMain10             :	VAEntrypointVLD
      VAProfileVP9Profile0            :	VAEntrypointVLD
      VAProfileVP9Profile2            :	VAEntrypointVLD
Danke für die Unterstützung!!!

Antworten