diff options
Diffstat (limited to 'v4l2-apps')
-rw-r--r-- | v4l2-apps/Makefile | 3 | ||||
-rw-r--r-- | v4l2-apps/libv4l/COPYING.LIB (renamed from v4l2-apps/lib/COPYING.LIB) | 0 | ||||
-rw-r--r-- | v4l2-apps/libv4l/ChangeLog (renamed from v4l2-apps/lib/libv4l/ChangeLog) | 0 | ||||
-rw-r--r-- | v4l2-apps/libv4l/Makefile (renamed from v4l2-apps/lib/libv4l/Makefile) | 0 | ||||
-rw-r--r-- | v4l2-apps/libv4l/README (renamed from v4l2-apps/lib/libv4l/README) | 0 | ||||
-rw-r--r-- | v4l2-apps/libv4l/README.multi-threading (renamed from v4l2-apps/lib/libv4l/README.multi-threading) | 0 | ||||
-rw-r--r-- | v4l2-apps/libv4l/TODO (renamed from v4l2-apps/lib/libv4l/TODO) | 0 | ||||
-rw-r--r-- | v4l2-apps/libv4l/include/libv4l1.h (renamed from v4l2-apps/lib/libv4l/include/libv4l1.h) | 0 | ||||
-rw-r--r-- | v4l2-apps/libv4l/include/libv4l2.h (renamed from v4l2-apps/lib/libv4l/include/libv4l2.h) | 0 | ||||
-rw-r--r-- | v4l2-apps/libv4l/include/libv4lconvert.h (renamed from v4l2-apps/lib/libv4l/include/libv4lconvert.h) | 0 | ||||
-rw-r--r-- | v4l2-apps/libv4l/libv4l1/Makefile (renamed from v4l2-apps/lib/libv4l/libv4l1/Makefile) | 0 | ||||
-rw-r--r-- | v4l2-apps/libv4l/libv4l1/libv4l1-priv.h (renamed from v4l2-apps/lib/libv4l/libv4l1/libv4l1-priv.h) | 0 | ||||
-rw-r--r-- | v4l2-apps/libv4l/libv4l1/libv4l1.c (renamed from v4l2-apps/lib/libv4l/libv4l1/libv4l1.c) | 0 | ||||
-rw-r--r-- | v4l2-apps/libv4l/libv4l1/log.c (renamed from v4l2-apps/lib/libv4l/libv4l1/log.c) | 0 | ||||
-rw-r--r-- | v4l2-apps/libv4l/libv4l1/v4l1compat.c (renamed from v4l2-apps/lib/libv4l/libv4l1/v4l1compat.c) | 0 | ||||
-rw-r--r-- | v4l2-apps/libv4l/libv4l2/Makefile (renamed from v4l2-apps/lib/libv4l/libv4l2/Makefile) | 0 | ||||
-rw-r--r-- | v4l2-apps/libv4l/libv4l2/libv4l2-priv.h (renamed from v4l2-apps/lib/libv4l/libv4l2/libv4l2-priv.h) | 0 | ||||
-rw-r--r-- | v4l2-apps/libv4l/libv4l2/libv4l2.c (renamed from v4l2-apps/lib/libv4l/libv4l2/libv4l2.c) | 0 | ||||
-rw-r--r-- | v4l2-apps/libv4l/libv4l2/log.c (renamed from v4l2-apps/lib/libv4l/libv4l2/log.c) | 0 | ||||
-rw-r--r-- | v4l2-apps/libv4l/libv4l2/v4l2convert.c (renamed from v4l2-apps/lib/libv4l/libv4l2/v4l2convert.c) | 0 | ||||
-rw-r--r-- | v4l2-apps/libv4l/libv4lconvert/Makefile (renamed from v4l2-apps/lib/libv4l/libv4lconvert/Makefile) | 0 | ||||
-rw-r--r-- | v4l2-apps/libv4l/libv4lconvert/bayer.c (renamed from v4l2-apps/lib/libv4l/libv4lconvert/bayer.c) | 0 | ||||
-rw-r--r-- | v4l2-apps/libv4l/libv4lconvert/flip.c (renamed from v4l2-apps/lib/libv4l/libv4lconvert/flip.c) | 0 | ||||
-rw-r--r-- | v4l2-apps/libv4l/libv4lconvert/jidctflt.c (renamed from v4l2-apps/lib/libv4l/libv4lconvert/jidctflt.c) | 0 | ||||
-rw-r--r-- | v4l2-apps/libv4l/libv4lconvert/libv4lconvert-priv.h (renamed from v4l2-apps/lib/libv4l/libv4lconvert/libv4lconvert-priv.h) | 0 | ||||
-rw-r--r-- | v4l2-apps/libv4l/libv4lconvert/libv4lconvert.c (renamed from v4l2-apps/lib/libv4l/libv4lconvert/libv4lconvert.c) | 0 | ||||
-rw-r--r-- | v4l2-apps/libv4l/libv4lconvert/pac207.c (renamed from v4l2-apps/lib/libv4l/libv4lconvert/pac207.c) | 0 | ||||
-rw-r--r-- | v4l2-apps/libv4l/libv4lconvert/rgbyuv.c (renamed from v4l2-apps/lib/libv4l/libv4lconvert/rgbyuv.c) | 0 | ||||
-rw-r--r-- | v4l2-apps/libv4l/libv4lconvert/sn9c10x.c (renamed from v4l2-apps/lib/libv4l/libv4lconvert/sn9c10x.c) | 0 | ||||
-rw-r--r-- | v4l2-apps/libv4l/libv4lconvert/spca501.c (renamed from v4l2-apps/lib/libv4l/libv4lconvert/spca501.c) | 0 | ||||
-rw-r--r-- | v4l2-apps/libv4l/libv4lconvert/spca561-decompress.c (renamed from v4l2-apps/lib/libv4l/libv4lconvert/spca561-decompress.c) | 0 | ||||
-rw-r--r-- | v4l2-apps/libv4l/libv4lconvert/tinyjpeg-internal.h (renamed from v4l2-apps/lib/libv4l/libv4lconvert/tinyjpeg-internal.h) | 0 | ||||
-rw-r--r-- | v4l2-apps/libv4l/libv4lconvert/tinyjpeg.c (renamed from v4l2-apps/lib/libv4l/libv4lconvert/tinyjpeg.c) | 0 | ||||
-rw-r--r-- | v4l2-apps/libv4l/libv4lconvert/tinyjpeg.h (renamed from v4l2-apps/lib/libv4l/libv4lconvert/tinyjpeg.h) | 0 | ||||
-rw-r--r-- | v4l2-apps/libv4l2util/COPYING.LIB (renamed from v4l2-apps/lib/libv4l/COPYING.LIB) | 0 | ||||
-rw-r--r-- | v4l2-apps/libv4l2util/Makefile (renamed from v4l2-apps/lib/Makefile) | 6 | ||||
-rw-r--r-- | v4l2-apps/libv4l2util/TODO (renamed from v4l2-apps/lib/TODO) | 0 | ||||
-rw-r--r-- | v4l2-apps/libv4l2util/frequencies.c (renamed from v4l2-apps/lib/frequencies.c) | 2 | ||||
-rw-r--r-- | v4l2-apps/libv4l2util/libv4l2util.h (renamed from v4l2-apps/lib/v4l2.h) | 4 | ||||
-rw-r--r-- | v4l2-apps/libv4l2util/v4l2_driver.c (renamed from v4l2-apps/lib/v4l2_driver.c) | 0 | ||||
-rw-r--r-- | v4l2-apps/libv4l2util/v4l2_driver.h (renamed from v4l2-apps/lib/v4l2_driver.h) | 0 | ||||
-rw-r--r-- | v4l2-apps/test/Makefile | 9 | ||||
-rw-r--r-- | v4l2-apps/test/capture-example.c (renamed from v4l2-apps/test/capture_example.c) | 10 | ||||
-rw-r--r-- | v4l2-apps/test/driver-test.c | 2 | ||||
-rw-r--r-- | v4l2-apps/test/parse-sniffusb2.pl | 84 | ||||
-rw-r--r-- | v4l2-apps/test/stress-buffer.c | 140 | ||||
-rw-r--r-- | v4l2-apps/util/Makefile | 10 | ||||
-rw-r--r-- | v4l2-apps/util/qv4l2/ctrl-tab.cpp | 2 | ||||
-rw-r--r-- | v4l2-apps/util/qv4l2/general-tab.cpp | 2 | ||||
-rw-r--r-- | v4l2-apps/util/qv4l2/qv4l2.cpp | 2 | ||||
-rw-r--r-- | v4l2-apps/util/qv4l2/qv4l2.pro | 4 | ||||
-rw-r--r-- | v4l2-apps/util/v4l2-sysfs-path.c (renamed from v4l2-apps/util/v4l2_sysfs_path.c) | 2 |
52 files changed, 253 insertions, 29 deletions
diff --git a/v4l2-apps/Makefile b/v4l2-apps/Makefile index 2bba8fcd4..86b5bc267 100644 --- a/v4l2-apps/Makefile +++ b/v4l2-apps/Makefile @@ -5,7 +5,8 @@ all:: prepare-includes all clean install:: - $(MAKE) -C lib $@ + $(MAKE) -C libv4l $@ + $(MAKE) -C libv4l2util $@ $(MAKE) -C util $@ $(MAKE) -C test $@ diff --git a/v4l2-apps/lib/COPYING.LIB b/v4l2-apps/libv4l/COPYING.LIB index 1dd325d2b..1dd325d2b 100644 --- a/v4l2-apps/lib/COPYING.LIB +++ b/v4l2-apps/libv4l/COPYING.LIB diff --git a/v4l2-apps/lib/libv4l/ChangeLog b/v4l2-apps/libv4l/ChangeLog index dd53eced9..dd53eced9 100644 --- a/v4l2-apps/lib/libv4l/ChangeLog +++ b/v4l2-apps/libv4l/ChangeLog diff --git a/v4l2-apps/lib/libv4l/Makefile b/v4l2-apps/libv4l/Makefile index 4c99c3167..4c99c3167 100644 --- a/v4l2-apps/lib/libv4l/Makefile +++ b/v4l2-apps/libv4l/Makefile diff --git a/v4l2-apps/lib/libv4l/README b/v4l2-apps/libv4l/README index 3a2059224..3a2059224 100644 --- a/v4l2-apps/lib/libv4l/README +++ b/v4l2-apps/libv4l/README diff --git a/v4l2-apps/lib/libv4l/README.multi-threading b/v4l2-apps/libv4l/README.multi-threading index 93b393c8c..93b393c8c 100644 --- a/v4l2-apps/lib/libv4l/README.multi-threading +++ b/v4l2-apps/libv4l/README.multi-threading diff --git a/v4l2-apps/lib/libv4l/TODO b/v4l2-apps/libv4l/TODO index f3f9ff527..f3f9ff527 100644 --- a/v4l2-apps/lib/libv4l/TODO +++ b/v4l2-apps/libv4l/TODO diff --git a/v4l2-apps/lib/libv4l/include/libv4l1.h b/v4l2-apps/libv4l/include/libv4l1.h index c878cc198..c878cc198 100644 --- a/v4l2-apps/lib/libv4l/include/libv4l1.h +++ b/v4l2-apps/libv4l/include/libv4l1.h diff --git a/v4l2-apps/lib/libv4l/include/libv4l2.h b/v4l2-apps/libv4l/include/libv4l2.h index b05b57cb6..b05b57cb6 100644 --- a/v4l2-apps/lib/libv4l/include/libv4l2.h +++ b/v4l2-apps/libv4l/include/libv4l2.h diff --git a/v4l2-apps/lib/libv4l/include/libv4lconvert.h b/v4l2-apps/libv4l/include/libv4lconvert.h index 626c43473..626c43473 100644 --- a/v4l2-apps/lib/libv4l/include/libv4lconvert.h +++ b/v4l2-apps/libv4l/include/libv4lconvert.h diff --git a/v4l2-apps/lib/libv4l/libv4l1/Makefile b/v4l2-apps/libv4l/libv4l1/Makefile index 27848477e..27848477e 100644 --- a/v4l2-apps/lib/libv4l/libv4l1/Makefile +++ b/v4l2-apps/libv4l/libv4l1/Makefile diff --git a/v4l2-apps/lib/libv4l/libv4l1/libv4l1-priv.h b/v4l2-apps/libv4l/libv4l1/libv4l1-priv.h index 651599255..651599255 100644 --- a/v4l2-apps/lib/libv4l/libv4l1/libv4l1-priv.h +++ b/v4l2-apps/libv4l/libv4l1/libv4l1-priv.h diff --git a/v4l2-apps/lib/libv4l/libv4l1/libv4l1.c b/v4l2-apps/libv4l/libv4l1/libv4l1.c index 797c8768a..797c8768a 100644 --- a/v4l2-apps/lib/libv4l/libv4l1/libv4l1.c +++ b/v4l2-apps/libv4l/libv4l1/libv4l1.c diff --git a/v4l2-apps/lib/libv4l/libv4l1/log.c b/v4l2-apps/libv4l/libv4l1/log.c index 9ff0cea46..9ff0cea46 100644 --- a/v4l2-apps/lib/libv4l/libv4l1/log.c +++ b/v4l2-apps/libv4l/libv4l1/log.c diff --git a/v4l2-apps/lib/libv4l/libv4l1/v4l1compat.c b/v4l2-apps/libv4l/libv4l1/v4l1compat.c index e4293d2f9..e4293d2f9 100644 --- a/v4l2-apps/lib/libv4l/libv4l1/v4l1compat.c +++ b/v4l2-apps/libv4l/libv4l1/v4l1compat.c diff --git a/v4l2-apps/lib/libv4l/libv4l2/Makefile b/v4l2-apps/libv4l/libv4l2/Makefile index 648d27c0c..648d27c0c 100644 --- a/v4l2-apps/lib/libv4l/libv4l2/Makefile +++ b/v4l2-apps/libv4l/libv4l2/Makefile diff --git a/v4l2-apps/lib/libv4l/libv4l2/libv4l2-priv.h b/v4l2-apps/libv4l/libv4l2/libv4l2-priv.h index 8724832e1..8724832e1 100644 --- a/v4l2-apps/lib/libv4l/libv4l2/libv4l2-priv.h +++ b/v4l2-apps/libv4l/libv4l2/libv4l2-priv.h diff --git a/v4l2-apps/lib/libv4l/libv4l2/libv4l2.c b/v4l2-apps/libv4l/libv4l2/libv4l2.c index b4a10afac..b4a10afac 100644 --- a/v4l2-apps/lib/libv4l/libv4l2/libv4l2.c +++ b/v4l2-apps/libv4l/libv4l2/libv4l2.c diff --git a/v4l2-apps/lib/libv4l/libv4l2/log.c b/v4l2-apps/libv4l/libv4l2/log.c index 6237d55ec..6237d55ec 100644 --- a/v4l2-apps/lib/libv4l/libv4l2/log.c +++ b/v4l2-apps/libv4l/libv4l2/log.c diff --git a/v4l2-apps/lib/libv4l/libv4l2/v4l2convert.c b/v4l2-apps/libv4l/libv4l2/v4l2convert.c index 307a03ce5..307a03ce5 100644 --- a/v4l2-apps/lib/libv4l/libv4l2/v4l2convert.c +++ b/v4l2-apps/libv4l/libv4l2/v4l2convert.c diff --git a/v4l2-apps/lib/libv4l/libv4lconvert/Makefile b/v4l2-apps/libv4l/libv4lconvert/Makefile index 641d19d6e..641d19d6e 100644 --- a/v4l2-apps/lib/libv4l/libv4lconvert/Makefile +++ b/v4l2-apps/libv4l/libv4lconvert/Makefile diff --git a/v4l2-apps/lib/libv4l/libv4lconvert/bayer.c b/v4l2-apps/libv4l/libv4lconvert/bayer.c index ca7bb486f..ca7bb486f 100644 --- a/v4l2-apps/lib/libv4l/libv4lconvert/bayer.c +++ b/v4l2-apps/libv4l/libv4lconvert/bayer.c diff --git a/v4l2-apps/lib/libv4l/libv4lconvert/flip.c b/v4l2-apps/libv4l/libv4lconvert/flip.c index cd3468a89..cd3468a89 100644 --- a/v4l2-apps/lib/libv4l/libv4lconvert/flip.c +++ b/v4l2-apps/libv4l/libv4lconvert/flip.c diff --git a/v4l2-apps/lib/libv4l/libv4lconvert/jidctflt.c b/v4l2-apps/libv4l/libv4lconvert/jidctflt.c index 532abc7ea..532abc7ea 100644 --- a/v4l2-apps/lib/libv4l/libv4lconvert/jidctflt.c +++ b/v4l2-apps/libv4l/libv4lconvert/jidctflt.c diff --git a/v4l2-apps/lib/libv4l/libv4lconvert/libv4lconvert-priv.h b/v4l2-apps/libv4l/libv4lconvert/libv4lconvert-priv.h index 0c4eff6ce..0c4eff6ce 100644 --- a/v4l2-apps/lib/libv4l/libv4lconvert/libv4lconvert-priv.h +++ b/v4l2-apps/libv4l/libv4lconvert/libv4lconvert-priv.h diff --git a/v4l2-apps/lib/libv4l/libv4lconvert/libv4lconvert.c b/v4l2-apps/libv4l/libv4lconvert/libv4lconvert.c index 93bc67c7e..93bc67c7e 100644 --- a/v4l2-apps/lib/libv4l/libv4lconvert/libv4lconvert.c +++ b/v4l2-apps/libv4l/libv4lconvert/libv4lconvert.c diff --git a/v4l2-apps/lib/libv4l/libv4lconvert/pac207.c b/v4l2-apps/libv4l/libv4lconvert/pac207.c index 97ef4ebc0..97ef4ebc0 100644 --- a/v4l2-apps/lib/libv4l/libv4lconvert/pac207.c +++ b/v4l2-apps/libv4l/libv4lconvert/pac207.c diff --git a/v4l2-apps/lib/libv4l/libv4lconvert/rgbyuv.c b/v4l2-apps/libv4l/libv4lconvert/rgbyuv.c index 0f26b227a..0f26b227a 100644 --- a/v4l2-apps/lib/libv4l/libv4lconvert/rgbyuv.c +++ b/v4l2-apps/libv4l/libv4lconvert/rgbyuv.c diff --git a/v4l2-apps/lib/libv4l/libv4lconvert/sn9c10x.c b/v4l2-apps/libv4l/libv4lconvert/sn9c10x.c index 4ea526d49..4ea526d49 100644 --- a/v4l2-apps/lib/libv4l/libv4lconvert/sn9c10x.c +++ b/v4l2-apps/libv4l/libv4lconvert/sn9c10x.c diff --git a/v4l2-apps/lib/libv4l/libv4lconvert/spca501.c b/v4l2-apps/libv4l/libv4lconvert/spca501.c index 9157629e3..9157629e3 100644 --- a/v4l2-apps/lib/libv4l/libv4lconvert/spca501.c +++ b/v4l2-apps/libv4l/libv4lconvert/spca501.c diff --git a/v4l2-apps/lib/libv4l/libv4lconvert/spca561-decompress.c b/v4l2-apps/libv4l/libv4lconvert/spca561-decompress.c index 01eed4ec5..01eed4ec5 100644 --- a/v4l2-apps/lib/libv4l/libv4lconvert/spca561-decompress.c +++ b/v4l2-apps/libv4l/libv4lconvert/spca561-decompress.c diff --git a/v4l2-apps/lib/libv4l/libv4lconvert/tinyjpeg-internal.h b/v4l2-apps/libv4l/libv4lconvert/tinyjpeg-internal.h index 26844c28a..26844c28a 100644 --- a/v4l2-apps/lib/libv4l/libv4lconvert/tinyjpeg-internal.h +++ b/v4l2-apps/libv4l/libv4lconvert/tinyjpeg-internal.h diff --git a/v4l2-apps/lib/libv4l/libv4lconvert/tinyjpeg.c b/v4l2-apps/libv4l/libv4lconvert/tinyjpeg.c index fc9efbeb2..fc9efbeb2 100644 --- a/v4l2-apps/lib/libv4l/libv4lconvert/tinyjpeg.c +++ b/v4l2-apps/libv4l/libv4lconvert/tinyjpeg.c diff --git a/v4l2-apps/lib/libv4l/libv4lconvert/tinyjpeg.h b/v4l2-apps/libv4l/libv4lconvert/tinyjpeg.h index b0096f0de..b0096f0de 100644 --- a/v4l2-apps/lib/libv4l/libv4lconvert/tinyjpeg.h +++ b/v4l2-apps/libv4l/libv4lconvert/tinyjpeg.h diff --git a/v4l2-apps/lib/libv4l/COPYING.LIB b/v4l2-apps/libv4l2util/COPYING.LIB index 1dd325d2b..1dd325d2b 100644 --- a/v4l2-apps/lib/libv4l/COPYING.LIB +++ b/v4l2-apps/libv4l2util/COPYING.LIB diff --git a/v4l2-apps/lib/Makefile b/v4l2-apps/libv4l2util/Makefile index 8443039b4..f3f413071 100644 --- a/v4l2-apps/lib/Makefile +++ b/v4l2-apps/libv4l2util/Makefile @@ -2,12 +2,12 @@ CPPFLAGS += -I../include -I.. -includes = v4l2.h +includes = libv4l2util.h objects = frequencies.o v4l2_driver.o -sharedlib = libv4l2.so -staticlib = libv4l2.a +sharedlib = libv4l2util.so +staticlib = libv4l2util.a ifeq ($(prefix),) prefix = /usr diff --git a/v4l2-apps/lib/TODO b/v4l2-apps/libv4l2util/TODO index 456a916ce..456a916ce 100644 --- a/v4l2-apps/lib/TODO +++ b/v4l2-apps/libv4l2util/TODO diff --git a/v4l2-apps/lib/frequencies.c b/v4l2-apps/libv4l2util/frequencies.c index 64379d2b0..df8d47dba 100644 --- a/v4l2-apps/lib/frequencies.c +++ b/v4l2-apps/libv4l2util/frequencies.c @@ -22,7 +22,7 @@ #include <stdlib.h> #include <linux/videodev2.h> -#include "v4l2.h" +#include "libv4l2util.h" /* This source was originally written by Nathan Laredo <laredo@gnu.org>. He kindly gave permission to release this source under the LGPL diff --git a/v4l2-apps/lib/v4l2.h b/v4l2-apps/libv4l2util/libv4l2util.h index 172688853..fde7cdc75 100644 --- a/v4l2-apps/lib/v4l2.h +++ b/v4l2-apps/libv4l2util/libv4l2util.h @@ -15,8 +15,8 @@ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. */ -#ifndef _V4L2_H_ -#define _V4L2_H_ +#ifndef _V4L2UTIL_H_ +#define _V4L2UTIL_H_ /* --------------------------------------------------------------------- */ diff --git a/v4l2-apps/lib/v4l2_driver.c b/v4l2-apps/libv4l2util/v4l2_driver.c index 94f826968..94f826968 100644 --- a/v4l2-apps/lib/v4l2_driver.c +++ b/v4l2-apps/libv4l2util/v4l2_driver.c diff --git a/v4l2-apps/lib/v4l2_driver.h b/v4l2-apps/libv4l2util/v4l2_driver.h index b5d5dd22d..b5d5dd22d 100644 --- a/v4l2-apps/lib/v4l2_driver.h +++ b/v4l2-apps/libv4l2util/v4l2_driver.h diff --git a/v4l2-apps/test/Makefile b/v4l2-apps/test/Makefile index faafed14d..d118b9210 100644 --- a/v4l2-apps/test/Makefile +++ b/v4l2-apps/test/Makefile @@ -9,7 +9,8 @@ binaries = ioctl-test \ v4lgrab \ driver-test \ pixfmt-test \ - capture_example + stress-buffer \ + capture-example .PHONY: all clean install @@ -20,10 +21,10 @@ clean:: install: -../lib/libv4l2.a: ../lib/v4l2_driver.c ../lib/frequencies.c - make -C ../lib libv4l2.a +../libv4l2util/libv4l2util.a: ../libv4l2util/v4l2_driver.c ../libv4l2util/frequencies.c + make -C ../libv4l2util libv4l2util.a -driver-test: driver-test.o ../lib/libv4l2.a +driver-test: driver-test.o ../libv4l2util/libv4l2util.a pixfmt-test: pixfmt-test.o $(CC) $(LDFLAGS) $^ $(LOADLIBES) $(LDLIBS) -o $@ -lX11 diff --git a/v4l2-apps/test/capture_example.c b/v4l2-apps/test/capture-example.c index 0cd129885..9d5b0d6ce 100644 --- a/v4l2-apps/test/capture_example.c +++ b/v4l2-apps/test/capture-example.c @@ -23,17 +23,15 @@ #include <sys/mman.h> #include <sys/ioctl.h> -#include <asm/types.h> /* for videodev2.h */ - #include <linux/videodev2.h> #define CLEAR(x) memset(&(x), 0, sizeof(x)) -typedef enum { +enum io_method { IO_METHOD_READ, IO_METHOD_MMAP, IO_METHOD_USERPTR, -} io_method; +}; struct buffer { void *start; @@ -41,7 +39,7 @@ struct buffer { }; static char *dev_name; -static io_method io = IO_METHOD_MMAP; +static enum io_method io = IO_METHOD_MMAP; static int fd = -1; struct buffer *buffers; static unsigned int n_buffers; @@ -570,7 +568,7 @@ static void usage(FILE *fp, int argc, char **argv) "-f | --format Force format to 640x480 YUYV\n" "-c | --count Number of frames to grab [%i]\n" "", - argv[0],dev_name,frame_count ); + argv[0], dev_name, frame_count); } static const char short_options[] = "d:hmruofc:"; diff --git a/v4l2-apps/test/driver-test.c b/v4l2-apps/test/driver-test.c index e4c16ed54..1f722e198 100644 --- a/v4l2-apps/test/driver-test.c +++ b/v4l2-apps/test/driver-test.c @@ -14,7 +14,7 @@ GNU General Public License for more details. */ -#include "../lib/v4l2_driver.h" +#include "../libv4l2util/v4l2_driver.h" #include <stdio.h> #include <string.h> #include <unistd.h> diff --git a/v4l2-apps/test/parse-sniffusb2.pl b/v4l2-apps/test/parse-sniffusb2.pl new file mode 100644 index 000000000..34406b0ea --- /dev/null +++ b/v4l2-apps/test/parse-sniffusb2.pl @@ -0,0 +1,84 @@ +#!/usr/bin/perl +# +# Author: Franklin Meng <fmeng2002@yahoo.com> +# Parser for USB snoops captured from SniffUSB 2.0. +# + +use strict; +use warnings; +use Data::Dumper; + +foreach my $curfile (@ARGV) { + parsefile($curfile); + #we can only process 1 file + exit; +} + +sub parsefile { + my $curfile = shift; + my $SetupPacket =''; + my $preS = ''; + my $TransferBuffer =''; + my $preT = ''; + my $Direction =''; + my $preD = ''; + my @tmpsplit; + my $t=0; + my $s=0; + + open(FD, $curfile) || die("Error: $!\n"); + + while(<FD>) { + chomp; + if($t==1 && /^\s+\d{8}/) { +# print $_ . "\n"; + @tmpsplit = split(/\:\s/,$_); + $TransferBuffer = $TransferBuffer . $tmpsplit[1] . " "; + } elsif($s==1 && /^\s+\d{8}/) { +# print $_ . "\n"; + @tmpsplit = split(/\:\s/,$_); + $SetupPacket = $SetupPacket . $tmpsplit[1] ; + } else { + $t=0; + $s=0; + } + if(/[<>]{3}/){ + #print out last packet if valid + if($SetupPacket) { + if($preT) { + print "$SetupPacket $preD $preT\n"; + + } else { + print "$SetupPacket $Direction $TransferBuffer\n"; + } + } +# print "$SetupPacket $Direction $TransferBuffer\n"; + #clear variables + $preT = $TransferBuffer; + $TransferBuffer = ''; + $preS = $SetupPacket; + $SetupPacket = ''; + $preD = $Direction; + $t = 0; + $s = 0; + # get direction + @tmpsplit = split(/\s+/, $_); + $Direction = $tmpsplit[2]; +# print $_ . "\n"; + } elsif(/TransferBufferMDL/) { + $t = 1 + } elsif(/SetupPacket/) { + $s = 1; + } + } + #print last packet +# print "$SetupPacket $Direction $TransferBuffer\n"; + if($SetupPacket) { + if($preT) { + print "$SetupPacket $preD $preT\n"; + } else { + print "$SetupPacket $Direction $TransferBuffer\n"; + } + } +} + diff --git a/v4l2-apps/test/stress-buffer.c b/v4l2-apps/test/stress-buffer.c new file mode 100644 index 000000000..60410c70c --- /dev/null +++ b/v4l2-apps/test/stress-buffer.c @@ -0,0 +1,140 @@ +/* + * Copyright (C) 2009 Douglas Schilling Landgraf <dougsland@redhat.com> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, version 2 of the License. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * stress-buffer tool makes infinite calls using read() for + * any device specified by the command argument. + * + * The size of buffer shall be a random number from 0 up to 1000. + * + * Also is automatically created a file called: stats-M-D-Y-h-m-s.txt + * in current directory with data executed. + * + * The stress test is performed by several read() calls, + * and it helped to identify real issues like: + * + * - memory leaks + * - specific crashs that are rare and hard to reproduce + * + * To compile: + * gcc -o stress-buffer stress-buffer.c -Wall + * + * To execute: + * ./stress-buffer /dev/device_for_test + * + * Example: + * ./stress-buffer /dev/video0 + */ + +#include <unistd.h> +#include <sys/types.h> +#include <sys/stat.h> +#include <fcntl.h> +#include <stdio.h> +#include <sys/ioctl.h> +#include <stdlib.h> +#include <time.h> +#include <string.h> +#include <errno.h> + +int main(int argc, char **argv) +{ + char buffer[1000]; + char fname[30]; + int fd, ret, magic_buffer_size, cnt = 0; + time_t t1, t2; + double dif; + time_t current; + struct tm *timep; + + FILE *fd_file; + + if (argc != 2) { + printf("Usage: %s /dev/device_to_test\n", argv[0]); + return -1; + } + + current = time(NULL); + timep = localtime(¤t); + + memset(fname, 0, sizeof(fname)); + + snprintf(fname, sizeof(fname), "stats-%.2d-%.2d-%.2d-%.2d-%.2d-%.2d.txt", + timep->tm_mon+1, timep->tm_mday, timep->tm_year + 1900, + timep->tm_hour, timep->tm_min, timep->tm_sec); + + fd_file = fopen(fname, "a+"); + if (!fd_file) { + perror("error opening file"); + return -1; + } + + srand(time(NULL)); + + while (1) { + + if (time(&t1) < 0) { + perror("time_t t1"); + fclose(fd_file); + return -1; + } + + fd = open(argv[1], O_RDONLY); + if (fd < 0) { + perror("error opening device"); + fclose(fd_file); + return -1; + } + + /* Random number 0 - 1000 */ + magic_buffer_size = rand() % sizeof(buffer); + + memset(buffer, 0, sizeof(buffer)); + + ret = access(fname, W_OK); + if (ret < 0) { + close(fd); + perror("Error"); + return -1; + } + + ret = read(fd, buffer, magic_buffer_size); + if (ret < 0) { + fprintf(fd_file, "[%s] error reading buffer - [%s]\n", + argv[1], strerror(errno)); + fflush(fd_file); + perror("error reading buffer from device"); + return -1; + } + + if (time(&t2) < 0) { + perror("time_t t2"); + fclose(fd_file); + return -1; + } + + dif = difftime(t2, t1); + + printf("Seconds: [%d] - Test Number: [%d] - Read [%d] bytes\n", + (int)dif, cnt, ret); + + fprintf(fd_file, "Seconds: [%.2f] - Test number: [%d] - Read [%d] bytes\n", + dif, cnt, ret); + + fflush(fd_file); + + cnt++; + + close(fd); + + } + return 0; +} diff --git a/v4l2-apps/util/Makefile b/v4l2-apps/util/Makefile index f2c4c0a38..6f9d1071a 100644 --- a/v4l2-apps/util/Makefile +++ b/v4l2-apps/util/Makefile @@ -7,7 +7,7 @@ endif CPPFLAGS += -I../include -D_GNU_SOURCE LDFLAGS += -lm -binaries = v4l2-ctl v4l2-dbg v4l2-compliance ivtv-ctl cx18-ctl v4l2_sysfs_path +binaries = v4l2-ctl v4l2-dbg v4l2-compliance ivtv-ctl cx18-ctl v4l2-sysfs-path ifeq ($(prefix),) prefix = /usr @@ -34,13 +34,13 @@ v4l2-dbg: v4l2-dbg.o v4l2-chipids.o v4l2-dbg.o: v4l2-dbg.h v4l2-dbg-bttv.h v4l2-dbg-em28xx.h v4l2-dbg-saa7134.h -v4l2_sysfs_path.o: v4l2_sysfs_path.c ../lib/v4l2_driver.h +v4l2-sysfs-path.o: v4l2-sysfs-path.c ../libv4l2util/v4l2_driver.h -v4l2_sysfs_path: v4l2_sysfs_path.o ../lib/libv4l2.a +v4l2-sysfs-path: v4l2-sysfs-path.o ../libv4l2util/libv4l2util.a $(CC) $^ -o $@ -lsysfs -../lib/libv4l2.a: - $(MAKE) -C ../lib libv4l2.a +../libv4l2util/libv4l2util.a: + $(MAKE) -C ../libv4l2util libv4l2util.a install: mkdir -p $(prefix)/bin diff --git a/v4l2-apps/util/qv4l2/ctrl-tab.cpp b/v4l2-apps/util/qv4l2/ctrl-tab.cpp index c7d1a275c..6f436b494 100644 --- a/v4l2-apps/util/qv4l2/ctrl-tab.cpp +++ b/v4l2-apps/util/qv4l2/ctrl-tab.cpp @@ -1,6 +1,6 @@ #include "qv4l2.h" -#include "v4l2.h" +#include "libv4l2util.h" #include <qstatusbar.h> #include <qlineedit.h> diff --git a/v4l2-apps/util/qv4l2/general-tab.cpp b/v4l2-apps/util/qv4l2/general-tab.cpp index 3b9ad2e5b..78656cf10 100644 --- a/v4l2-apps/util/qv4l2/general-tab.cpp +++ b/v4l2-apps/util/qv4l2/general-tab.cpp @@ -20,7 +20,7 @@ #include "qv4l2.h" #include "general-tab.h" -#include "v4l2.h" +#include "libv4l2util.h" #include <qlabel.h> #include <qspinbox.h> diff --git a/v4l2-apps/util/qv4l2/qv4l2.cpp b/v4l2-apps/util/qv4l2/qv4l2.cpp index d144723d9..764fbd172 100644 --- a/v4l2-apps/util/qv4l2/qv4l2.cpp +++ b/v4l2-apps/util/qv4l2/qv4l2.cpp @@ -1,7 +1,7 @@ #include "qv4l2.h" #include "general-tab.h" -#include "v4l2.h" +#include "libv4l2util.h" #include <qimage.h> #include <qpixmap.h> diff --git a/v4l2-apps/util/qv4l2/qv4l2.pro b/v4l2-apps/util/qv4l2/qv4l2.pro index 5e0b7555d..96adb7260 100644 --- a/v4l2-apps/util/qv4l2/qv4l2.pro +++ b/v4l2-apps/util/qv4l2/qv4l2.pro @@ -3,10 +3,10 @@ ###################################################################### TEMPLATE = app -INCLUDEPATH += . ../../include ../../lib +INCLUDEPATH += . ../../include ../../libv4l2util CONFIG += debug # Input HEADERS += qv4l2.h general-tab.h SOURCES += qv4l2.cpp general-tab.cpp ctrl-tab.cpp -LIBS += -lv4l2 -L../../lib +LIBS += -lv4l2util -L../../libv4l2util diff --git a/v4l2-apps/util/v4l2_sysfs_path.c b/v4l2-apps/util/v4l2-sysfs-path.c index 2fe89b6c7..e3f3e63e8 100644 --- a/v4l2-apps/util/v4l2_sysfs_path.c +++ b/v4l2-apps/util/v4l2-sysfs-path.c @@ -16,7 +16,7 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ -#include "../lib/v4l2_driver.h" +#include "../libv4l2util/v4l2_driver.h" #include <sysfs/libsysfs.h> #include <errno.h> #include <malloc.h> |