How to generate a MOV-file from PNG images?

I'd do it with avconv (or ffmpeg), but you have to do it on the command line.

Install required program

Open the terminal application and install the required programs:

sudo apt-get install libav-tools libavcodec-extra-53 libavdevice-extra-53 libavformat-extra-53 libavutil-extra-51 libpostproc-extra-52 libswscale-extra-2

Go to the directory containing the image sequence:

cd /path/to/images/

Convert:

avconv -i "img%d.png" -r 25 -c:v libx264 -crf 20  -pix_fmt yuv420p img.mov
  • -i "img%d.png" uses these files as the input, %d is a placeholder for the number
  • -r 25 the desired frame rate, 25 FPS in this case
  • -c:v libx264 use the h264 codec x264
  • -crf 20 the video quality, 20 is pretty high, the default is 23
  • -pix_fmt yuv420p a compatible pixel format

Note that in contrast to e.g. VLC, older quicktime players are pretty picky about what they play. Be sure to test it in quick time, you may have to adapt the codec options / output format (For example, you could replace img.mov with img.mkv to get a Matroska video)

avconv doc


I'd highly recommend Imagemagick for this. After installing it, an example of a command for what you're trying to do would be:

convert -delay 5 img[1-9].png img[1-9][0-9].png img[1-9][0-9][0-9].png output.mov

Note that the command would be simpler (and the images would still show up in numerical order) if you had leading zeros in your image filenames. Then you could use:

convert -delay 5 img*.png output.mov