9

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).

Laura
  • 597
  • 2
  • 10
  • 25
oadams
  • 191
  • 2
  • 6

4 Answers4

7

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

Richm
  • 211
  • 1
  • 2
3

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.

fmark
  • 2,641
  • 4
  • 24
  • 31
2

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).

JoséNunoFerreira
  • 1,714
  • 1
  • 14
  • 26
1

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.:

#!/bin/bash
DATE=$(date +"%Y-%m-%d_%H%M")
fswebcam r 1280x720 -S 15 ---jpeg 95 --title "My webcam" -q -l 60 $DATE.jpg
vclaw
  • 1,694
  • 5
  • 18
  • 28