Cómo cortar y recortar un video con ffmpeg

Cómo cortar y recortar un video con ffmpeg

Este tutorial explica cómo cortar y recortar videos de la línea de comandos usando FFMPEG.

FFMPEG es un conjunto de herramientas y bibliotecas de código abierto multiplataforma para editar multimedia y transmisión desde la línea de comandos. Admite codificar y decodificar la mayoría de los formatos multimedia, incluidos archivos poco comunes. Después de leer este tutorial que incluye capturas de pantalla de procedimiento y video, sabrá cómo cortar y recortar videos usando FFMPEG.

Instalación de FFMPEG:

Para instalar FFMPEG en las distribuciones de Linux con sede en Debian, use el comando apt como se muestra en el ejemplo a continuación.

sudo apt install ffmpeg

Para instalar FFMPEG en Redhat / CentOS, ejecute los comandos a continuación:

Yum localinstall
yum install ffmpeg ffmpeg-devel

Cómo cortar videos usando ffmpeg:

Cortar videos con FFMPEG es una tarea bastante simple, rápida y baja que consumen recursos utilizando FFMPEG. Solo necesita definir el tiempo de inicio o finalización, o ambos si es necesario y el archivo de salida. Trabajaré con este video de toques de Linux (duración 00: 03: 280) Acabo de descargar para este tutorial.

El siguiente comando usa FFMPEG para cortar el video de la segunda 00:00:05 especificada con el flag -ss; Esta es la bandera para definir un punto de partida para su nuevo video en caso de que desee cortar parte del principio. Si solo desea cortar parte del final del video, no necesita usar esta bandera. Como puede ver, el formato de tiempo debe ser HH: MM: SS (horas, minutos, segundos). Por ejemplo, durante 2 minutos y 3 segundos, debe escribir 00:02:03.

El indicador -i utilizado para especificar el archivo que se editará; En este caso, el archivo es Linuxhint-Vim.mp4.

La opción -t se usa para especificar el final del nuevo archivo; En este caso, el video terminará a las 00:02:00. De manera similar a -ss, si no desea cortar parte del final del video, pero solo una parte del principio, no necesita aplicar esta bandera.

En este caso, el indicador de copia -c se usa para definir el archivo de salida; En este caso, el archivo editadovideo.mp4.

ffmpeg -ss 00:00:05 -I linuxhint -vim.MP4 -T 00:02:00 -C Copia EditedVideo.mp4

Toda la operación tomó un par de segundos sin consumir recursos informáticos.

El siguiente ejemplo muestra cómo cortar solo una parte del final del video 00:03:28 segundos. Por lo tanto, omito la opción -ss porque quiero mantener el punto de partida, y corté el video a las 00:02:00 implementando la bandera -t.

ffmpeg -i linuxhint -vim.MP4 -T 00:02:00 -C Copia editedVideo2.mp4

Contrariamente al ejemplo anterior, el siguiente comando solo corta parte del video que comienza usando la bandera -ss. En este caso, la nueva salida comenzará a partir de las 00:01:30.

ffmpeg -ss 00:01:30 -I linuxhint -vim.Copia MP4 -C EditedVideo3.mp4

Como puede ver, cortar videos con ffmpeg es un proceso simple y rápido.

Recorte de bordes negros usando FFMPEG:

Esta sección del tutorial describe cómo recortar videos con ffmpeg.

Puede usar FFMPEG para tratar de detectar automáticamente cómo recortar su video para eliminar las bordes negros.

Para este ejemplo, usaré un video de 320 × 240 que se parece al siguiente:

El siguiente comando intentará detectar las dimensiones y posiciones correctas para recortar el video correctamente.

FFMPEG -I LINUX -Foundation.MP4 -VF CropDetect -F NULL -2> & 1 | AWK '/ CREC/ imprimir $ nf' | cola -1

Como puede ver, FFMPEG devuelve el ancho apropiado (320), altura (208), posiciones X e Y para recortar el video correctamente.

La posición x: La posición X define el punto de partida horizontal del margen izquierdo, donde el margen izquierdo es 0.

La posición y: Y es el punto de inicio de cultivo vertical donde el margen superior es 0.

El ejemplo a continuación se recortará el video; puedes ver la bandera -filter: V.

El indicador -filter implementa un grano de filtro que divide la corriente de entrada, la recorta y la superpone con la otra transmisión. Como puede ver, las dimensiones y posiciones definidas en el comando a continuación son proporcionadas por el comando anterior.

Además, puede ver la bandera "-c Copy" se omitió, y el nombre del archivo de salida se escribió justo después de la bandera de la cosecha.

ffmpeg -i linuxfoundation.MP4 -Filter: V "Crop = 320: 208: 0: 16" Salida.mp4

Como puede ver, se eliminaron los bordes negros:

Sobre recortar videos usando FFMPEG:

Puede recortar cualquier parte de un video utilizando la técnica anterior, no solo las fronteras negras.

El siguiente comando recortará el video anterior, devolviendo una imagen de 200 × 200, comenzando 200px desde la izquierda y 0px desde los márgenes superiores.

FFFMPEG -I Output.mp4 -filter: v "cultivo = 200: 200: 200: 0" salida2.mp4

Y aquí está el video recortado:

Por supuesto, puede definir otros tipos de medidas, como rectángulos.

El video en el que trabajaremos (igual que la primera sección tutorial) se parece a la imagen a continuación.

En este primer ejemplo, solo definimos las dimensiones de salida pero no la posición. Si no especifica la posición, FFMPEG recortará automáticamente el centro del video. Por lo tanto, en el ejemplo a continuación, en el que solo se definen la altura y el ancho del video, pero no hay posición, FFMPEG recortará el video y devolverá una salida recortada de 500 × 500 del centro del video.

ffmpeg -i linuxhint -vim.MP4 -Filter: V "Crop = 500: 500" Linuxhintvideo2.mp4

Y obtenemos la salida recortada de 500x500px:

Si es necesario, puede usar el comando FFMPEG combinado con GREP para aprender la resolución de video original, como se muestra a continuación.

ffmpeg -i linuxhint -vim.MP4 2> y 1 | Video de GREP: | Grep -po '\ d 3,5 x \ d 3,5'

Si le gusta la simplicidad y el rendimiento de FFMPEG, puede acceder a la documentación oficial de FFMPEG aquí para conocer muchas características y funciones adicionales disponibles para editar medios.

Conclusión:

Medios de corte y recorte de la línea de comandos es bastante fácil con la ayuda de FFMPEG. Una de las principales ventajas de FFMPEG es el bajo consumo de recursos y la velocidad rápida.
Este tutorial muestra cualquier nivel de usuario de Linux o cualquier persona sin conocimiento de la edición de video puede editar profesionalmente videos en modo de texto aprendiendo algunos comandos y una sintaxis amigable. FFMPEG es multiplataforma, lo que la convierte en una gran herramienta estándar para editar archivos de video y audio desde la línea de comandos. FFMPEG es parte de herramientas ampliamente conocidas como VLC Player y se incluyó en Core Processing for iTunes y YouTube.

Espero que este tutorial haya sido útil. Siga siguiendo la pista de Linux para obtener más consejos y tutoriales de Linux.