I'm not entirely sure if this is the right place to ask this question, but I don't know of a better place. I need to set up a webcam to take a photo every minute for 24 hours, so that it can be compiled into a video that plays them at something like 20fps. However I don't know of software to do this - is there? I'm running GNU/Linux (ubuntu 10.10).

  • \$\begingroup\$ This is called "time-lapse", btw, which may help you in your search \$\endgroup\$ Commented Feb 14, 2011 at 20:13

4 Answers 4


There is plenty of software to do this in Ubuntu 10.10. I have not personally tried any of them so cannot vouch for which is best.

One useful link looks to be - popey.com - My Ubuntu Webcam setup this is fairly command line oriented but Popey does give all the steps to make a video of the resulting images

Other possible packages looking in my software list on Ubuntu 10.10 (you will likely need to enable the Universe repository to get all of them)

  • webcam
  • webcamd
  • cheese
  • kmotion

If you get stuck with Ubuntu specific issues you can always try the Ubuntu StackExchange site at askubuntu.com


Echoing JoséNunoFerreira I would recommend gphoto2. I'm not in front of a Linux box to test it right now, but according to a linux.com tutorial the following command should work:

gphoto2 --capture-image --interval=60 --frames=1440

The interval figure is in seconds, and 60 x 24 = 1440 so it should take one photo every minute for twenty-four hours.


Try gphoto2. It is available on the ubuntu repositories, and is a command line utility. it's very powerful, and allows you to use "regular" digital cameras, also.

Other choices would be VideoCapture module for python (assuming you know python).


For a USB webcam, you could use fswebcam. It is available in the Ubuntu 'universe' repository. fswebcam is a simple, lightweight, command line program, for capturing images from a webcam. A simple command to capture an image and save it as a JPEG:

fswebcam test.jpg

By default this will attempt to get an image from the /dev/video0 device. If you have multiple devices attached, you can specify which one. There are more options to specify the resolution, or whether to include a title, or timestamp etc.

To make a timelapse, you can use fswebcam with the 'loop' option, this will take a photo every specified number of seconds. Or you could add a script to cron, eg to run every minute.

An example bash script to save a photo every minute.:

DATE=$(date +"%Y-%m-%d_%H%M")
fswebcam r 1280x720 -S 15 ---jpeg 95 --title "My webcam" -q -l 60 $DATE.jpg

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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