24
décembre
2021
16:20

Configuration de l'accélération vidéo matérielle: brèves instructions

24 décembre 2021 16:20

J'ai configuré l'accélération vidéo sur mon netbook (processeur AMD C-30 monocœur, carte vidéo AMD Radeon HD 6250) et je partage mon expérience.

Pour la lecture vidéo accélérée par le matériel, trois conditions doivent être remplies :
1) Accélération matérielle grâce à la carte graphique avec prise en charge de l'accélération matérielle et des pilotes de la carte graphique,
2) Activez VA et VDPAU (vous devez vérifier qu'ils sont activés),
3) Configuration du navigateur Web Mozilla Firefox.

J'ai suivi les instructions selon le guide sur https://wiki.archlinux.org/title/
Accélération_vidéo_matériel#ATI/AMD

Dans l'ordre :

1) Installé les packages nécessaires (depuis que j'ai AMD - j'ai utilisé amdgpu, et pour les graphiques Intel intégrés, vous aurez besoin du package Intel-prime

Ubuntu uniquement :

sudo apt install ubuntu-restricted-extras

Pour tous les systèmes d'exploitation Linux :

sudo apt-get install linux-firmware mpv vdpauinfo

Si graphiques AMD :

sudo apt-get install xserver-xorg-video-amdgpu 

Si graphiques Intel :

sudo apt install intel-gpu-tools
sudo intel_gpu_top

Si les graphiques nVidia - utilisez soit un pilote propriétaire avec un code source fermé ("nvidia"), soit Pilote Open Source "nouveau"- Je le recommande. Sur le système d'exploitation basé sur Ubuntu, le pilote Nouveau est intégré au système.
Il vous suffit de vérifier le fichier /etc/X11/xorg.conf, quel pilote est utilisé, "nvidia" ou "nouveau". Dans le cas d'ATI/AMD, le fichier contient la ligne "Driver " amdgpu".

Ajout du 18/08/2023 : la configuration du serveur X se trouve dans le dossier /usr/share/X11/xorg.conf.d и файле /etc/X11/xorg.conf.
La pratique a montré qu'il est souhaitable d'avoir un fichier xorg.conf (les commandes ne fonctionnent pas sans lui inxi -Gxx или inxi -G --extra 2).
Vous devez redémarrer, sélectionner des options de récupération supplémentaires (« Options de récupération avancées ») et entrer dans le menu « racine », où vous exécutez les commandes :

X -configure
cp /root/xorg.conf.new /etc/X11/xorg.conf

2) Redémarrez. Nous vérifions sur toute vidéo téléchargée sur Internet (fichier .mp4) que le système fonctionne accélération vidéo matérielle_ (il est conseillé de prendre un fichier de test avec une résolution de 720p, par exemple 1280x720, une fréquence d'images de 25 ips et une durée ne dépassant pas 2 minutes) dans le programme de lecture vidéo.

Exemples de fichiers vidéo :Exemple : fichiers MP4.

wget url_видео_файла

mpv --hwdec=auto "filename.mp4" 

La lecture du clip vidéo commencera dans une fenêtre plein écran. Vous pouvez estimer la fréquence d’images à l’œil nu pour voir s’il y a des écarts.
Une fois la lecture terminée, le focus d'entrée reviendra au terminal, où vous devrez lire les 2 dernières lignes :
S'il y a une mention vaapi, puis accélération matérielle de la carte vidéo et du pilote fonctionne.

En cas d'erreurs de lecture, utilisez la version inxi de la carte vidéo et recherchez une solution sur Internet avec des pilotes :

lspci | grep -i affichage
inxi -Gxxz

S'il n'y a pas d'accélération vidéo matérielle, les points restants n'ont aucun sens ; nous recherchons des chauffeurs tiers.
(Guide d'installation des pilotes pour les cartes vidéo nVidia dans Ubuntu 20.04).
L'accélération matérielle de mon lecteur vidéo s'est activée immédiatement. Je continue...

Chèque VAINFO

sudo apt-get install vainfo 
vainfo

Le résultat doit montrer que la carte vidéo prend en charge au moins les codecs principaux : mpeg2 et h.264.

VAProfilH264, etc. :

libva info: VA-API version 1.7.0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/r600_drv_video.so
libva info: Found init function __vaDriverInit_1_7
libva info: va_openDriver() returns 0
vainfo: VA-API version: 1.7 (libva 2.6.0)
vainfo: Driver version: Mesa Gallium driver 21.2.6 for AMD PALM (DRM 2.50.0 / 5.4.0-139-generic, LLVM 12.0.0)
vainfo: Supported profile and entrypoints
      VAProfileMPEG2Simple : VAEntrypointVLD
      VAProfileMPEG2Main : VAEntrypointVLD
      VAProfileVC1Simple : VAEntrypointVLD
      VAProfileVC1Main : VAEntrypointVLD
      VAProfileVC1Advanced : VAEntrypointVLD
      VAProfileH264ConstrainedBaseline: VAEntrypointVLD
      VAProfileH264Main : VAEntrypointVLD
      VAProfileH264High : VAEntrypointVLD
      VAProfileNone : VAEntrypointVideoProc

Si l'erreur -1 se produit, téléchargez et installez vdpau-va-driver.

Remarque : VA est une interface de programmation d'application (API) spéciale développée par Intel pour utiliser l'accélération matérielle. (API d'accélération vidéo).

Chèque VDPAU

grep -iE 'vdpau | dri driver' /var/log/Xorg.0.log

Il faudrait écrire que VDPAU pilote (dans ce cas RADEON) installé :

[61.505](II)RADEON(0) : [DRI2] Pilote DRI : r600
[61.505](II)RADEON(0) : [DRI2] Pilote VDPAU : r600

Remarque : VDPAU est une interface logicielle open source de décoration vidéo sous Unix. (API de décodage vidéo et de présentation pour Unix)

3)Configuration de Mozilla FireFox pour la lecture vidéo YouTube matérielle :

Tout d'abord, vous devez installer l'extension "h264ify"  :
https://addons.mozilla.org/ru/
firefox/addon/h264ify/

Deuxièmement, vérifiez que le conteneur WebRender est activé et exécuté dans FireFox.

à propos de :assistance

Dans la rubrique "Journal des solutions" lorsque l'accélération est activée par l'appareil, les éléments suivants doivent être utilisés :valeurs:

  • dans la colonne HW_COMPOSITING - disponible
  • dans la colonne WebRender - disponible

Configurons un peu la configuration :
à propos de : configuration
puis j'ai changé les clés :
media.ffmpeg.vaapi.enabled=vrai(activer l'accélération matérielle de la lecture FFmpeg à l'aide de VAAPI)
media.navigator.mediadatadecoder_vpx_enabled=vrai(permet l'accélération matérielle de WebRTC - vidéoconférence)
media.rdd-vpx.enabled=faux(désactiver le décodeur logiciel intégré VP8/VP9)
media.peerconnection.video.vp9_enabled=faux(désactivation du codec lent VP9 - ajout à partir du 05/07/2024)

Vérifiez dans le panneau des extensions que l'extension est activée dans FireFox h264ify. Redémarrez FireFox.
Une fois les paramètres spécifiés, la vidéo est lue avec une faible charge CPU.

P.S. Certaines instructions recommandent d'ajouter une variable d'exportation à ~/.profile , des instructions pour Wayland ou Xorg. Je n'ai pas fait ça :mode d'emploi.

4) Désactiver le compositeur de fenêtres Compton(consomme des ressources CPU - note du 05/07/2024) et redémarrez

 sudo apt remove compton && sudo shutdown -r now

Qu'est-ce qui était et est devenu:

  • avant d'activer l'accélération vidéo matérielle : YouTube n'a pas été lu dans la fenêtre (image figée, audio uniquement). L'utilisation du processeur monocœur est d'environ 90 %.
  • lorsque l'accélération matérielle AMD Radeon HD est activée : la vidéo est lue en vidéo 480p dans une fenêtre sans sauter 25 ips, et en vidéo plein écran, elle est de 25 ips ; résolution vidéo 720p plein écran - 25 ips ; résolution maximale Full HD 1080p - fréquence d'images d'environ 25 ips (au début de la lecture, il y a environ 10 à 15 secondes de chutes d'images - 10 à 15 images par seconde).

Sources :
https://wiki.archlinux.org/title/Hardware_video_acceleration
https://wiki.archlinux.org/title/Firefox#Accélération_vidéo_matériel
*https://discourse.ubuntu.com/t/enabling-accelerated-video-decoding-in-firefox-on-ubuntu-21-04/22081



Publications connexes