Skip to content
This repository has been archived by the owner on Mar 21, 2020. It is now read-only.

Commit

Permalink
Initial import of uvccapture v0.5
Browse files Browse the repository at this point in the history
  • Loading branch information
csete committed Sep 18, 2010
0 parents commit 9435534
Show file tree
Hide file tree
Showing 9 changed files with 1,889 additions and 0 deletions.
340 changes: 340 additions & 0 deletions COPYING

Large diffs are not rendered by default.

21 changes: 21 additions & 0 deletions ChangeLog
@@ -0,0 +1,21 @@
-- uvccapture 0.4 21.03.2006 --
Lots of changes:
* Added install target in the makefile to install into /usr/local/bin
* Added signal capturing (CTRL-C, etc) to gracefully exit when in wait loop
* Added the ability to specify a command to run after each image capture,
command is run with the output picture as an argument. command can be run
blocking, or non-blocking.
* Added support for multiple verbisity levels (add more -v's)
* Minor output spelling corrections
* Added output of current bright/contrast/saturation/gain on startup.
All these thanks to Salvador Gonzalez <ghostx@optonline.net>
* YVYU Capture Mode - now requires jpeglib, activated for images sizes >960x720
allows adjustment of JPEG compression quality (-q) or manually activated (-m)
YUYV -> JPEG code thanks to Philip Heron <phil@firestorm.cx>

-- uvccapture 0.3 19.02.2006 --
Removed the JPEG decoding files (util.*) and the calls to convert-frame during
the capture of images. This decoding was only important for SDL display, which
is already gone. Peak CPU usage has gone from ~30% to 0.6%.

Thanks to Philip Heron <phil@firestorm.cx> for the suggestion.
27 changes: 27 additions & 0 deletions Makefile
@@ -0,0 +1,27 @@
CC=gcc
CPP=g++
APP_BINARY=uvccapture
VERSION = 0.4
PREFIX=/usr/local/bin

WARNINGS = -Wall


CFLAGS = -std=gnu99 -O2 -DLINUX -DVERSION=\"$(VERSION)\" $(WARNINGS)
CPPFLAGS = $(CFLAGS)

OBJECTS= uvccapture.o v4l2uvc.o


all: uvccapture

clean:
@echo "Cleaning up directory."
rm -f *.a *.o $(APP_BINARY) core *~ log errlog

install:
install $(APP_BINARY) $(PREFIX)

# Applications:
uvccapture: $(OBJECTS)
$(CC) $(OBJECTS) $(XPM_LIB) $(MATH_LIB) -ljpeg -o $(APP_BINARY)
30 changes: 30 additions & 0 deletions README
@@ -0,0 +1,30 @@
uvccapture: USB UVC Video Class Snapshot Software
Newest versions always available at http://staticwave.ca/source/uvccapture

This software is based of the package luvcview:
Copyright (C) 2005 2006 Laurent Pinchart && Michel Xhaard

Modifications and updates:
Copyright (C) 2006 Gabriel A. Devenyi <ace@staticwave.ca>

This program communicates via the USB UVC Video Class driver for V4L2, available
at http://linux-uvc.berlios.de/.

The purpose of this software is to capture an image from a USB webcam at a
specified interval, and save it to a JPEG file, no other formats are supported,
imagemagick can handle anything else you might need.

Right now this software is really a hack, since still image support is not yet
available in the UVC driver. The program continually polls the UVC driver in
MJPEG mode, and at a specified interval writes a JPEG header and a single frame
to file, creating a JPEG image. Because of this continuous polling, this program
has high CPU usage. Input checking is pretty trusting, so call it with the right
parameters.

In order for this software to work, whatever device you pass to -d you will need
to have read/write rights to, please see appropriate /dev documentation for how
to do this.

This software depends on jpeglib(present on almost all systems)

For usage information, run uvccapture -h
1 change: 1 addition & 0 deletions TODO
@@ -0,0 +1 @@
*Add support for PAN and TILT

0 comments on commit 9435534

Please sign in to comment.