Si tienes una tarjeta gráfica Nvidia y realizas screencasting te será muy útil conocer el codec nvenc. Normalmente es la CPU quien asume la pesada tarea de codificación de vídeo. Nvenc permite a la GPU asumir la tarea de codificación y liberar a la CPU de dicha carga. El resultado final es obvio: mayor rapidez y fluidez en nuestras grabaciones.
No es la primera vez que hablamos de programas o incluso scripts libav/ffmpeg para realizar screencasting. Útimamente el programa que más utilizo como front-end es SimpleScreenRecoder, que hace honor a su nombre y tiene todo lo que necesito para realizar grabaciones de escritorio sencillas. El software que utilizo a nivel de backend es ffmpeg.
Antes de nada, podemos comprobar si tenemos soporte para el codec nvenc introduciendo en terminal ffmpeg -encoders | grep NVENC
En cuanto a la configuración del driver de Nvidia, desactivamos Allow Flipping y Sync to VBlanck para una grabación más fluída:
Iniciada la aplicación SimpleScreenRecorder, procedemos a configurar los distintos parámetros. En la segunda pantalla de configuración podremos seleccionar el codec nvenc:
A modo de ejemplo, con la configuración de screencasting mostrada en los anteriores pantallazos (1080p a 60fps con codec nvenc, etc…) podemos obtener un resultado como el siguiente:
Dicho sea de paso, primer vídeo en el nuevo canal del blog en Youtube 😉