Decoding Direct Part Marking (DPM) Barcode

Direct Part Marking (DPM) is a process to mark equipment with some information, such as barcodes, permanently. The typical DPM barcode symbologies include DataMatrix and QR code. Since version 7.2, Dynamsoft Barcode Reader SDK has been capable of decoding DPM barcodes. In this article, I will share how to create a simple python barcode reader to read the DPM DataMatrix code.

Read more

Downloading Barcode Images from Google for SDK Test

When evaluating an image processing and recognition SDK, image dataset is vital for benchmarking the performance. Google is absolutely the best place for finding and downloading required images.  An automation tool would be handy for getting amounts of image files rapidly. In this article, I will share how to use Python to download barcode images from Google, as well as how to test Dynamsoft Barcode Reader SDK with the image set.

Read more

How to Port Visual Studio C++ Project to Linux with CMake

Dynamsoft Barcode Reader is an enterprise-class barcode SDK implemented in C/C++. Although the SDK is available for Windows, Linux, and macOS, there is only one Windows sample showing how to invoke the latest video APIs in version 7.x. To make developers experience the example in Linux or other platforms, I decided to refactor the project build environment with CMake.

Read more

How to Define Python Object Members in C Code

Three years ago, I created a Python extension module for Dynamsoft Barcode Reader C/C++ SDK. The code skeleton has never been changed until recently the SDK updated to v7.0. In the latest barcode SDK, besides the values of barcode symbologies, there are more constant variables needed to be predefined. The original Python barcode extension is initialized only with some methods, and now I have to add some object members. The article shares the code I’ve refactored in order to add Python object members.

Read more

How to Create A Simple Flutter Barcode Plugin from Scratch

I think Flutter is vital for developers. Not only it supports fast building Android and iOS apps from a single codebase, but also it is used for building the upcoming Google Fuchsia apps. Like React Native and Cordova, the Flutter ecosystem consists of amounts of plugins, which empower Flutter apps, especially for platform-specific functionalities. In this article, I will share how to create a simple Flutter barcode plugin with Dynamsoft Barcode Reader SDK from scratch.

Read more

Python Barcode Decoding on Non-Python Created Thread

Dynamsoft Barcode Reader 7.0 brings a set of thread-based APIs for continuous frame management and corresponding barcode decoding. It extremely simplifies the programming complexity, especially for Python. It is known that Python’s GIL (Global Interpreter Lock) affects the performance in a multi-threaded scenario. Running computation intensive tasks in Python thread cannot improve the Python app performance. If you create a Python barcode scanner app with OpenCV and Dynamsoft Barcode Reader 6.x, Python multiprocessing is the only way for getting a high camera frame rate. With the thread-based APIs of Dynamsoft Barcode Reader 7.x, your Python apps will not be limited by GIL anymore. This tutorial shares how to integrate the thread-based C/C++ APIs into Python barcode extension.

Read more