Hardware y Configuraciones Compatibles
- GPU AMD Radeon RX6000 (RDNA2), RX7000 (RDNA3) y RX9000 (RDNA4) o superior
- Windows 10 o posterior
- Soporte limitado disponible en Ubuntu 22.04 y versiones posteriores.
Nota: estos no son límites estrictos. La codificación de hardware a través de VCN podría funcionar en GPUs de series más antiguas y sistemas operativos anteriores, pero esto no es oficialmente compatible.
Activando Soporte
El soporte para el codificador AMD VCN se habilita en las preferencias, en la pestaña de video. Si tu sistema no es compatible, la opción estará deshabilitada.
En Linux, necesitamos los controladores oficiales de amdgpu-pro.
- Descargar los controladores más recientes desde: AMD Radeon Software for Linux versión 24.20 o posterior es necesario para usar el codificador VCN.
- Ejecutar el siguiente comando:
sudo dpkg -i amdgpu-install_VERSION_all.deb
(donde la versión es similar a: 6.3.60302-1) - Ejecutar:
sudo amdgpu-install -y --usecase=graphics,amf --accept-eula
- Reiniciar el equipo.
Para instalaciones nativas, el codificador VCN debería estar disponible en la interfaz gráfica de HandBrake.
Si estás utilizando una instalación Flatpak, deberás realizar algunos pasos adicionales:
- Si no tienes Flatseal instalado, deberás instalarlo.
- Abrir FlatSeal y elegir la aplicación HandBrake.
- En la sección «Other Files», agregar una carpeta «/opt».
- En la sección «Environment – Variables», cambia
LD_LIBRARY_PATH=/app/extensions/lib:/opt/amdgpu-pro/lib/x86_64-linux-gnu
añadiendo:/opt/amdgpu-pro/lib/x86_64-linux-gnu
al final. Nota: en distros no-ubuntu, esta ruta puede ser diferente, por ejemplo, en RHEL/SLE podría estar en:/opt/amdgpu-pro/lib64
.
Ahora, si ejecutas HandBrake, deberías ver las opciones VCN disponibles.
Preajustes
Los siguientes preajustes están disponibles en la categoría «Hardware» en el menú de preajustes:
- H.265 VCN 2160P 4K
- H.265 VCN 1080p
Estos son un buen punto de partida para configurar HandBrake para usar estos codificadores.
Limitaciones Conocidas
- El codificador AV1 que se incluye con los productos Navi 3.x requiere una resolución que sea divisible por 64 tanto en ancho como en altura. Asegúrate de que la resolución de salida después de recortar siga esta regla.
Rendimiento
HandBrake admite el codificador de hardware AMD VCN, pero NO admite el decodificador de hardware.
El CPU aún se utilizará para:
- Decodificación de video
- Todos los filtros de video
- Codificación de audio
- Motor de HandBrake, sincronización A/V, etc.
- Subtítulos
- Multiplexado
Estas operaciones ocurren en paralelo a medida que avanza el trabajo. Por lo tanto, es normal ver una alta utilización de la CPU (o incluso un 100%) incluso cuando se usa VCN.
También es común, especialmente en hardware de gama baja o más antiguo, que el CPU sea un cuello de botella, lo que provocará un rendimiento inferior al esperado. Para minimizar este efecto, desactiva los filtros que no necesites.
Opciones Avanzadas
El codificador de hardware AMD VCN tiene un conjunto limitado de opciones avanzadas de codificación. En general, no se recomienda cambiar estos parámetros, ya que los preajustes integrados ofrecen un buen rango de opciones para usos comunes.
Si usas la interfaz gráfica de HandBrake, puedes establecer las opciones en el campo de Opciones Avanzadas en la pestaña de Video con el siguiente formato:
option1=value1:option2=value2
Si usas la interfaz de línea de comandos de HandBrake, usa el parámetro --encopts
de la siguiente manera:
--encopts="option1=value1:option2=value2"
Tipos de valor de las opciones
Se admiten los siguientes tipos de valor (cada opción solo acepta un tipo de valor):
- integer – Un número que puede escribirse sin un componente fraccionario o decimal.
- boolean – 0 significa desactivado (o deshabilitado), 1 significa activado (o habilitado).
- string – Una cadena alfanumérica de caracteres. Consulta los comentarios de la opción para los valores aceptables.
Lista de Opciones
Opción | Tipo | H.264 | H.265 | Detalle |
---|---|---|---|---|
usage | string | ✓ | ✓ | Opciones: transcoding, ultralowlatency, lowlatency, webcam |
coder | string | ✓ | Selección del codificador. Valores: auto (predeterminado), cabac, cavlc. | |
preanalysis | boolean | ✓ | ✓ | Establecer en 1 para habilitar el análisis preliminar, 0 para deshabilitar (predeterminado). |
vbaq | boolean | ✓ | ✓ | Establecer en 1 para habilitar la cuantización adaptativa basada en varianza, 0 para deshabilitar (predeterminado). |
enforce_hrd | boolean | ✓ | ✓ | Establecer en 1 para aplicar el decodificador de referencia hipotética, 0 para deshabilitar (predeterminado). |
max_au_size | int | ✓ | ✓ | Tamaño máximo de la unidad de acceso para el control de tasa, en bits. Predeterminado: 0 (automático). |
me_half_pel | boolean | ✓ | ✓ | Establecer en 1 para habilitar la estimación de movimiento a medio píxel (predeterminado), 0 para deshabilitar. |
me_quarter_pel | boolean | ✓ | ✓ | Establecer en 1 para habilitar la estimación de movimiento a un cuarto de píxel (predeterminado), 0 para deshabilitar. |
bf_delta_qp | int | ✓ | Delta QP de la B-Picture. La escala de valores es -10–10. Predeterminado: 4. | |
bf_ref | boolean | ✓ | Establecer en 1 para habilitar los B-Frames de referencia (predeterminado), 0 para deshabilitar. | |
bf_ref_delta_qp | int | ✓ | Delta QP de la B-Picture de referencia. La escala de valores es -10–10. Predeterminado: 4. | |
intra_refresh_mb | int | ✓ | Número de bloques macro Intra-Refresh por ranura. Predeterminado: 0 (automático). | |
header_insertion_mode | string | ✓ | Opciones: none, gop, idr | |
gops_per_idr | int | ✓ | GOPs por IDR. 0 significa que no se insertará IDR. |
Próximos pasos
Continúa con Ajustar la calidad.
Este artículo es parte de la Documentación de HandBrake y fue escrito por Bradley Sepos (BradleyS). Únete a nosotros en GitHub para contribuir con tus ideas y sugerencias, y para proponer correcciones.
HandBrake Team. CC BY-SA 4.0.