with respect to image size H x W, and to total size of the video file, and what type of video file what is the best method of taking a bunch of still images to a smooth playable video file that will work well in powerpoint for a briefing ?

so far

  • i have 720 .tiff files making up one rotation, every 1/2° but i can reduce to 180 stills
  • on windows 7 use MakeDVI.exe to create an avi file
    • there's Microsoft RLE, Intel iYUV, fully uncompressed; these create > GB file that does not play
    • there's Microsoft Video 1 which seems to work most reliably creating > 100MB avi
    • there's Cinepak codec by Radius
    • also get to choose frames per second
  • depending on the AVI compression used, may or may not play in windows media player in windows 7
  • having trouble every which way getting avi to play smoothly when embedded in power point
  • need to stay within powerpoint and windows media player for compatibility and portability between work environments (win 7/8/10)

Do I need to convert the 5MB each .tiff files (x720) to .jpg or something first, where each .jpg file is in KB size?

and with 720 frames @ 30fps = 24 seconds for 1 rotation, I would also like ability to play faster like 1 rotation in 3 seconds or slow down to 1 rotation in 24 seconds.

What video format should I end up going for to get smoothest playback within microsoft powerpoint and be reliably portable between displaying computers (has or does not have graphics card, etc.) ?


I recommend to use ffmpeg:

ffmpeg -framerate 25 -pattern_type glob -i '*.tiff' -c:v libx264 -crf 22 -pix_fmt yuv420p out.mp4

Explanation (note that the order of the options is important):

  • -framerate sets the playback speed - adjust as necessary
  • -pattern_type glob tells ffmpeg that you want it to interpret * as wildcard in the filename.
  • -c:v libx264 uses h264 as the video format. This codec should be built in with most machines and in my experience is the least problematic codec for videos in powerpoint.
  • -crf 22 set the quality factor to 22. The ffmpeg h264 documentation states:

The range of the CRF scale is 0–51, where 0 is lossless, 23 is the default, and 51 is worst quality possible. A lower value generally leads to higher quality, and a subjectively sane range is 17–28. Consider 17 or 18 to be visually lossless or nearly so.

  • -pix_fmt yuv420p make sure to convert the colors of the input images to a format that the codec can handle
  • out.mp4 the name of the output file. Make sure it ends in mp4 not avi as mp4 is a more modern and more portable video file format.

In case the order of the files gets mixed up, rename them (for example with mucommander) to have four-digit numbers with leading zeros in the right sequence in the filename and then run this command:

ffmpeg -framerate 25 -i img%04d.tiff -c:v libx264 -crf 22 -pix_fmt yuv420p out.mp4

Note that h264 expects your image to have an even number of pixels in each dimension (i.e. 640x480 not 641x479) if that is not the case, you can use ffmpegs cropping filter:

ffmpeg -framerate 25 -pattern_type glob -i img%03d.tiff -filter:v "crop=out_w:out_h" -c:v libx264 -crf 22 -pix_fmt yuv420p out.mp4

See also this great answer on stackoverflow by khan and the official ffmpeg documentation for creating video slideshows

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.