comunidades

Cómo hacer que la codificación de vídeo asistida por GPU (NVENC) de NVIDIA funcione en Ubuntu

La codificación de archivos de vídeo puede ser una carga completa. Incluso con las CPUs más rápidas del mercado, el proceso puede durar hasta aproximadamente el mismo tiempo que el vídeo en sí (por ejemplo, treinta minutos de codificación para un vídeo de treinta minutos). No importa qué programas de codificación le ofrezcan, siempre están limitados por el poder de sus chips.

Para resolver este problema, las tarjetas NVIDIA tienen un pequeño truco que han estado utilizando desde el lanzamiento de las tarjetas gráficas de la serie GeForce 600 en 2012, llamadas NVENC. Esto le permite utilizar la GPU para codificar secuencias de vídeo. Usando NVENC, no sólo puede convertir vídeos más rápidamente que con una CPU convencional, sino que también puede transmitir vídeo a través de software como Open Broadcaster Software (OBS) mientras reduce o elimina completamente el tartamudeo y el retraso. Como Linux no tiene NVENC por defecto, tendrás que hacerlo funcionar a mano. Aquí explico cómo se puede hacer esto en distribuciones basadas en Ubuntu.

Primero lo primero

Para que el NVENC de NVIDIA funcione en Ubuntu, primero tienes que descargar el kit de desarrollo de software (SDK) de NVIDIA Video Codec de este sitio . Necesitará crear una cuenta, pero el proceso es bastante sencillo. No necesitas todos los archivos en el ZIP, así que ahora vamos a navegar a “Samples/common/inc.” Copie todo lo que vea en su carpeta “/usr/local/include”. Es necesario copiar estos archivos para que “ffmpeg” (un codificador que se encuentra frecuentemente con las distribuciones de linux) reconozca NVENC y lo incorpore.

Configuración de repositorios de código fuente



El siguiente paso consistirá en recompilar su versión actual de ffmpeg. Esto significa que va a necesitar las dependencias de compilación para el software, y para ello tendrá que configurar Linux para permitir la descarga desde los repositorios de código fuente en sus fuentes de software.

En Ubuntu, puede navegar a “Ajustes del sistema -> Software & Actualizaciones”, luego haga clic en “Código fuente” bajo “Software Ubuntu”. En Linux Mint (la distribución que estoy usando porque soy perezoso), esto se puede hacer accediendo al Administrador de actualizaciones, haciendo clic en “Editar”, haciendo clic en “Fuentes de software” y marcando la pequeña casilla con “Habilitar repositorios de código fuente”. Este método puede variar dependiendo de su entorno de escritorio y de la distribución de Linux, por lo que es posible que tenga que hacer una pequeña búsqueda personal para conseguirlo.

Ahora la parte del proceso de afilado de los dientes!

Reconstruyendo ffmpeg

Dado que ffmpeg no construye con muchas de sus opciones habilitadas automáticamente (lo que significa que casi todas son opt-in en lugar de opt-out), tendrá que averiguar cómo se construyó en su sistema y luego construirlo usando la misma configuración más soporte para audio NVENC y AAC. Aquí es donde entran las cabeceras que copió antes. Mira, ffmpeg echará un vistazo a tus archivos en “/usr/local/include” para encontrar cualquier códecs que no encuentre en sus propios bolsillos.

Primero, construimos dependencias con

sudo apt-get build-dep ffmpeg

A continuación, queremos descargar el códec de audio AAC con

sudo apt-get install libfdk-aac-dev

Una vez hecho esto, necesitaremos obtener el código fuente de la versión actual de ffmpeg con

sudo apt-get source ffmpeg

Y cuando eso termine, tendrás que hacer una pequeña búsqueda en tu carpeta de Inicio. Busca una carpeta que empiece por “ffmpeg”. Tendrá el número de versión justo después de separarlo con un guión. Aquí está el mío:



