Skip to content

Instantly share code, notes, and snippets.

@AshKyd
Forked from alexellis/timelapse.md
Last active October 29, 2021 06:17
Show Gist options
  • Save AshKyd/d9a2a32e83094493afcab9258a706564 to your computer and use it in GitHub Desktop.
Save AshKyd/d9a2a32e83094493afcab9258a706564 to your computer and use it in GitHub Desktop.
ffmpeg time-lapse

Convert sequence of JPEG images to MP4 video

Crop to 4k:

ffmpeg -r 30 -pattern_type glob -i '*.JPG' -s 3840:2160 -vcodec libx264 -pix_fmt yuv420p timelapse.mp4

Crop to original:

ffmpeg -r 30 -pattern_type glob -i '*.JPG' -vcodec libx264 -pix_fmt yuv420p timelapse.mp4

  • -r 24 - output frame rate
  • -pattern_type glob -i '*.JPG' - all JPG files in the current directory
  • -i DSC_%04d.JPG - e.g. DSC_0397.JPG
  • -s hd1080 - 1920x1080 resolution

Slower, better quality

Add the following after -vcodec libx264 to achieve better quality output

-crf 18 -preset slow

Bulk convert JPGs to 1920x1080, centered

convert input.jpg -resize '1920x1080^' -gravity center -crop '1920x1080+0+0' output.jpg

Windows

Windows doesn't support globbing. Use image sequences:

-start_number 2539 -i DSC0%d.jpg
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment