2012-11-30 06:38:03 +0000 2012-11-30 06:38:03 +0000
115
115

Cómo cambiar el tamaño de un vídeo para hacerlo más pequeño con FFmpeg

¿Es posible redimensionar mis vídeos para hacerlos más pequeños con FFmpeg?

Tengo un video de dimensiones originales de 1024x576, ahora quiero redimensionar el video a 720x480 para cumplir con el requisito.

¿Cómo puedo hacerlo?

Respuestas (2)

182
182
182
2012-11-30 06:53:23 +0000

El ejemplo más básico es éste:

ffmpeg -i input.avi -s 720x480 -c:a copy output.mkv

Utilizando el filtro scale proporcionará más flexibilidad:

ffmpeg -i input.avi -filter:v scale=720:-1 -c:a copy output.mkv

El -1 le dirá a ffmpeg que elija automáticamente la altura correcta en relación con la anchura proporcionada para preservar la relación de aspecto. El -1 también se puede utilizar para la anchura si se proporciona una altura determinada.

  • *

Una desventaja de la escala cuando se usa libx264 es que este codificador requiere valores pares y la escala puede elegir automáticamente un valor impar resultando en un error: width or height not divisible by 2. Puede decirle a scale que elija un valor par para una altura dada (720 en este ejemplo):

scale="trunc(oh*a/2)*2:720"

…o una anchura dada (1280 en este ejemplo):

scale="1280:trunc(ow/a/2)*2"

Tenga en cuenta que su build de ffmpeg podría quejarse de no reconocer las opciones -c o -filter. También es posible que no soporte scale. En ese caso, debería utilizar un ffmpeg más reciente, que puede descargar como una compilación estática, o compilar usted mismo.

21
21
21
2018-02-24 06:57:24 +0000

Utilizo los siguientes comandos para reescalar vídeos e imágenes. Para una anchura y altura fijas -

ffmpeg -i input.avi -vf scale="720:480" output.avi

y si quiere mantener la relación de aspecto sólo tiene que dar la altura como -1 y se redimensionará automáticamente en base a la anchura -

ffmpeg -i input.avi -vf scale="720:-1" output.avi

Si quiere escalar en base al tamaño de entrada Ej. digamos que reduzca el ancho/alto a la mitad puede hacer-

ffmpeg -i input.avi -vf scale="iw/1:ih/2" output.avi

NOTA :

iw : input width
ih : input height

La compilación estática puede ser descargada desde - https://johnvansickle.com/ffmpeg/

Documentación : https://ffmpeg.org/ffmpeg.html#filter_005foption