Abra su terminal en esa carpeta. Si no puede hacerlo, abra el terminal y escriba:

cd ffmpeg- donde "" representa el número completo de la versión que viste en el nombre de esa carpeta. En mi caso, escribiría

cd ffmpeg-2.8.8

Ahora escriba

ffmpeg -buildconf

Le mostrará la configuración completa de su instalación actual de ffmpeg. Tendrá que copiar todo después de "configuración:" sin los bits debajo de esa pared masiva de texto. En mi caso, estoy copiando esto: (Tu configuración puede ser diferente, así que no copies lo que te estoy mostrando aquí.)

--prefix=/usr --extra-version=0ubuntu0.16.04.1 --build-suffix=-ffmpeg --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --cc=cc --cxx=g+++ --enable-gpl --enable-shared --disable-stripping --disable-decoder=libenjpeg --disable-decoder=libschroedinger --enable-gnuavresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-enablelibmodplug --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libpulse-libschroedinger --enable-libschroedinger --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-enablelibvorbis --enable-libvvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxvid --enable-libzvbi --enable-openal --enable-enableopengl --enable-x11grab --enable-libdc1394 --enable-libiec61883 --enable-libzmq --enable-frei0r --enable-libx264 --enable-libopencv

Ahora, pega lo que tengas en gedit o en algún otro editor de texto y añade esto al final:

OK, ahora todo lo que tienes que hacer es escribir

donde "" representa la masiva pared de texto que acabas de editar para añadir soporte para codecs no libres, NVENC, y audio AAC. Esto puede tardar un poco.

Después de todo esto, escriba

make

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"""">>>>i

Espere a que esto termine, luego escriba

sudo make install

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>.

¡Estás acabado!

Probando

Vale, ¿cómo sabes que has conseguido soporte para NVENC? Es hora de sacar a ffmpeg a dar una vuelta y codificar un video con él.

Para ello, necesitará un archivo de vídeo para convertir. Digamos que nuestro video está en"/home/miguel/Desktop/test.mkv", y queremos codificarlo como"/home/miguel/Desktop/test.mp4". Así es como lo hacemos con ffmpeg y su nuevo amor por NVENC:

.

Deberías ver algo como esto:



Y eso es todo! Matamos dos pájaros de un tiro: aprendiste cómo obtener NVENC en tu sistema Linux y cómo codificar un vídeo usando el práctico comando de terminal de ffmpeg. Si te quedas atascado en algún sitio o encuentras una forma mejor de hacerlo, ¡no olvides dejar un comentario!

Fuente: este post proviene de Vida Tecno, donde puedes consultar el contenido original.
¿Vulnera este post tus derechos? Pincha aquí.
¿Qué te ha parecido esta idea?

Esta idea proviene de:

Y estas son sus últimas ideas publicadas:

Etiquetas: Linux

Recomendamos

Relacionado

Linux

Cómo hacer imágenes de DVD grabables en Linux con DevedeNG

Puede parecer que los DVDs han seguido el camino de los dinosaurios, pero siguen siendo una forma popular de compartir datos y vídeos. Puede enviarlos fácilmente, y no necesita una tonelada entera de ancho de banda o estrategias complicadas de compartición de archivos para enviarlos a sus amigos y familiares. En Linux, DevedeNG es una excelente manera de crear sus propios DVDs de vídeo, con menús ...

Linux

Usando Marlin File Manager como Nautilus Alternative[Linux]

Independientemente del sistema operativo que utilice, el gestor de archivos es una de las aplicaciones más importantes que debe utilizar todos los días. Sin un administrador de archivos, no podrá encontrar y abrir archivos, ni siquiera moverlos a otra ubicación. En Linux, hay un montón de aplicaciones de gestión de archivos que puede utilizar. Nautilus para Gnome, Thunar para XFCE, Dolphin para KD ...

Linux

Cómo conectar Nexus 7 (y otros dispositivos Android 4.0+) a Ubuntu

Si eres usuario de Ubuntu y tienes un dispositivo Android (ejecutando la versión 4.0 o superior de Android), sabrás que no puedes conectar el dispositivo a tu ordenador y hacer que aparezca en tu gestor de archivos. La razón de esto es porque Android 4.0 y superior está usando el protocolo MTP como puente de conexión y MTP no está totalmente soportado en Linux. Anteriormente te hemos mostrado cómo ...

Linux

Cómo instalar Sopcast en Ubuntu (y ver el Mundial en tu ordenador)

A medida que se acerca el Mundial de Fútbol 2010, los fanáticos del fútbol que no son capaces de captarlo en la televisión han comenzado a buscar fuentes alternativas para apoyar a sus equipos favoritos. No hace falta decir que P2P es uno de los recursos más populares. Sin embargo, para poder ver el vídeo P2P, necesitará instalar un reproductor personalizado. Sopcast es el más popular entre todos ...

Linux

Cómo instalar fácilmente aplicaciones Windows en Linux con q4wine

El proyecto WINE ha ayudado a muchos usuarios a seguir utilizando algunos de sus programas favoritos de Windows sin la molestia de tener que arrancar dos veces o perder recursos en una máquina virtual. Crear y ejecutar WINE no es la tarea más fácil, pero afortunadamente la comunidad de código abierto ha producido q4wine , un programa para ayudar a gestionar WINE y el excelente script de winetricks ...

Linux

Cómo hacer que Ubuntu se parezca a MacOS Mojave 10.14

Para todos los usuarios de Ubuntu, hay un área en la que se queda corta en comparación con otros sistemas operativos y es con su aspecto. Por defecto, el dulce ojo de Ubuntu es bastante apagado: Nunca he sido un fanático de la combinación de colores púrpura y naranja que saluda una instalación fresca. Incluso el tema oscuro en Windows es un placer de usar. Para mí, personalmente, los temas más osc ...

Linux

Cómo ejecutar múltiples cuentas de Dropbox en Mac y Linux

Anteriormente, hemos realizado un tutorial sobre configuración de varias cuentas de Dropbox en Windows 7 . No hay razón para que dejemos de lado a Mac y Linux también. Así que aquí está, el tutorial para ejecutar múltiples cuentas de Dropbox en Mac y Linux. Nota : El siguiente tutorial asume que ya ha instalado (y configurado) su cuenta principal de Dropbox en su ordenador. El tutorial de Linux es ...

Cómo instalar y configurar Overgrive Google Drive Client en Linux

Linux lleva años sin disponer de un cliente oficial de Google Drive, lo que significa que los usuarios han tenido que confiar en herramientas de terceros para poder sincronizar sus archivos y directorios de nube con sus respectivos ordenadores. OverGrive es otro cliente externo de Google Drive que pretende ofrecer una solución de escritorio completa para los usuarios de Linux. Es proporcionado por ...

Linux

Cómo ocultar fácilmente archivos y carpetas en Linux

¿Alguna vez ha querido ocultar un archivo o una carpeta en su sistema de archivos Linux pero no tiene idea de cómo hacerlo? No se preocupe, esto no es tan complicado como parece y se puede hacer con bastante rapidez y eficiencia. En esta guía repasaremos las formas más sencillas de ocultar archivos y carpetas en Linux. Además de ocultar cosas, veremos cómo revelar estos elementos ocultos tanto en ...

Linux

Recolectar: Herramienta de búsqueda avanzada para Linux

Buscar en sus archivos puede ser una tarea fácil o difícil, dependiendo de cómo organice sus archivos y documentos. Si usted está constantemente buscando alto y bajo para ese archivo en particular y su administrador de archivos no le está ayudando con su terrible función de búsqueda, probablemente necesite una herramienta de búsqueda más avanzada. Recoll es una herramienta de búsqueda de texto par ...