flutter_camera_processing icon indicating copy to clipboard operation
flutter_camera_processing copied to clipboard

OpenCV and ZXing C++ libraries natively in Flutter with Dart FFI using the camera stream

flutter_camera_processing

This Flutter plugin demonstrates how to use OpenCV and ZXing C++ libraries natively in Flutter with Dart FFI using the camera stream.

App Features

  • Uses OpenCV v4.7.0 C++ library to process the camera stream
  • Utilizes ZXing v2.0.0 C++ library to scan more than 15 barcode types
  • Implements Dart FFI to access the native libraries.
  • Utilizes ffigen to generate FFI bindings
  • Works on Android and iOS

Building and Running

To build and run the project, follow these steps:

  1. Download the required versions of the OpenCV and ZXing libraries and install them.
    Note: The project uses wget to download the libraries from the command line.
    If you're on macOS, you can use Homebrew to install wget:
brew install wget
  1. On macOS, run the init.sh script:
sh init.sh

On Windows, run the init_windows.ps1 script:

.\init_windows.ps1

By following these steps, you will have the necessary dependencies installed and the project ready to be built and run on both Android and iOS devices.

License

MIT License. See LICENSE.