Skip to content

Commit 7a97fcf

Browse files
authored
fork from luvcview-org-0.2.6
1 parent 2b06403 commit 7a97fcf

29 files changed

+9328
-0
lines changed

COPYING

Lines changed: 339 additions & 0 deletions
Large diffs are not rendered by default.

Changelog

Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
Change log for luvcview
2+
=======================
3+
4+
Version 0.2.6:
5+
- Enabled decoding of fill bytes in JPEG data. (Submitted by Rogier Wolff)
6+
7+
Version 0.2.5:
8+
- Added support for fractional frame rates such as 7.5 fps.
9+
- Made the frame rate counter in the title bar a little less nervous and a
10+
little more precise.
11+
12+
Version 0.2.4:
13+
- Smarter format picker. If the requested format is not available, luvcview
14+
now falls back to MJPG or YUYV if available.
15+
- Made 640x480 at 30 fps the default format.
16+
- Some optical changes to the output (and the code).
17+
18+
Version 0.2.3:
19+
- Moved the sources to a new repository on svn.quickcamteam.net.
20+
- Some changes to fix the control ID problems that affect mainly pan/tilt
21+
functions:
22+
- Remove uvc_compat.h and uvcvideo.h from the source archive. The latest
23+
version needs to be copied from the UVC driver repository before
24+
compilation.
25+
- Use the new 'Pan reset' and 'Tilt reset' controls.
26+
- Use dynctrl-logitech.h for the pan/tilt reset control.
27+
- Fixed the auto white balance control property to use the one in V4L2.
28+
- The --help command line option now also shows the usage (like -h).
29+
- Some cleanup patches by Moritz Barsnick for better error reporting and nicer
30+
source code.
31+
32+
Version 0.2.2:
33+
- Add picture in YUYV mode
34+
- Picture name is now P-date-times
35+
36+
Version 0.2.1:
37+
- Add from Joshua Phillips:
38+
"That said, at the current time, the interface in luvcview (v4l2uvc.h and
39+
v4l2uvc.c) does not have a function to set pan and tilt simultaneously.
40+
Since I needed this functionality, I decided to implement it and I have
41+
attached my patch for the two aforementioned files. Maybe they will be
42+
of use to you or anyone else who wishes to use these tools in the future."
43+
44+
Version 0.2.0:
45+
- Fix bugs no need to initialize the device when -L is asked.
46+
- Config file used key F1 and F2
47+
- Change the buttons picture (The Gimp)
48+
49+
Version 0.1.9:
50+
- Uwe-Philipp Kaeppeler 30/11/2006 set fps using -i fps
51+
- Uwe-Philipp Kaeppeler 15/12/2006 save and load device control settings (keys
52+
1 and 2, -r)
53+
54+
Version 0.1.8:
55+
- Pan/Tilt correction Wolfgang S-Rupprecht http://www.wsrcc.com/wolfgang
56+
57+
Version 0.1.7:
58+
- Light frequency filters (50 60 noFlickers) Serge A Suchkov (works with gspca)
59+
60+
Previous changes:
61+
- frmfmtenum implementation :)
62+
- avi record from Denis McLauglin done 19/9/2006
63+
- patch mxhaard 18/06/2006 allow MJPEG without DHT
64+
- patch from Martin (Logitech) 18/06/2006 raw capture / empty buffer error recovery
65+
- pan/tilt done 7/02/2006 only works with resolution <= 640x480
66+
- button to set parameters with mouse done 30/12/2005
67+
- set the jpeg decoder to convert yuyv stream. that way we can used SDL Overlay
68+
done 28/12/2005
69+
- mode yuyv not yet implemented done 27/12/2005

Makefile

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
##############################
2+
# spcaview Makefile
3+
##############################
4+
5+
INSTALLROOT=$(PWD)
6+
7+
CC=gcc
8+
CPP=g++
9+
INSTALL=install
10+
APP_BINARY=luvcview
11+
BIN=/usr/local/bin
12+
MATH_LIB = -lm
13+
SDLLIBS = $(shell sdl-config --libs)
14+
SDLFLAGS = $(shell sdl-config --cflags)
15+
#LIBX11FLAGS= -I/usr/X11R6/include -L/usr/X11R6/lib
16+
VERSION = 0.2.6
17+
18+
#WARNINGS = -Wall \
19+
# -Wundef -Wpointer-arith -Wbad-function-cast \
20+
# -Wcast-align -Wwrite-strings -Wstrict-prototypes \
21+
# -Wmissing-prototypes -Wmissing-declarations \
22+
# -Wnested-externs -Winline -Wcast-qual -W \
23+
# -Wno-unused
24+
# -Wunused
25+
26+
CFLAGS += -DUSE_SDL -O2 -DLINUX -DVERSION=\"$(VERSION)\" -I$(SDLFLAGS) $(WARNINGS)
27+
CPPFLAGS = $(CFLAGS)
28+
29+
OBJECTS= luvcview.o color.o utils.o v4l2uvc.o gui.o avilib.o
30+
31+
32+
all: luvcview
33+
34+
clean:
35+
@echo "Cleaning up directory."
36+
rm -f *.a *.o $(APP_BINARY) core *~ log errlog *.avi
37+
38+
# Applications:
39+
luvcview: $(OBJECTS)
40+
$(CC) $(CFLAGS) $(OBJECTS) $(X11_LIB) $(XPM_LIB)\
41+
$(MATH_LIB) \
42+
$(SDLLIBS)\
43+
-o $(APP_BINARY)
44+
chmod 755 $(APP_BINARY)
45+
46+
47+
install: luvcview
48+
$(INSTALL) -s -m 755 -g root -o root $(APP_BINARY) $(BIN)
49+
rm -f $(BIN)/uvcview

