¿Qué deberías comprobar cuando la transcodificación por hardware H.264 funciona, pero la de AV1 no?

Eva Wong es la Redactora técnica y manitas residente en ZimaSpace. Una geek de toda la vida con pasión por los homelabs y el software de código abierto, se especializa en traducir conceptos técnicos complejos en guías accesibles y prácticas. Eva cree que el autoalojamiento debe ser divertido, no intimidante. A través de sus tutoriales, empodera a la comunidad para desmitificar las configuraciones de hardware, desde construir su primer NAS hasta dominar los contenedores Docker.

Que H.264 funcione demuestra que la ruta de la GPU funciona para H.264, pero no demuestra que el mismo hardware admita la decodificación, codificación, el perfil o la profundidad de bits de AV1.

La transcodificación por hardware es una cadena de operaciones específicas del códec: decodificar la fuente, aplicar escalado o mapeo de tonos y codificar el formato de salida seleccionado para el cliente. Las GPU antiguas y de generaciones intermedias suelen acelerar H.264, pero solo admiten la decodificación de AV1 por software, la decodificación de AV1 por hardware sin codificación de AV1, o ninguna de las dos. Empieza por identificar qué etapa de AV1 falla antes de cambiar la configuración global de aceleración.

Determina si falla la decodificación o la codificación de AV1

Inspecciona el comando activo de FFmpeg y el motivo de la transcodificación. Registra el códec de entrada, el decodificador de hardware, la ruta de filtros, el códec de salida, el codificador de hardware y la primera línea del error.

Un servidor puede decodificar AV1 y codificar H.264, o decodificar H.264 e intentar codificar AV1. Son capacidades diferentes. En un debate sobre hardware de Jellyfin se menciona un sistema en el que las rutas AV1 QSV y VA-API eran incompatibles con la GPU instalada, mientras que otras rutas de hardware seguían siendo utilizables.

Ejecuta una prueba de entrada AV1 a salida H.264 y otra de entrada H.264 a salida AV1 solo cuando el servidor multimedia ofrezca ambas opciones. Si la primera funciona y la segunda falla, existe decodificación de AV1, pero no codificación de AV1.

Comprueba la capacidad de hardware según la dirección y el perfil del códec

Consulta la generación exacta de la GPU y el ID del dispositivo, y compara por separado la compatibilidad de decodificación y codificación. Incluye el perfil AV1 Main, 8 bits frente a 10 bits, el formato de crominancia, la resolución y el nivel máximo.

La compatibilidad con un códec puede ser parcial incluso en dispositivos más recientes. Un informe del controlador de medios de Intel muestra que la decodificación de AV1 por hardware fallaba en Tiger Lake mientras que la decodificación por software funcionaba, lo que demuestra que una ruta de código AV1 disponible puede seguir fallando con una combinación concreta de kernel y controlador.

No deduzcas la capacidad de AV1 a partir del uso de H.264, la familia del modelo de GPU o una casilla de la aplicación. Confirma el perfil exacto de la fuente y el punto de entrada de salida solicitado comparándolos con lo que informa la pila instalada.

Lee los perfiles de decodificación y codificación expuestos por el host

Ejecuta la herramienta de capacidades de la plataforma contra el dispositivo de renderizado o CUDA previsto. Para VA-API, captura la salida de perfiles y puntos de entrada; para NVIDIA, captura el controlador instalado y los decodificadores y codificadores disponibles en FFmpeg.

AV1 puede aparecer para la decodificación, pero no para la codificación, o un modo de codificación de bajo consumo puede requerir un firmware que H.264 no necesita. El repositorio del controlador de medios de Intel señala que el control de tasa de bits de bajo consumo para AVC, HEVC, VP9 y AV1 puede depender de la disponibilidad del firmware HuC.

Si el host no expone el punto de entrada de AV1 necesario, detente en la capa del host. Cambiar los permisos del contenedor o la configuración del servidor multimedia no puede crear un bloque de códec que el kernel y el controlador de espacio de usuario no proporcionen.

-15% OFF

Compara las versiones del kernel, el firmware y el controlador de espacio de usuario

Registra el kernel, el paquete de firmware, el controlador de espacio de usuario de la GPU, la pila de libva o CUDA, el tiempo de ejecución del contenedor y la compilación de FFmpeg. H.264 puede seguir funcionando de forma estable después de una actualización mientras una ruta más reciente de AV1 presenta regresiones.

Las primeras implementaciones de Intel Arc informaron de fallos de decodificación y codificación mediante VA-API que afectaban a AV1 y otros códecs, hasta que maduró la pila circundante del kernel y del controlador de medios. El caso ilustra por qué la compatibilidad de la pila de controladores es más importante en una ruta de códec más reciente.

Compara las versiones actuales con la última configuración conocida como funcional y con la combinación de paquetes compatible con la distribución. Evita mezclar un controlador de medios de espacio de usuario nuevo con un kernel antiguo incompatible o sustituir individualmente componentes empaquetados de FFmpeg.

Prueba el mismo dispositivo y la misma compilación de FFmpeg dentro del contenedor

Entra en el contenedor del servidor multimedia y verifica el nodo de renderizado o el dispositivo NVIDIA, los grupos numéricos, las bibliotecas del controlador y la lista de códecs de FFmpeg incluido. La capacidad del host no demuestra que el contenedor utilice la misma pila.

Ejecuta una muestra AV1 breve y conocida como funcional mediante decodificación por hardware y una salida H.264 sencilla, sin HDR, subtítulos ni escalado. Después repite la prueba con el binario de FFmpeg de la aplicación y la selección real de dispositivo.

La guía de ZimaSpace sobre cómo comprobar la transcodificación por hardware ofrece una prueba complementaria para demostrar que el contenedor utiliza el dispositivo esperado en lugar de cambiar silenciosamente al software.

Separa el procesamiento de vídeo AV1 de los problemas del contenedor de entrega

Una fuente AV1 puede decodificarse correctamente, pero fallar cuando el cliente requiere conversión de audio, otro tipo de segmento HLS, procesamiento HDR o un contenedor de entrega que no admita la combinación elegida.

Un problema de Jellyfin Web descubrió que la reproducción de AV1 con transcodificación de audio fallaba con una opción de contenedor HLS, pero funcionaba al activar fMP4-HLS, lo que demuestra que el contenedor de entrega puede ser la capa que falla.

Repite la prueba con un archivo AV1 SDR sencillo, audio compatible, sin subtítulos y salida H.264. Añade la conversión de audio, el mapeo de tonos HDR, los subtítulos y el perfil normal del cliente de uno en uno.

Usa una alternativa por software o una salida compatible solo después de clasificar el problema

Si la GPU admite la decodificación de AV1, pero no su codificación, mantén la decodificación por hardware y codifica la salida del cliente como H.264 o HEVC cuando sea compatible. Si no existe decodificación de AV1, la decodificación por software puede funcionar con resoluciones bajas, pero ser demasiado lenta para 4K con alta tasa de bits.

La compatibilidad del cliente también influye en la utilidad de la salida AV1. Jellyfin Web ha registrado perfiles de navegador que siguen seleccionando H.264 porque la compatibilidad del cliente con AV1 sigue dependiendo del perfil.

La reparación se completa cuando el archivo AV1 probado utiliza el decodificador de hardware previsto o una alternativa de software medida, el códec de salida coincide con el cliente, la velocidad de transcodificación se mantiene por encima del tiempo real y las sesiones H.264 siguen funcionando después del cambio específico para AV1.

Soporte y Consejos

Más para leer

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.