[C#][APP][ffmpeg]Extractor de vídeo a GIF y MP4
Introducción
Os dejo esta pequeña aplicación desarrollada en C# .NET que a partir de un vídeo (mp4, avi, etc) podemos extraer a .GIF o MP4 una secuencia indicándole el tiempo de inicio y de fin, el tamaño y la calidad resultante en FPS.
Las rutinas que hacen posible la "magia" funcionan gracias a ffmpeg.
Generar vídeo a partir de inicio y fin
ffmpeg-i videoOrigen.mp4 -ss HH:MM:SS.00 -c copy -t HH:MM:SS.00 videoDestino.mp4
Generar GIF a partir de inicio y fin indicando FPS y Tamaño
1.- Lo primero que tenemos que crear es una paleta de colores a partir del fragmento de vídeo que queremos extraer.
ffmpeg-y -ss HH:MM:SS.00 -t HH:MM:SS.00 -i videoOrigen.mp4 -vf fps=FPS,scale=SCALA:-1:flags=lanczos,palettegen palette.png
2.- El ultimo paso es extraer el fragmento de vídeo utilizando la paleta de colores que creamos en el paso anterior dando resultado un GIF con los colores reales.
ffmpeg-ss HH:MM:SS.00 -t HH:MM:SS.00 -i videoOrigen.mp4 -i palette.png -filter_complex ""fps=FPS,scale=SCALA:-1:flags=lanczos[x];[x][1:v]paletteuse"" videoDestino.mp4
Si queréis saber mas parámetros que acepta ffmpeg los podéis ver aquí. Ir a la info.
Comentarios
comments powered by Disqus