Cómo codificar video H.265 usando ffmpeg en Linux

Casi todo el video que vemos, por televisión digital terrestre, por cable, por satélite o por Internet, está comprimido. El video sin procesar y sin comprimir es demasiado grande y desperdiciaría demasiado ancho de banda. Mucho antes del DVD y el Blu-ray, existía el Video CD (VCD). Fue el primer formato utilizado para distribuir comercialmente películas en discos ópticos estándar de 120 mm (4,7 pulgadas). El video de los discos se codificó en MPEG-1, un formato de compresión con pérdida diseñado para transmitir datos de video a 1,5 Mbit/s. Probablemente el componente más conocido del estándar MPEG-1 fue su formato de compresión de audio. Oficialmente llamado MPEG-1 Audio Layer III, probablemente lo conozca como MP3.

h265-y-otros-video-logotipos

Después de MPEG-1 vino MPEG-2, que fue elegido como el estándar de compresión de video para video DVD. También se usó como estándar de video subyacente para satélite digital (DVB-S) y TV digital terrestre (DVB-T). MPEG-2 también fue ratificado por la Unión Internacional de Telecomunicaciones (UIT) como H.262. Después del DVD llegó el Blu-ray, que además de admitir videos codificados en MPEG-2, también admitía H.264 o MPEG-4 Parte 10, Codificación avanzada de video (MPEG-4 AVC), como se lo conocía oficialmente.

  • MPEG-1: Usado para Video CD
  • MP3: parte del estándar MPEG-1, omnipresente en la actualidad
  • MPEG-2/H.262: Utilizado para DVD y otros medios digitales
  • MPEG-4 Parte 10/H.264: Usado en Blu-ray
  • MPEG-H/H.265: El formato de codificación de próxima generación compatible con resoluciones 4K y 8K

Después de H.264 vino H.265. También tiene algunos otros nombres, más comúnmente Codificación de video de alta eficiencia (HEVC) o MPEG-HH265 duplica la relación de compresión de datos en comparación con H.264 y puede admitir resoluciones de hasta 8192 × 4320. Esto significa que el video con la misma calidad necesita solo la mitad del ancho de banda (o tamaño de archivo). Alternativamente, significa que la calidad del video se puede mejorar sustancialmente a la misma tasa de bits, algo muy importante para pantallas de muy alta definición (es decir, 4K y 8K).

logo-ffmpeg

La buena noticia para los usuarios de Linux es que el códec H.265 está disponible en el popular paquete de codificación «ffmpeg». Aunque ffmpeg probablemente exista en los repositorios de su distribución, es posible que esté desactualizado o que no tenga compatibilidad con H.265 compilado. La forma más fácil de obtener la versión más reciente y funcional de ffmpeg es descargue las compilaciones vinculadas estáticamente.

Descargue el archivo .tar.xz de 32 bits o de 64 bits. Si no está seguro de cuál descargar, utilice el de 32 bits. En el directorio donde descargó el archivo, ejecute el siguiente comando para descomprimir el archivo comprimido:

tar xvf ffmpeg-2.4-32bit-static.tar.xz

Donde “ffmpeg-2.4-32bit-static.tar.xz” es el nombre del archivo que descargó.

Esto creará un directorio llamado algo así como «ffmpeg-2.4-32bit-static». En ese directorio están los binarios «ffmpeg» y «ffprobe» (junto con un par de otros binarios). Para codificar un video en formato H.265, use el siguiente comando:

./ffmpeg -i video.mp4 -c:a copy -c:v libx265 video-h265.mp4

los -i El parámetro especifica el archivo de video de entrada, en este caso “video.mp4”. ffmpeg puede decodificar una gran variedad de formatos de video, incluidos .avi, .mp4 y .mov.

los -c:a copy El parámetro le dice a ffmpeg que copie la transmisión de audio del archivo original directamente al archivo de salida. Tiempo -c:v libx265 le dice a ffmpeg que codifique el nuevo archivo de video en formato H.265.

El último parámetro es el nombre de archivo deseado de la salida codificada H.265. ffmpeg puede crear archivos .mp4, .mov y .mkv con video codificado H.265.

Una vez que la codificación haya terminado, mire el tamaño del archivo de los dos videos; debería ver una disminución significativa en el tamaño del archivo del video codificado H.265:

ls video.mp4 video-h265.mp4

Para comprobar que el archivo se ha codificado correctamente, utilice el ffprobe comando como este:

ffprobe-h265

La salida mostrará que la secuencia de video (probablemente la secuencia #0) está codificada usando hvec, es decir, H.265. La transmisión de audio se codificará en cualquier formato que se haya utilizado en el archivo original, ya que se copió de uno a otro.

Si tiene alguna pregunta sobre ffmpeg en sí, hay un vibrante comunidad con listas de correo, canales IRC y foros. Si tiene alguna pregunta sobre los ejemplos dados anteriormente, utilice la sección de comentarios a continuación y veremos si podemos ayudarlo.

Publicaciones Similares

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *