Succes met H.264 bewijst dat het GPU-pad voor H.264 werkt, maar bewijst niet dat dezelfde hardware AV1-decodering, -codering, het profiel of de bitdiepte ondersteunt.
Hardwaretranscodering is een keten van codec-specifieke bewerkingen: de bron decoderen, schalen of tonemapping toepassen en het uitvoerformaat coderen dat voor de client is geselecteerd. Oudere en GPU’s van middelbare generaties versnellen H.264 vaak, terwijl ze alleen softwarematige AV1-decodering, hardwarematige AV1-decodering zonder AV1-codering of geen van beide ondersteunen. Bepaal eerst welke AV1-fase faalt voordat je de algemene versnellingsinstellingen wijzigt.
Bepaal of AV1-decodering of AV1-codering faalt
Bekijk de actieve FFmpeg-opdracht en de reden voor de transcodering. Noteer de invoercodec, hardwaredecoder, filterroute, uitvoercodec, hardware-encoder en de eerste foutregel.
Een server kan AV1 decoderen en H.264 coderen, of H.264 decoderen en proberen AV1 te coderen. Dat zijn verschillende mogelijkheden. In een hardwarediscussie over Jellyfin wordt een systeem beschreven waarop AV1 QSV- en VA-API-paden niet werden ondersteund door de geïnstalleerde GPU, terwijl andere hardwarepaden bruikbaar bleven.
Voer één test uit van AV1-invoer naar H.264-uitvoer en één test van H.264-invoer naar AV1-uitvoer, maar alleen wanneer de mediaserver beide opties beschikbaar stelt. Als de eerste slaagt en de tweede faalt, is AV1-decodering beschikbaar, maar AV1-codering niet.
Controleer hardwaremogelijkheden per codec-richting en profiel
Zoek de exacte GPU-generatie en apparaat-ID op en vergelijk decodeer- en codeerondersteuning afzonderlijk. Neem het AV1 Main-profiel, 8-bits versus 10-bits, het chromaformaat, de resolutie en het maximale level mee.
Codec-ondersteuning kan zelfs op nieuwere apparaten gedeeltelijk zijn. Een rapport in de Intel media-driver laat zien dat hardwarematige AV1-decodering op Tiger Lake faalde terwijl softwarematige decodering werkte. Dit toont aan dat een aanwezig AV1-codecpad toch kan falen bij een specifieke combinatie van kernel en driver.
Leid AV1-ondersteuning niet af uit H.264-gebruik, de GPU-familie of een selectievakje in de applicatie. Controleer het exacte bronprofiel en de gevraagde uitvoer-entrypoint aan de hand van wat de geïnstalleerde stack meldt.
Lees de beschikbare decodeer- en codeerprofielen van de host uit
Voer de mogelijkhedenstool van het platform uit op het beoogde render- of CUDA-apparaat. Leg voor VA-API de profiel- en entrypoint-uitvoer vast; leg voor NVIDIA de geïnstalleerde driver en de beschikbare decoders en encoders van FFmpeg vast.
AV1 kan voor decodering verschijnen, maar niet voor codering, of een energiezuinige codeermodus kan firmware vereisen die voor H.264 niet nodig is. De repository van Intel media-driver vermeldt dat energiezuinige bitratebesturing voor AVC, HEVC, VP9 en AV1 afhankelijk kan zijn van beschikbaarheid van HuC-firmware.
Als de host het vereiste AV1-entrypoint niet beschikbaar stelt, stop dan op hostniveau. Het wijzigen van containermachtigingen of mediaserverinstellingen kan geen codecblok creëren dat de kernel en userspacedriver niet leveren.
Vergelijk versies van kernel, firmware en userspacedriver
Noteer de kernel, het firmwarepakket, de GPU-userspacedriver, de libva- of CUDA-stack, de containerruntime en de FFmpeg-build. H.264 kan na een update stabiel blijven terwijl een nieuwer AV1-pad achteruitgaat.
Bij vroege implementaties van Intel Arc werden VA-API-decodeer- en codeerproblemen gemeld die AV1 en andere codecs betroffen, totdat de omliggende kernel- en media-driverstack verder was ontwikkeld. Deze casus laat zien waarom compatibiliteit van de driverstack belangrijker is voor een nieuwer codecpad.
Vergelijk de huidige versies met de laatst bekende werkende configuratie en de ondersteunde pakketcombinatie van de distributie. Vermijd het combineren van een nieuwe userspace-mediadriver met een incompatibele oude kernel en vervang pakketgeleverde FFmpeg-componenten niet afzonderlijk.
Test hetzelfde apparaat en dezelfde FFmpeg-build in de container
Open de mediaservercontainer en controleer het renderknooppunt of NVIDIA-apparaat, de numerieke groepen, de driverbibliotheken en de codecslijst van de meegeleverde FFmpeg. Mogelijkheden op de host bewijzen niet dat de container dezelfde stack gebruikt.
Voer een kort, bekend goed AV1-voorbeeld uit met hardwarematige decodering en eenvoudige H.264-uitvoer zonder HDR, ondertiteling of schalen. Herhaal dit vervolgens met het FFmpeg-binaire bestand van de applicatie en de daadwerkelijke apparaatselectie.
De ZimaSpace-handleiding voor het controleren van hardwaretranscodering biedt de aanvullende test om te bewijzen dat de container het verwachte apparaat gebruikt in plaats van stilletjes terug te vallen op software.
Scheid AV1-videobewerking van problemen met de leveringscontainer
Een AV1-bron kan correct worden gedecodeerd, maar toch falen wanneer de client audioconversie, een ander HLS-segmenttype, HDR-verwerking of een leveringscontainer vereist die de gekozen combinatie niet ondersteunt.
In een Jellyfin Web-issue bleek dat AV1-weergave met audiotranscodering faalde bij één HLS-containerkeuze, maar werkte wanneer fMP4-HLS was ingeschakeld. Dit toont aan dat de leveringscontainer de falende laag kan zijn.
Test opnieuw met een eenvoudig SDR-AV1-bestand, compatibele audio, zonder ondertiteling en met H.264-uitvoer. Voeg audioconversie, HDR-tonemapping, ondertiteling en het normale clientprofiel één variabele per keer toe.
Gebruik pas na classificatie een softwarematige terugval of compatibele uitvoer
Als de GPU AV1-decodering maar geen AV1-codering ondersteunt, behoud dan hardwarematige decodering en codeer de clientuitvoer als H.264 of HEVC wanneer dit wordt ondersteund. Als AV1-decodering ontbreekt, kan softwarematige decodering werken voor lagere resoluties, maar voor 4K met een hoge bitrate kan deze te traag zijn.
Ook clientondersteuning bepaalt of AV1-uitvoer nuttig is. Jellyfin Web houdt browserprofielen bij die H.264 blijven selecteren omdat AV1-clientondersteuning afhankelijk blijft van het profiel.
De reparatie is voltooid wanneer het geteste AV1-bestand de beoogde hardwaredecoder of een gemeten softwarematige terugval gebruikt, de uitvoercodec overeenkomt met de client, de transcodeersnelheid boven realtime blijft en H.264-sessies blijven werken na de AV1-specifieke wijziging.
Ondersteuning & Tips
Meer om te lezen

Waarom herstelt een Docker-volume de bestandsinhoud, maar gaan uitgebreide bestandskenmerken verloren?
Een diagnose van volumeterugzetting met een inventaris van xattrs, tar- en Rsync-opties, naamruimten, ondersteuning voor bestemmingen, machtigingen, labels, app-metagegevens en tests.

Waarom behoudt een actieve container zijn oude geheugenlimiet nadat het Compose-bestand is gewijzigd?
Een diagnose van geheugenlimieten met aandacht voor actieve cgroups, herstarten versus opnieuw aanmaken, Compose-velden, harde en zachte limieten, bovenliggende scopes, swap en runtime-heaps.

Waarom maakt het herstarten van een reverse proxy elke sessie voor één zelfgehoste app ongeldig?
Een diagnose van sessieverlies met aandacht voor de reikwijdte van herstarts, cookie-eigenaarschap, geheimenrotatie, cachegestuurde sessies, sticky routing, authenticatiegateways en herstel.

