Commit Graph

65 Commits

Author SHA1 Message Date
favoritas37 bec02cb83e Added new implementation of QrCode encoding.
It is backward compatible with the version that was active till now, though, it also enables an advanced operation for configuring options during encoding.
2018-02-11 20:43:48 +02:00
Grecko 11f1269ad6 Declarative encoding API from QML
To display an encoded qrcode from QML, we now can do Image { source:
"image://QZXing/qrcode/<data>" }

This allows different encoded images to be displayed simultaneously

Closes #31
2017-10-14 18:31:54 +02:00
Nikolaos Ftylitakis f26570dc70 Merge branch 'master' of https://github.com/ftylitak/qzxing 2017-05-11 17:55:51 +03:00
Nikolaos Ftylitakis 710a6f6ab4 added Info.plist to allow iOS to use Camera feature 2017-05-11 17:32:23 +03:00
favoritas37 bf566aca2f Fixed compilation of QZXingDragNDropTest project, was missing the configuration flag qzxing_qml 2017-05-01 15:09:14 +03:00
favoritas37 30dcf6acfc Fixed compilation of BarcodeEncoder example. Make use of qzxing_qml CONFIG tag. 2017-04-07 17:16:15 +03:00
favoritas37 6a40ab118d Merge branch 'master' of https://github.com/ftylitak/qzxing 2017-03-20 17:24:53 +02:00
favoritas37 2207c3c248 Removed qzxing_qml tag from the defaults
Automatically add qzxing_qml if qzxing_multimedia tag is used
Refactorings to wrap QML dependant code in QZXING_QML scopes
update README.md to reflect the above changes
changes triggered from #26
2017-03-20 17:23:52 +02:00
favoritas37 51346e19d6 Fixed processing of RGB32 images. Fix inverted y directly at the construction of the image. Fixes issue #27. 2017-03-20 15:11:40 +02:00
favoritas37 f581e879de fixed compilation of QZXingLive for platforms other than Android 2017-03-16 16:26:48 +02:00
favoritas37 a69cd45ac6 added higher resolution icons in QZXingLive 2017-03-03 19:02:49 +02:00
favoritas37 29860c538c Added example with proper handling of Android application permissions for QZXingLive triggered by #22 2017-01-29 17:54:16 +02:00
favoritas37 88012f5aa2 Updated BarcodeEncoder project. Previous implementation caused compilation error when compiled with MSVC. Also this implementation is more compact 2017-01-23 19:45:47 +02:00
Nikolaos Ftylitakis cbaef5e90f Delete gradle.properties
removed unnecessary file
2017-01-16 20:04:22 +02:00
favoritas37 c48d31f523 removed unecessary file 2017-01-16 20:02:13 +02:00
favoritas37 75eb47e8c5 fine tune the use of QZXing::registerQMLTypes to include the QZXingFilter. Update QZXingLive with the latest changes 2017-01-16 19:57:25 +02:00
favoritas37 905ee3359a make QZXingLive aware of the Android configuration 2017-01-16 19:54:20 +02:00
favoritas37 ac2d636532 Added initial Android files 2017-01-16 19:52:44 +02:00
favoritas37 a3e71ec1e7 created qzxing_qml and qzxing_multimedia qmake CONFIG tags for QZXing.pri to allow the control of dependencies based on the needs. qzxing_qml enables QML specific parts of the library. qzxing_multimedia enables QZXingFilter which requires Qt's multimedia. 2017-01-15 20:36:41 +02:00
Milian Wolff 594b178501 Make QZXingFilter "official" by moving it out of the example folder
The filter is much more performant than using the QZXing API in an
imparative way for the use-case of live-analyzing video frames in QML.
2017-01-10 13:24:55 +01:00
Milian Wolff 449a808972 Crop to capture rect directly when converting RGB to grayscale
This improves the performance since we only need to convert the
actually interesting part of the frame, instead of the full frame.
2017-01-10 13:17:54 +01:00
Milian Wolff c882465649 Improve performance of rgb(a) reading, convert directly to greyscale
This again leads to a noticeable performance improvement of the
QZXingFilter example, as we get rid of one full copy of the image
data by converting directly into greyscale, instead of first
converting to RGB and then converting to greyscale.
2017-01-10 13:17:54 +01:00
Milian Wolff b5e4f06e9f Fix linking on recent Qt for iOS
The qtmn hack is not required anymore.
2017-01-10 13:17:54 +01:00
Milian Wolff 0e10d8aeca Add simple FPS counter to QZXingLive example 2017-01-10 13:17:54 +01:00
Milian Wolff 69e05c1ff1 Add support for NV12 video frames
This was encountered on a recent Android device.
2017-01-10 13:17:54 +01:00
Milian Wolff 75b1a0d355 Further optimize QZXingFilterRunnable::processVideoFrameProbed
Do not call detaching QByteArray::data, use constData instead.
Also hoist some constants out of the inner conversion loops and make
more variables const.
2017-01-10 13:17:54 +01:00
Milian Wolff 3eb5b0b869 Cleanup debug code, save at most 100 images. 2017-01-10 13:17:54 +01:00
Milian Wolff bc2badb5b5 Optimize: reduce memory allocations, convert directly to grayscale
This dramatically improves the performance of the QZXingFilter.
2017-01-10 13:17:54 +01:00
Milian Wolff d112bf4186 Don't try harder by default in the QZXingLive example 2017-01-10 13:17:54 +01:00
Milian Wolff 7937cb84b5 Only try to mirror images when tryHarder is set to true
Additionally, this is only done until a match is found, instead of
always applying mirroring for the 2nd, 3rd and 4th frames.
2017-01-10 13:17:54 +01:00
Milian Wolff cafad4a9c0 Add captureRect functionality
This allows one to only detect within a certain unscaled region
of the input frame. The reduction of pixels scanned leads to
a significant performance win, and the removal of the scaling
improves the quality of the checked image, thereby leading to
higher detection rates.
2017-01-10 13:17:54 +01:00
Milian Wolff a7103d5cac Expand QZXingFilter example code
- allow autofocus and manual focus
- count number of tags matched
- allow configuring the barcode scanner from QML
2017-01-10 13:17:54 +01:00
favoritas37 b68b4c3fed minor edits in QQrDecorder readme file 2016-12-28 15:01:20 +02:00
favoritas37 67eb93253e minor edit in QQrdecoder project readme file. 2016-12-28 14:58:56 +02:00
Nikolaos Ftylitakis db9d8a3441 Update readme.md
Fixed broken relative path to project QZXingLive
2016-12-03 15:57:36 +02:00
favoritas37 79a5396aeb restored folder QQrDecoder to not break external links. Added reference to the updated project. 2016-12-03 15:55:31 +02:00
favoritas37 7ea672e6d1 fixes issues #4 and #9 (dummy commit to add the issue reference to the commit 37ca7a1 ) 2016-12-03 15:46:26 +02:00
favoritas37 d260ac47b2 removed obsoled example project QQrDecoder. Replaced by QZXingLive project 2016-12-03 13:07:45 +02:00
Nikolaos Ftylitakis 37ca7a13e1 Merge pull request #12 from ChALkeR/patch-2
QZXingFilter: add YUV420P format support
2016-12-03 12:16:01 +02:00
Сковорода Никита Андреевич fe1337394e QZXingFilter: add YUV420P format support 2016-12-01 17:22:33 +03:00
Сковорода Никита Андреевич 3adcc83300 QZXingLive example: remove unused qzxing.h include
qzxing.h doesn't exist, and the example works fine without it.
2016-12-01 02:58:00 +03:00
favoritas37 fa186c2cc9 Added new example project for live decoding in QtQuick 2 (contibution of Luiggi Reffatti from Fira Soft ). Will be examined in the future to embed QZxingFilter implementation to the main implementation fo the library. 2016-09-27 03:06:28 +03:00
favoritas37 f8e1574b6c fixed the refresh of the generated image from Encode procedure (disabled image caching) 2016-07-02 01:06:55 +03:00
favoritas37 cc0cd49996 minor optimization in the BarcodeEncoder view. 2016-06-16 01:20:15 +03:00
favoritas37 916903ed83 Update BarcodeEncoder to make use of Image Provider in order to display the image of the generated barcode to the QML viewe. 2016-06-16 01:16:35 +03:00
favoritas37 b0e3661c44 minor enhancement to the BarcodeEncoder UI. 2016-06-14 02:41:37 +03:00
favoritas37 3798e89fb6 rename project QZXingTests to the valid name QZXingDragNDropTest 2016-02-28 15:40:05 +02:00
favoritas37 22e969b5c2 added c++11 config in BarcodeEncoder project 2016-02-20 15:19:23 +02:00
favoritas37 3d28afb79d updated example projects to the new file structure of the repository (renaming of the source folder) 2016-01-08 22:31:48 +02:00
favoritas37 89163533d4 Fixed QZXingTestApp to use QQuickItem instead of QDeclarativeItem. Also removed the file path editing from the QML, it is properly handled by decoding function with the use of QUrl. 2016-01-08 21:49:49 +02:00