Daniel Beer
88774dc6cf
decode.c: fix count bit-width on alphanumeric payloads.
2016-11-17 11:37:55 +13:00
Daniel Beer
aeb9b88d1a
Merge pull request #21 from kAworu/threshold-fix
...
Avoid division by zero.
2016-10-05 07:48:40 +13:00
Alexandre Perrin
6f0ed74aa2
Comment typo.
2016-10-04 11:13:49 +02:00
Alexandre Perrin
93adbb0b11
Avoid division by zero.
...
Before this patch, small images (i.e. 7x7 pixels or less) could trigger
SIGFPE because of a (integer) division by zero.
2016-10-04 11:10:55 +02:00
Daniel Beer
87e79e769b
Fix Reed-Solomon decoder.
...
Calculate the correct number of syndromes, and fix calculation of the
error locator polynomial. Many QR codes with logos in the middle should
now work.
2016-09-23 14:34:07 +12:00
Daniel Beer
ab341691c9
Add support for ECI decoding.
...
ECI values are decoded and stored in the eci field of struct quirc_data.
Constants of the form QUIRC_ECI_* are defined in quirc.h.
2016-09-23 09:50:59 +12:00
Daniel Beer
a8291391ec
dbgutil: print unknown data type indicators safely.
2016-09-23 09:40:56 +12:00
Daniel Beer
08fe9f7e0f
Fall back to set_strip() on older libpng versions.
...
Latest Debian release right now packages only 1.2.50.
2016-09-06 08:08:58 +12:00
Daniel Beer
5b26248009
Merge pull request #18 from czarkoff/png
...
Fix png image handling
2016-08-16 09:36:49 +12:00
Daniel Beer
3ddd39c952
Merge pull request #17 from czarkoff/clock
...
Consistant typing for test timing variables
2016-08-16 09:35:20 +12:00
Dmitrij D. Czarkoff
8decf20d4f
Strip alpha channel from PNG images with tRNS chunk
...
When PNG transformations are set up, tRNS chunk is converted to alpha channel
early in the process. Later the decision whether to strip alpha channel or not
is made upon checking (color_type & PNG_COLOR_MASK_ALPHA). Thus alpha channel
created by tRNS chunk conversion does not get stripped.
2016-08-15 15:39:18 +02:00
Dmitrij D. Czarkoff
2e3e80c1ee
Use more accurate bit depth reduction for PNG images
2016-08-15 14:32:17 +02:00
Dmitrij D. Czarkoff
3266bbaf39
Consistant typing for test timing variables
2016-08-15 10:24:01 +02:00
Daniel Beer
b0fc6bfd5f
Merge pull request #16 from czarkoff/clock
...
Use clock_gettime() instead of clock()
2016-08-15 12:26:56 +12:00
Dmitrij D. Czarkoff
1de1a466b8
Store time in milliseconds
2016-08-15 00:28:24 +02:00
Dmitrij D. Czarkoff
c13db788bb
Use clock_gettime() instead of clock()
...
clock() provides approximation of processor time used, measured in "clocks".
Amount of clock per second varies between 100 (Minix, NetBSD, OpenBSD), 128
(DragonFly BSD, FreeBSD, older versions of MacOS X), 1000 (Windows) and 1000000
(Linux, newer versions of MacOS X, Solaris). The range of these numbers make
conversion to milliseconds (the unit of display in `qrtest`) problematic.
clock_gettime() with its nanosecond time base appears to be a better and more
portable alternative to clock().
2016-08-13 23:14:55 +02:00
Dmitrij D. Czarkoff
e9b279786a
Ignore libquirc.so with any suffix
2016-08-11 12:26:08 +02:00
Dmitrij D. Czarkoff
47f99adf28
Move -fPIC
to default CFLAGS
2016-08-11 12:25:08 +02:00
Dmitrij D. Czarkoff
f7549f0948
Avoid '$^' variable
...
GNU make extension, which is not supported by other make programs.
2016-08-11 11:35:55 +02:00
Dmitrij D. Czarkoff
3731dc0b46
Use proper inference rules
2016-08-11 11:34:13 +02:00
Dmitrij D. Czarkoff
38b491c9ba
Allow specifying linker flags
2016-08-11 00:30:47 +02:00
Dmitrij D. Czarkoff
1bd6d0f5f0
Allow overriding default CFLAGS
2016-08-11 00:29:21 +02:00
Dmitrij D. Czarkoff
4206849da9
Fix shared library instructions
2016-08-11 00:32:09 +02:00
Dmitrij D. Czarkoff
35b50246f4
Avoid '$(shell ...)' macro
...
$(shell ...) macro is a GNU make extension. GNU make also supports `!=`
operator, which is more portable.
2016-08-11 00:21:17 +02:00
Dmitrij D. Czarkoff
22cd4d061c
Don't compile objects twice
...
PIC objects can be used for static library as well, so there is no reason to
build two sets of objects.
2016-08-11 00:18:58 +02:00
Daniel Beer
b19987eb6a
Merge pull request #14 from czarkoff/png14
...
Replaced remaining instance of png_infopp_NULL
2016-08-11 13:48:54 +12:00
Daniel Beer
271173c1f5
Merge pull request #13 from czarkoff/openbsd
...
Fix V4L2 includes on OpenBSD
2016-08-11 13:48:40 +12:00
Dmitrij D. Czarkoff
894e8c8b2d
Replaced remaining instance of png_infopp_NULL
2016-08-11 01:21:45 +02:00
Dmitrij D. Czarkoff
4ca654da50
Fix V4L2 includes on OpenBSD
2016-08-11 01:06:51 +02:00
Daniel Beer
e6e8c381bb
Merge pull request #12 from czarkoff/png14
...
Fix compatibility with newer libpng
2016-08-11 10:37:47 +12:00
Dmitrij D. Czarkoff
176ba28362
Fix compatibility with newer libpng
2016-08-11 00:02:38 +02:00
Daniel Beer
d968f0ae33
Merge pull request #11 from kAworu/display-human-readable-data-type
...
dump_data: display a human readable Data type.
2016-07-20 08:24:06 +12:00
Daniel Beer
7ee3a62b1a
Merge pull request #10 from kAworu/PNG_COLOR_TYPE_PALETTE
...
PNG_COLOR_TYPE_PALETTE support for inspect and qrtest.
2016-07-20 07:49:19 +12:00
Alexandre Perrin
d78123da72
dump_data: display a human readable Data type.
2016-07-18 14:27:17 +02:00
Alexandre Perrin
443bb5576f
PNG_COLOR_TYPE_PALETTE support for inspect and qrtest.
2016-07-18 14:23:08 +02:00
Alexandre Perrin
3a6efb3d84
Large images decoding support
...
Fix #2 , this patch makes large images support a compile time option by
allowing QUIRC_MAX_REGIONS to be tuned via CFLAGS up to 65534 (current
default is 254).
2016-07-15 14:40:40 +02:00
Alexandre Perrin
09cc95b989
check_if_png: clarify comments.
...
Before this patch check_if_png() comment was kind of misleading because
it talked about the behaviour of png_sig_cmp() which isn't the same as
check_if_png().
2016-07-14 16:04:26 +02:00
Daniel Beer
e8005d43c6
dbgutil.c: use C89-compatible variable declarations.
2016-07-13 08:54:52 +12:00
Alexandre Perrin
549f5b2c4d
png support for inspect and qrtest.
2016-07-12 09:34:11 +02:00
Daniel Beer
2cb90d5dd4
mjpeg: fix missing dereference operator.
2015-12-08 17:34:57 +13:00
Daniel Beer
3a3df0d1d6
demo: rewrite camera driver.
...
New camera driver doesn't depend on obsolete headers (linux/videodev.h),
and should work on more types of cameras.
2014-10-20 16:59:45 +13:00
Daniel Beer
42c79481e7
decode: support multiple data segments.
...
Previously, the payload was assumed to consist of one large data
segment. Now, multiple segments of different types may be concatenated
together. The data type reported is the highest data type encountered
while decoding.
2013-05-29 10:26:13 +12:00
Daniel Beer
bc253ec3ea
qrtest: fix filename extension check.
2013-05-29 10:23:23 +12:00
Daniel Beer
daf6d7c90b
decode: fix reversed tuples in numeric decoder.
2013-05-29 09:40:46 +12:00
Daniel Beer
0335fabf97
Fix decoding of numeric and alphanumeric data types.
...
If the number of characters in the stream isn't a multiple of the full
tuple size, the remaining characters are encoded in a special short
tuple.
2013-05-14 09:25:05 +12:00
Daniel Beer
8d0eb68255
test_neighbours: fix warnings in static analyzer.
...
Coverity complains that a negative value of best_v might be passed to
record_qr_grid().
Fix supplied by Harald Eilertsen (http://github.com/snake66/ ).
2013-02-02 18:07:22 +13:00
Daniel Beer
c8b1861b8f
quirc_strerror: fix off by one error.
...
Bug reported by Harald Eilertsen (http://github.com/snake66/ ).
2013-02-02 18:04:49 +13:00
Daniel Beer
bdbd932b72
Add protection against stack overflow when flood-filling.
2012-11-13 10:45:55 +13:00
Daniel Beer
b7a6827b54
Fixed possible division by zero in qrtest.
2012-11-13 10:43:36 +13:00
Daniel Beer
a3142bc6b4
Initial commit: version 1.0.
2012-05-04 12:58:42 +12:00