viernes, 18 de enero de 2019

Convierte una secuencia de imágenes .png en un vídeo con FFmpeg en GNU/Linux

Para crear un vídeo con una duración de 5 segundos a partir de una secuencia de 250 imágenes .png con una serie de nombres que representan la enumeración consecutiva de las imágenes: 0001.png, 0002.png,0003.png, 0004.png..así sucesivamente hasta llegar a 0250.png. Hay que usar este comando:

user@debian:~$  ffmpeg -r 25 -f image2 -s 1920x1080 -i  %04d.png -vcodec libx264 -crf 0 -pix_fmt yuv420p test.mp4
-r 25 es el número de frames por segundo, en este caso 25 frames (imágenes) por segundo.

-s 1920x1080 es la resolución  de las imágenes con formato .png

-i  %04d significa que los ceros se rellenarán hasta que la longitud de la cadena sea 4, es decir, 0001 ... 0020 ... 0030 ... 2000 y así sucesivamente. Si no se necesita relleno, use algo similar a pic% d.png o% d.png.

-vcodec libx264 el codec de video que se utiliza y que según el autor le da buen resultado

-crf 0, el rango de la escala CRF es 0–51, donde 0 no tiene pérdidas, 23 es el valor predeterminado y 51 es la peor calidad posible. Un valor más bajo generalmente conduce a una calidad más alta, y un rango subjetivamente sano es de 17-28. Considera que 17 o 18 son visualmente sin pérdida o casi; Debería verse igual o casi igual a la entrada, pero no es técnicamente sin pérdidas.

-pix_fmt yuv420p especifica el formato del pixelado, puede usar el que considere oportuno.

Fuentes: