Encodage et codecs accélérés par le matériel
Exigences
Les quatre conditions suivantes doivent être vraies pour prendre en charge l'encodage accéléré par le matériel avec Owncast.
- Vous ne fonctionnez pas sur un VPS fourni par un fournisseur d'hébergement, car les serveurs virtuels partagés ne permettent pas d'accès direct au matériel.
- Vous disposez d'un matériel compatible et y avez accès directement.
- Vous avez installé et configuré tous les pilotes et bibliothèques nécessaires pour tirer parti de votre matériel.
- You have a copy of
ffmpegthat is specifically built to utilize these drivers and libraries. Version 4.1.5 or newer is suggested.
Choses à garder à l'esprit
- La plupart des gens ne pourront pas en profiter à moins que vous n'exécutiez votre propre matériel.
- Ce n'est pas parce qu'un codec accéléré par le matériel spécifique s'affiche dans l'administration d'Owncast que cela signifie que votre machine est configurée pour le prendre en charge. Owncast builds that list by running
ffmpeg -encodersand keeping the H.264 encoders it knows how to use. An entry appearing means your copy of ffmpeg advertises that encoder, not that the drivers and hardware behind it are proven to work. - Très peu de ce qui est requis pour faire fonctionner votre matériel a quelque chose à voir avec Owncast. Toutes questions que vous avez au sujet de votre matériel particulier doivent être adressées à votre fabricant de matériel ou à celui qui fournit les pilotes et bibliothèques pour l'utiliser. Il y a probablement déjà beaucoup d'informations en ligne, alors veuillez faire vos recherches.
Matériel compatible
Graphiques Intel
Si vous avez des graphiques intégrés Intel, vous pouvez peut-être les utiliser via VA-API ou Quicksync.
GPU NVIDIA
Les GPU NVIDIA sont équipés d'une unité d'encodage matériel intégrée souvent appelée NVENC. Séparément des cœurs CUDA, NVENC exécute des charges d'encodage sans ralentir l'exécution des graphismes ou des charges CUDA fonctionnant en même temps.
La plupart des GPU NVIDIA modernes sont livrés avec NVENC. Consultez le NVIDIA GPU Support Matrix pour confirmer que votre GPU apparaît dans la liste "encodeur".
GPU AMD
VA-API est pris en charge sur les GPU AMD et ATI par le libva-mesa-driver.
Codecs/bibliothèques compatibles
Intel QuickSync
"Intel Quick Sync Video" est le nom marketing des fonctionnalités de décodage et d'encodage vidéo matériel sur les processeurs Intel avec graphiques intégrés. Les processeurs avec un iGPU Intel peuvent être utilisés pour faire de l'encodage vidéo matériel tant que vous avez libva installé et que l'iGPU des processeurs prend en charge le codec vidéo et la résolution que vous souhaitez utiliser.
Suivez les instructions sur le site d'Intel concernant comment configurer QuickSync sur Linux.
Liens :
VA-API
VA-API (API d'accélération vidéo) est une couche pour prendre en charge l'encodage accéléré par le matériel sur Linux. Vous devez avoir la bibliothèque libva installée pour que cela fonctionne. VA-API n'est pas compatible avec les chipsets ARM.
ffmpeg 5 et versions ultérieures sont pris en charge avec VA-API.
Liens :
Encodeur NVIDIA (nvenc)
Suivez les instructions sur le guide de transcodage ffmpeg de NVIDIA pour installer tous les pilotes et bibliothèques nécessaires. Cela nécessite d'installer un pilote à partir du site de NVIDIA, de télécharger et d'installer le kit d'outils CUDA, de télécharger nv-codec-headers, et de construire ffmpeg. Faites défiler jusqu'à la section intitulée Transcodage accéléré par le matériel avec FFmpeg dans le guide de transcodage NVIDIA pour plus d'informations.
Vous pourrez peut-être trouver une version préconstruite de ffmpeg qui a le support nvenc, cependant cela dépasse le cadre de ce document. Vous avez toujours besoin des pilotes NVIDIA de toute façon.
Liens :
- Instructions de Tal.org sur la construction de ffmpeg avec nvenc
- Script shell qui prétend automatiser le processus sur Ubuntu
OpenMAX (omx)
OpenMAX (h264_omx) is a hardware encoding interface most commonly used on older Raspberry Pi boards. It shows in the admin as "OpenMax (omx) for Raspberry Pi". Your copy of ffmpeg must be built with OpenMAX support, which many distribution builds no longer include.
Apple VideoToolbox
VideoToolbox (h264_videotoolbox) is Apple's hardware video encoding framework. If you run Owncast on macOS, ffmpeg builds from Homebrew and most other sources include it, and it uses the media engine built into Apple hardware.
ffmpeg
Une fois que votre système est configuré pour utiliser les bons pilotes et bibliothèques requis, vous devez vous assurer que votre copie de ffmpeg les prend en charge.
Owncast suggests ffmpeg version 4.1.5 or newer. This is a suggestion, not a hard requirement. Owncast does not refuse to run with an older version, but you may experience issues with video.
$ ffmpeg -version
ffmpeg version 6.1.1 Copyright (c) 2000-2024 the FFmpeg developers
Verify the encoder you expect to use is enabled in your version of ffmpeg. This mirrors what Owncast itself does to populate the codec dropdown in the admin.
$ ffmpeg -hide_banner -encoders | grep 264
V....D libx264 libx264 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 (codec: h264)
V....D h264_v4l2m2m V4L2 mem2mem H.264 encoder wrapper (codec: h264)
V....D h264_vaapi H.264/AVC (VAAPI) (codec: h264)
If the encoder you hope to use is not in this list then you may need to build your own copy of ffmpeg that supports it.
Improve this page
See something missing or incorrect? Edit the English version of this page or help improve translations.
