Attend XDA's Second Annual Developer Conference, XDA:DevCon 2014!
5,807,340 Members 43,232 Now Online
XDA Developers Android and Mobile Development Forum

Barcorama - barcode reader software [Updated 11/Oct/09]

Tip us?
 
hypest
Old
(Last edited by hypest; 14th February 2010 at 12:13 PM.) Reason: added v0.9h cab
#1  
hypest's Avatar
Retired Recognized Developer - OP
Thanks Meter 4
Posts: 235
Join Date: Feb 2008
Location: Thessaloniki
Default Barcorama - barcode reader software [Updated 11/Oct/09]

Hey everybody!

I'm creating this thread to keep the Barcorama related discussion in a dedicated thread. The discussion spawned here.

Barcorama is a Zxing-based (http://code.google.com/p/zxing/) barcode reader software developed by me in C#. The program's main purpose is to provide a free (and hopefully powerful) tool in the consumer's toolchain!

Feel free to try out and comment on it.

The tool is being developed on my Kaiser, so any feedback on how it performs on other devices is welcomed!

Basic Usage (not yet updated for v0.9x:

a. Press the "Shoot" button to launch the phones camera wizard and take a photo of the barcode by pressing the front "OK" button, or the normal side-shoot button. Barcorama will return automatically upon capture and try to recognize the code.

b. Press the "Open" button to launch the file dialog and navigate/select a previously taken photo. Again, after loading the photo, recognition starts.

After a successful recognition, a popup message may ask whether to run the specified external program with the recognized code. The program along with its arguments is specified in the settings. The code will be inserted wherever the !###! string is be found (may be multiple times).

In general, my tests show that the autofocus camera feature seems to achieve a good result when holding the phone more then 5cm away from the target.

Source code is available here: https://sourceforge.net/projects/barcorama/
or download the trunk snapshot here: http://barcorama.svn.sourceforge.net...ar.gz?view=tar

Features:

-- Recognizes 1D and 2D barcodes. See the google page for details. Version 0.3 is currently incorporated.

-- Runs an external program to pass the recognized code

Requirements:

- NETCF v2.0

ChangeLog:

v0.9h
-- ability for "continuous operation". After successful recognition, continues scanning/shooting/etc...
-- option to beep after successful recognition. Useful in "continuous operation"

v0.9g (for Testing!):
-- Costpad fixes regarding same name shops
-- QR recognition working (thanx to mao xuchu!). Mind though that proper result handling is not present.
-- BUGFIX: many settings were not holding on their value

v0.9f (for Testing!):
-- Memory optimization. Thanx user jeutaw for reporting the bug!

v0.9e (for Testing!):
-- BUGFIX: fixed exception at the end of the purchase submit procedure

v0.9d (for Testing!):
-- Warning: a bug has already been identified regarding the ability to submit purchases to costpad.com. Perhaps you want to wait a few hours until I get home and fix it <-- FIXED in v0.9e
-- Manual entry of the barcode (useful when scan/shoot/open methods fail)
-- More finger-oriented purchase date entry method
-- Able to register a new shop through Barcorama
-- Smoother button fading
-- Various fixes

v0.9c (for Testing!):
-- GUI fixes (should now cope better with high-res devices)

v0.9b (for Testing!):
-- not connecting to the Internet at startup

v0.9a (for Testing!):
-- Preliminary Costpad.com integration

v0.8a:
-- Reintroduced the "Live" mode (thanks to WiMo project), where continuous capturing is performed (low resolution only, thanks to HTC... )
-- Experimental Autofocus tweak! Manually triggering the autofocus capability so to make the "Live" mode usable. Warning: not all devices/roms will be compatible!

v0.7a:
-- Better File open method
-- Minor interface changes

v0.6:
-- Elastic GUI layout. Supporting landscape mode and greater resolutions.

v0.5c:
- Bugfix: Normal handling of spaces in external program's path and arguments
- Added a program icon (thanx nibblah)

v0.5b:
- Bugfix: proper saving/loading of external program settings.

v0.5
- Can now run an external program passing the recognized barcode.

v0.4d
- Small fix for QR decoding

v0.4c
- Upgraded ZXing to 0.4.5 for 1D barcodes (only)

v0.4b
- Fixed a nasty bug that disabled EAN and UPC codes!

v0.4
- Able to individually select what barcode types to try
- Option for selecting whether automatic return from the Camera application is desired. When not selected, the user has to manually exit the Camera application, beign able this way to recapture before decode
- Added a clickable link in the About page to easily reach this forum
- Black appearance

v0.3b
- Incorporated a ZXing bugfix regarding code-39 decoding
- Added a popup question to copy a recognized code into the clipboard

v0.3
- Tweaked usage of the .net camera API. Using a file based method to detect when the capture was performed.
- Automatically returning back to the application after the user shoots the photo. No second "OK" is needed.
- Better UI behavior by using background thread for camera capture and image decoding
- Various bugfixes


Known Issues:

-- False recognitions (encountered some EAN13 faults)
-- 3megapixel photos cannot be loaded
-- After shooting, image appears 90-degrees counter-clockwise rotated. Recognition works though.

Have fun!
hypest

P.S Please, if you encounter a bug/problem, report it and add your hardware/software configuration, or fill your signature with such info. Reporting of successful trials is also welcomed

Removed: The "speedy" version was removed as it was not functioning on par with the "normal" version...

Added a cab file that includes the .exe and creates a Start Menu shortcut. The shortcut seems to be missing the proper icon and perhaps it won't work in Non-English installations. Removed the ..v07a.zip as the cab seems stable.

Removed: The "Barcorama.zip" as it was too old...
Attached Files
File Type: cab Barcorama_v07a.CAB - [Click for QR Code] (129.6 KB, 7441 views)
File Type: cab barcorama_v08a.cab - [Click for QR Code] (274.3 KB, 14873 views)
File Type: zip Barcorama_v09h.zip - [Click for QR Code] (110.3 KB, 7980 views)
File Type: cab barcorama_v09h.CAB - [Click for QR Code] (509.2 KB, 11916 views)
LG Optimus 2x (rooted)
T-Mobile G1 (rooted)
HTC TyTN II (cooked, Froyo)

Please consider donating for Barcorama
[Pet project] Log your purchases with costpad.com. See statistics, share prices and more
 
SilentlyScreaming
Old
#2  
SilentlyScreaming's Avatar
Senior Member
Thanks Meter 19
Posts: 198
Join Date: Feb 2008
Location: Astana
I'm not experiencing crashes anymore, but the app doesn't appear to be receiving the photo taken after pressing shoot etc. I tried leaving the app for a minute, in case it was too busy processing to show anything on screen, but to no avail. If I take a photo manually, it is able to process via the OPEN button.

You might want to change the url in the about section into something people are more likely to type into their browser, in case they get the file indirectly... (the tinyurl would be http://tinyurl.com/2kxkuj for example, a little shorter at least)

The other files that came with the previous versions of Barcorama (WiMoNative.dll, and the OpenNETCF.etc.etc), can they be removed from the program's directory?

PS Thanks for all your work so far


Current Devices
Box/Stick: DroidBOX X7, iMX6, Q7, M6, V9 & a couple of NoName boxes
Tablet/Phone: Kindle Fire 2 (CM10.1.3 Stable), Samsung Galaxy S5 (Stock Unlocked), Samsung Galaxy Ace 2 (CM10.2 nightly), NoName Chinese WinCE6 GPS (ceFFM replacement interface)

Previous Devices
HTC Touch Pro 2, HTC TyTN II, HTC Hurricane, HTC Typhoon, iPAQ 2210, Sony Ericsson K700, SE T610, SE T68, Sony T65, Sony CD5e, other bricks
 
hypest
Old
#3  
hypest's Avatar
Retired Recognized Developer - OP
Thanks Meter 4
Posts: 235
Join Date: Feb 2008
Location: Thessaloniki
Quote:
Originally Posted by SilentlyScreaming View Post
I'm not experiencing crashes anymore, but the app doesn't appear to be receiving the photo taken after pressing shoot etc. I tried leaving the app for a minute, in case it was too busy processing to show anything on screen, but to no avail. If I take a photo manually, it is able to process via the OPEN button.
After taking the photo, do you manually press OK (or the "return" icon), or do you just leave it to return on its own? I think, the Nadavi's camera version, after some seconds returns automatically but it's actually a "cancel", not an "OK".

Quote:
Originally Posted by SilentlyScreaming View Post
You might want to change the url in the about section into something people are more likely to type into their browser, in case they get the file indirectly... (the tinyurl would be http://tinyurl.com/2kxkuj for example, a little shorter at least)
The long url really sucks, I know. This was just a quick and dirty solution to the "add an About window". I will certainly change it to actually be a clickable link.

Quote:
Originally Posted by SilentlyScreaming View Post
The other files that came with the previous versions of Barcorama (WiMoNative.dll, and the OpenNETCF.etc.etc), can they be removed from the program's directory?
Yes, with the present application functionality, do supplement dlls are needed. So, it is safe to remove them.

Quote:
Originally Posted by SilentlyScreaming View Post
PS Thanks for all your work so far
Thank YOU...

hypest
LG Optimus 2x (rooted)
T-Mobile G1 (rooted)
HTC TyTN II (cooked, Froyo)

Please consider donating for Barcorama
[Pet project] Log your purchases with costpad.com. See statistics, share prices and more
 
p51d007
Old
#4  
p51d007's Avatar
Senior Member
Thanks Meter 162
Posts: 1,423
Join Date: Oct 2007
Location: Springfield, Mo
Looks good.
Looking forward to updates. I can't get it to "shoot" and decode.
I have to shoot the picture, then run the program to get it to decode the
1D barcode.
 
srowen
Old
#5  
Junior Member
Thanks Meter 0
Posts: 17
Join Date: Feb 2008
Location: New York
Default Very nice.

Hi, Sean here from the zxing project. Glad to see you got this into C# and I hope it was not too painful. Let me know if you notice bugs. I put a link to your project on the code.google.com page.

Once the code stops changing and looks about done, we'd like to do the same thing, but port to Object C for the iPhone.
 
hypest
Old
#6  
hypest's Avatar
Retired Recognized Developer - OP
Thanks Meter 4
Posts: 235
Join Date: Feb 2008
Location: Thessaloniki
Default Got me blushing

Quote:
Originally Posted by srowen View Post
Hi, Sean here from the zxing project. Glad to see you got this into C# and I hope it was not too painful. Let me know if you notice bugs. I put a link to your project on the code.google.com page.

Once the code stops changing and looks about done, we'd like to do the same thing, but port to Object C for the iPhone.
Hello Sean! Flattered to see a comment from one of the project's developer!

Translating to C# was surprisingly easy and effective by using the MS JLCA. Ofcource I had to make some adjustments, but nothing really "difficult". Poking into the zxing code is certainly on my agenta but for the time being I'm trying to figure out why the prog does not work on some fellow posters' devices . I'll be happy to drive your attention to any bugs I notice.

...will keep my eye on your project's progress...

hypest
LG Optimus 2x (rooted)
T-Mobile G1 (rooted)
HTC TyTN II (cooked, Froyo)

Please consider donating for Barcorama
[Pet project] Log your purchases with costpad.com. See statistics, share prices and more
 
nsa666
Old
#7  
nsa666's Avatar
Senior Member
Thanks Meter 14
Posts: 257
Join Date: Jan 2008
Quick Shot not working for me. The application do not get the image. Manual shot dont recognizes EAN13 code. Folder selection not working(HTC Camera takes the shots in Storagecard\DCIM\100Media folder that cant be selected because its a subfolder.)
Phone: Galaxy S3 LTE GT-I9305
 
hypest
Old
#8  
hypest's Avatar
Retired Recognized Developer - OP
Thanks Meter 4
Posts: 235
Join Date: Feb 2008
Location: Thessaloniki
Default Trouble replicating the problem

I just reverted my Kaiser to its original rom (had to cook it from the dump I performed the day I got it), but the prog works (shouldn't I be happy about that?). I can use the "Shoot" and recognize...

Some details:
device: HTC TyTN II (unbranded)
Greek ROM (ACE Hellas)
OS: 5.2.1620 (build 18125.0.4.2)
ROM version: 1.56.405.5
Date: 08/28/07
Radio: 1.27.12.32
Protocol: 22.45.88.07H
Camera ver: 4.08 build 28288

The prog also worked with my "previous" ROM (panosha's joannita light + Nadavi's camera)

Perhaps some of you guys that the app does not fully work, can post additional info on the hardware/software you're using.

Thanx,
hypest
LG Optimus 2x (rooted)
T-Mobile G1 (rooted)
HTC TyTN II (cooked, Froyo)

Please consider donating for Barcorama
[Pet project] Log your purchases with costpad.com. See statistics, share prices and more
 
nsa666
Old
#9  
nsa666's Avatar
Senior Member
Thanks Meter 14
Posts: 257
Join Date: Jan 2008
i wonder if it had something to do with localization. It is a german Phone here. I've tested it with my own programm(also written in C#) and it has no problem getting the shot. strange....
Phone: Galaxy S3 LTE GT-I9305
 
hypest
Old
#10  
hypest's Avatar
Retired Recognized Developer - OP
Thanks Meter 4
Posts: 235
Join Date: Feb 2008
Location: Thessaloniki
Quote:
Originally Posted by nsa666 View Post
Quick Shot not working for me. The application do not get the image. Manual shot dont recognizes EAN13 code. Folder selection not working(HTC Camera takes the shots in Storagecard\DCIM\100Media folder that cant be selected because its a subfolder.)
EAN13 generally seems to work. Please, could you try this image?
I have tested the prog on about 10 actual products. Try to keep the phone about 6-10cm away from the target (not closer than 5, anyway).

Thank you for the info on the behavior of the load dialog. I will try and use a different facility to browse every folder.

hypest
LG Optimus 2x (rooted)
T-Mobile G1 (rooted)
HTC TyTN II (cooked, Froyo)

Please consider donating for Barcorama
[Pet project] Log your purchases with costpad.com. See statistics, share prices and more

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes