Hardware-beschleunigte Kodierung & Codecs
Anforderungen
Alle vier dieser Punkte müssen zutreffen, um die hardwarebeschleunigte Kodierung mit Owncast zu unterstützen.
- Sie verwenden nicht einen VPS, der von einem Hosting-Anbieter bereitgestellt wird, da Shared Virtual Server keinen direkten Zugriff auf die Hardware ermöglichen.
- Sie haben kompatible Hardware und direkten Zugriff darauf.
- Sie haben alle benötigten Treiber und Bibliotheken installiert und konfiguriert, um Ihre Hardware nutzen zu können.
- You have a copy of
ffmpegthat is specifically built to utilize these drivers and libraries. Version 4.1.5 or newer is suggested.
Was zu beachten ist
- Die meisten Menschen werden davon nicht profitieren können, es sei denn, Sie betreiben Ihre eigene Hardware.
- Nur weil ein spezifischer hardwarebeschleunigter Codec im Owncast-Admin angezeigt wird, bedeutet das nicht, dass Ihre Maschine so konfiguriert ist, dass sie diesen unterstützt. 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. - Sehr wenig von dem, was erforderlich ist, um Ihre Hardware funktionsfähig zu machen, hat etwas mit Owncast zu tun. Alle Fragen, die Sie zu Ihrer speziellen Hardware haben, sollten an Ihren Hardware-Hersteller oder an denjenigen weitergeleitet werden, der die Treiber und Bibliotheken bereitstellt, um diese zu nutzen. Es gibt wahrscheinlich online bereits viele Informationen, also bitte recherchieren Sie.
Kompatible Hardware
Intel Grafik
Wenn Sie Intel integrierte Grafik haben, können Sie möglicherweise VA-API oder Quicksync verwenden.
NVIDIA GPUs
NVIDIA GPUs werden mit einer Hardware-Kodierereinheit ausgeliefert, die oft als NVENC bezeichnet wird. Getrennt von den CUDA-Kernen führt NVENC Kodierungsarbeiten aus, ohne die Ausführung von Grafik- oder CUDA-Arbeiten, die gleichzeitig laufen, zu verlangsamen.
Die meisten modernen NVIDIA GPUs werden mit NVENC ausgeliefert. Überprüfen Sie die NVIDIA GPU Support Matrix, um zu bestätigen, dass Ihre GPU in der "Encoder"-Liste erscheint.
AMD GPUs
VA-API wird auf AMD- und ATI-GPUs vom libva-mesa-driver unterstützt.
Kompatible Codecs/Bibliotheken
Intel QuickSync
"Intel Quick Sync Video" ist der Marketingname für die Hardware-Decodierungs- und Kodierungsfunktionen auf Intel-Prozessoren mit integrierter Grafik. Prozessoren mit einem Intel iGPU können zur hardwarebasierten Video-Kodierung verwendet werden, solange Sie libva installiert haben und die iGPU des Prozessors den gewünschten Video-Codec und die Auflösung unterstützt.
Befolgen Sie die Anweisungen auf Intels Seite, wie Sie QuickSync unter Linux einrichten.
Links:
VA-API
VA-API (Video Acceleration API) ist eine Schicht zur Unterstützung der hardwarebeschleunigten Kodierung unter Linux. Sie benötigen die libva-Bibliothek, damit es funktioniert. VA-API ist nicht mit ARM-Chipsätzen kompatibel.
ffmpeg 5 und neuere Versionen werden mit VA-API unterstützt.
Links:
NVIDIA Encoder (nvenc)
Befolgen Sie die Anweisungen im NVIDIA ffmpeg-Transkodierungsleitfaden, um alle erforderlichen Treiber und Bibliotheken zu installieren. Dies erfordert die Installation eines Treibers von der NVIDIA-Website, das Herunterladen und Installieren des CUDA-Toolkits, das Herunterladen der nv-codec-headers und das Erstellen von ffmpeg. Scrollen Sie zu dem Abschnitt mit dem Titel Hardware-beschleunigte Transkodierung mit FFmpeg im NVIDIA-Transkodierungsleitfaden für weitere Informationen.
Sie können möglicherweise eine vorgefertigte Version von ffmpeg finden, die nvenc-Unterstützung hat, allerdings liegt das außerhalb des Rahmens dieses Dokuments. Sie benötigen dennoch die NVIDIA-Treiber.
Links:
- Tal.org-Anweisungen zum Erstellen von ffmpeg mit nvenc
- Shell-Skript, das behauptet, den Prozess unter Ubuntu zu automatisieren
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
Sobald Ihr System konfiguriert ist, um die richtigen Treiber und Bibliotheken zu verwenden, müssen Sie sicherstellen, dass Ihre Kopie von ffmpeg dies unterstützt.
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.
