logo nvidia

NVENC, la codificación de video por hardware de Nvidia

Hasta este momento los usuarios de Linux estamos familiarizados con implementaciones como VDPAU para la decodificación de video por hardware. Pero ¿por dónde anda la codificación por hardware de video en Linux?

Como tantas otras cosas relacionadas con los gráficos, la codificación por hardware de momento está bastante atrasada en Linux. Hace un par de semanas se publicó una beta de los nuevos controladores propietarios de Nvidia y con ellos venía una nueva característica interesante: NVENC. Eso significa que a partir de ahora, las tarjetas gráficas con núcleos Kepler y Maxwell tendrán la posibilidad de codificar por hardware video en alta definición sobre Linux.

Pero como suele pasar, primero hay que adaptar el software de codificación y, en Linux, el programa por excelencia se llama FFmpeg que de momento no tiene soporte para NVENC. Como pasa algunas veces en el mundo del software libre, alguien ha publicado una modificación de FFmpeg con soporte para NVENC.

No obstante, parece ser que la calidad de codificación que se está ofreciendo en estos momentos es bastante pobre en comparación con la calidad que ofrece la codificación por software. Se puede observar una comparación en HardWare.fr.

Teniendo en cuenta que el controlador que permite el acceso al procesador de codificación está en fase beta, habrá que esperar un poco a que evolucione. Y también a que salgan bibliotecas decentes que implementen el acceso a NVENC.

Por último, como curiosidad cabe destacar que para la compilación en Linux de la versión modificada de FFmpeg con NVENC, es necesario bajase e instalar el SDK de Nvidia para Windows para usar uno de los archivos que se instalan.

Se pueden consultar los detalles de esta versión moficiadad de FFmpeg en Github. Vía Phoronix.