lightweight_barcode_scanner library

A lightweight, fully offline barcode and QR scanner.

Camera frames are analysed by a shared ZXing-C++ core inside the native camera pipeline; Flutter only ever receives the decoded results. No machine learning runtime, no network access, no image data leaves the device.

Classes

BarcodeCapture
Everything that came out of one analysed frame.
BarcodeResult
A single decoded barcode.
BarcodeScanner
Decodes barcodes from still images.
BarcodeScannerController
Owns one camera session and the native decoder attached to it.
BarcodeScannerView
Displays the camera preview and reports detections.
ScannerOptions
Immutable scanner configuration.
ScannerPreview
What the native side tells us about the running camera.

Enums

AutoZoom
Which platforms the auto zoom ramp runs on.
BarcodeFormat
Barcode symbologies this package can decode.
BarcodeScannerErrorCode
Why a scanner operation failed.
CameraFacing
Which camera to open.
CameraPermissionStatus
Result of a camera permission request.
DecoderProfile
How much work the decoder is allowed to do per frame.
ImagePixelFormat
Pixel layouts accepted by BarcodeScanner.decodePixels, mirroring LbsPixelFormat in src/lbs_ffi.h.
ScanMode
What the scanner does after a successful detection.
ScannerState
Lifecycle of a BarcodeScannerController.
ScanResolution
Analysis resolution.

Exceptions / Errors

BarcodeScannerException
Thrown by the controller and reported through controller.error.