README

Lines changed: 128 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,128 @@
1+
luvcview: SDL-based video grabber
2+
=================================
3+
4+
Copyright and license
5+
---------------------
6+
7+
Copyright (C) 2005-2008 Michel Xhaard
8+
9+
This program is free software; you can redistribute it and/or modify
10+
it under the terms of the GNU General Public License as published by
11+
the Free Software Foundation; either version 2 of the License, or
12+
(at your option) any later version.
13+
14+
This program is distributed in the hope that it will be useful,
15+
but WITHOUT ANY WARRANTY; without even the implied warranty of
16+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17+
GNU General Public License for more details.
18+
19+
You should have received a copy of the GNU General Public License
20+
along with this program; if not, write to the Free Software
21+
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
22+
23+
24+
Credits
25+
-------
26+
27+
Original code from spcaview: Copyright (C) 2003-2006 Michel Xhaard
28+
AVI writing code from Avilib: Copyright (C) 1999 Rainer Johanni
29+
SDL (Simple DirectMedia Layer)
30+
31+
Contributions by:
32+
Laurent Pinchart, Linux UVC driver (http://linux-uvc.berlios.de/)
33+
Martin Rubli, Logitech (http://www.quickcamteam.net/)
34+
... and many others whose names are in the ChangeLog.
35+
36+
37+
Download and support
38+
--------------------
39+
40+
Currently luvcview does not have an official website but the preferred way of
41+
posting questions and feedback is through the QuickCam Team forums:
42+
http://forums.quickcamteam.net/forumdisplay.php?fid=6
43+
44+
The latest version can be found in the Subversion repository at:
45+
http://svn.quickcamteam.net/svn/luvcview/
46+
47+
The current maintainer of luvcview is Michel Xhaard <[email protected]>.
48+
49+
50+
Disclaimer
51+
----------
52+
53+
Use this program as you see fit. We are not liable for damages or illegal use
54+
of it whatsoever. You are on your own. Use of this code is at your own risk.
55+
There is absolutely no warranty. Have fun with it!
56+
57+
58+
Building
59+
--------
60+
61+
Required libraries:
62+
- SDL (from http://www.libsdl.org/ or e.g. the libsdl1.2 Debian package)
63+
64+
Required header files:
65+
- SDL (from http://www.libsdl.org/ or e.g. the libsdl1.2-dev Debian package)
66+
- uvcvideo (Linux UVC driver)
67+
- uvcdynctrl (part of libwebcam)
68+
69+
The JPEG encoder and decoder are now part of the package to allow for a small
70+
footprint on embedded devices. libsdl provides the necessary layers to run on
71+
the Linux framebuffer or an X server.
72+
73+
Important notes on the uvcvideo and uvcdynctrl dependencies:
74+
75+
Compiling the luvcview sources requires three source files to be present.
76+
If you already have these projects on your system, you can link them, e.g.
77+
using the following commands:
78+
79+
ln -s ~/uvcvideo/trunk/uvcvideo.h
80+
ln -s ~/uvcvideo/trunk/uvc_compat.h
81+
ln -s ~/libwebcam/Common/include/dynctrl-logitech.h
82+
83+
Alternatively, the latest versions can be downloaded directly from the
84+
corresponding source code repositories:
85+
86+
wget http://svn.berlios.de/svnroot/repos/linux-uvc/linux-uvc/trunk/uvcvideo.h
87+
wget http://svn.berlios.de/svnroot/repos/linux-uvc/linux-uvc/trunk/uvc_compat.h
88+
wget http://svn.quickcamteam.net/svn/qct/Linux/Common/include/dynctrl-logitech.h
89+
90+
Once you have the SDL headers installed and the three above header files in the
91+
luvcview source directory you can continue as normal.
92+
93+
To compile luvcview simply type:
94+
95+
make
96+
97+
To install it in /usr/local/bin type (as root):
98+
99+
make install
100+
101+
102+
Usage
103+
-----
104+
105+
Run luvcview with the -h or --help command line options to get a list of
106+
supported command line options.
107+
108+
In the GUI the following keys are supported:
109+
{SDLK_n, A_BRIGHTNESS_UP},
110+
{SDLK_b, A_BRIGHTNESS_DOWN},
111+
{SDLK_x, A_CONTRAST_UP},
112+
{SDLK_w, A_CONTRAST_DOWN},
113+
{SDLK_c, A_SATURATION_UP},
114+
{SDLK_v, A_SATURATION_DOWN},
115+
{SDLK_z, A_GAIN_UP},
116+
{SDLK_a, A_GAIN_DOWN},
117+
{SDLK_r, A_SHARPNESS_UP},
118+
{SDLK_e, A_SHARPNESS_DOWN},
119+
{SDLK_y, A_CUSTOM_A},
120+
{SDLK_t, A_CUSTOM_B},
121+
{SDLK_f, A_SWITCH_LIGHTFREQFILT},
122+
{SDLK_s, A_SCREENSHOT},
123+
{SDLK_p, A_RECORD_TOGGLE},
124+
{SDLK_l, A_RESET},
125+
{SDLK_q, A_QUIT},
126+
{SDLK_F1, A_SAVE}, // save configuration
127+
{SDLK_F2, A_LOAD}, // restore configuration
128+

ToDo

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
2+
If needed :
3+
get picture every x ms not yet implemented
4+
5+

0 commit comments

Comments
 (0)