Tengo un archivo MP4 de una grabación de pantalla que necesito recortar. ¿Cómo puedo lograr esto sin usar herramientas costosas como Adobe Premier o Final Cut? Prefiero ffmpeg
porque lo he usado antes.
Responder
Use el crop
filtro :
ffmpeg -i in.mp4 -filter:v "crop=out_w:out_h:x:y" out.mp4
Donde las opciones son las siguientes:
-
out_w
es el ancho del rectángulo de salida -
out_h
es la altura del rectángulo de salida -
x
yy
especifican la esquina superior izquierda del rectángulo de salida
Imagen original
Imagen original de 320×240
Ejemplo 1
Para recortar una sección de 80 × 60, comenzando desde la posición (200, 100):
ffmpeg -i in.mp4 -filter:v "crop=80:60:200:100" -c:a copy out.mp4
- El audio es copia de la secuencia en este ejemplo, por lo que se evita la recodificación.
Ejemplo 2
Para recortar el cuarto inferior derecho:
ffmpeg -i in.mp4 -filter:v "crop=in_w/2:in_h/2:in_w/2:in_h/2" -c:a copy out.mp4
Esto es lo mismo que:
ffmpeg -i in.mp4 -filter:v "crop=320/2:240/2:320/2:240/2" -c:a copy out.mp4
Que es lo mismo que:
ffmpeg -i in.mp4 -filter:v "crop=160:120:160:120" -c:a copy out.mp4
- Puede hacer referencia al tamaño de la imagen de entrada con
in_w
yin_h
como se muestra en este primer ejemplo. El ancho y el alto de salida también se pueden usar conout_w
yout_h
.
Ejemplo 3
Recorta 20 píxeles desde la parte superior y 20 desde la parte inferior:
ffmpeg -i in.mp4 -filter:v "crop=in_w:in_h-40" -c:a copy out.mp4
- El filtro centrará automáticamente el recorte si
x
yy
se omiten, como en este ejemplo.
Vista previa
Puede tomar un recorte (jejeje) y obtener una vista previa en vivo con ffplay
:
ffplay -i input -vf "crop=in_w:in_h-40"
De esta manera, puede experimentar y ajustar su recorte sin la necesidad de codificar, ver, repetir.
Notas
-
El codificador predeterminado para MP4 es
libx264
(video H.264) ompeg4
(MPEG- 4 video de la parte 2) según suffmpeg
compilar. Consulte la Wiki FFmpeg: Guía de codificación de video H.264 para obtener más información. -
En lugar de recortar y volver a codificación, considere recortar durante la reproducción. Esto es posible con cualquier reproductor que valga la pena usar.
-
Construcciones antiguas
ffmpeg
usadas-croptop
,-cropbottom
,-cropleft
,-cropright
en lugar de lascrop
filtro. Si este es tu caso, obtén unffmpeg
moderno. El desarrollo es muy activo y no hay razón para usar una antigüedad.
crop
filter) vuelve a codificar el vídeo, consulta stackoverflow.com/questions/33378548/… si la codificación es importante para usted-filter:v
obsoleto por uno más actualizado y más simple para escribir-vf
. ¡Salud!cropdetect
primero en tener los parámetros de recorte de impresión ffmpeg para usted:ffmpeg.exe -i vid.mp4 -vf cropdetect out.mp4