Table of contents
Swift
Objective-C

How to Upgrade to Version 11.x

From version 10.x

To upgrade from version 10.x to 11.x, we recommend you to take the following steps.

1. Update the License Key

Request a 30-Day Free Trial License

Visit the Request a Trial License page to obtain a 30-day free license. This option is ideal for initial evaluation or testing of new SDK features.

Annual Online Full License

If you are using an Annual Online Full License, your license will continue to work with the current SDK version without the need for updates. Go to Customer Portal to get your license key.

Perpetual License

For users with a Perpetual License, please contact our sales team to update your license. You can reach out through our Contacting Us page for assistance.

2. Upgrade the Assembly Files

Run the following command to upgrade the assembly files.

pip install dynamsoft_barcode_reader_bundle --upgrade

3. Migrate Your Templates

The template system is upgraded. The template you used for the previous version can’t be directly recognized by the new version. Please contact us to upgrade your template.

From version 9.x or earlier

Dynamsoft Barcode Reader SDK has been refactored to integrate with DynamsoftCaptureVision (DCV) architecture. To upgrade from version 9.x or earlier to 11.x, we recommend you to follow the User Guide and re-write your codes. This section highlights only the key changes and necessary actions for upgrading the SDK.

Update the License Key

Request a 30-Day Free Trial License

Visit the Request a Trial License page to obtain a 30-day free license. This option is ideal for initial evaluation or testing of new SDK features.

Annual Online Full License

If you are using an Annual Online Full License, your license will continue to work with the current SDK version without the need for updates. Go to Customer Portal to get your license key.

Perpetual License

For users with a Perpetual License, please contact our sales team to update your license. You can reach out through our Contacting Us page for assistance.

Migrate to New Package

As of version 10.0, the dbr package has been renamed to dynamsoft_barcode_reader_bundle to reflect changes in both architecture and API design. Start terminal or command prompt and run the following command to install the new package.

pip install dynamsoft_barcode_reader_bundle

Update the License Activation Code

Starting from 10.0, we have unified the API for setting licenses across different Dynamsoft products.

Old APIs New APIs
BarcodeReader.init_license LicenseManager.init_license

Update Single Image Decoding APIs

The APIs for decoding single image has been adjusted as follows:

Old APIs New APIs
BarcodeReader.decode_file CaptureVisionRouter.capture
BarcodeReader.decode_file_stream CaptureVisionRouter.capture
BarcodeReader.decode_buffer_manually CaptureVisionRouter.capture
class TextResult class BarcodeResultItem
BarcodeReader.decode_base64_string Currently not available.
BarcodeReader.decode_buffer CaptureVisionRouter.capture(Available since v10.4.2100)

Update Video Streaming Decoding Code

ImageSourceAdapter is added to replace the FrameDecodeingParameters and the previous video methods. You should implement ImageSourceAdapter to transfer image data from camera or video file to buffer.

Migrate Your Templates

The template system is upgraded. The template you used for the previous version can’t be directly recognized by the new version. Please download the TemplateConverter tool or contact us to upgrade your template.

The template-based APIs have been updated as follows:

Old APIs New APIs
BarcodeReader.init_runtime_settings_with_file CaptureVisionRouter.init_settings_from_file
BarcodeReader.init_runtime_settings_with_string CaptureVisionRouter.init_settings
BarcodeReader.output_settings_to_json_file CaptureVisionRouter.output_settings_to_file
BarcodeReader.output_settings_to_json_string CaptureVisionRouter.output_settings
BarcodeReader.reset_runtime_settings CaptureVisionRouter.reset_settings
BarcodeReader.append_template_file_to_runtime_settings Not available.
BarcodeReader.append_template_string_to_runtime_settings Not available.
BarcodeReader.get_all_template_names Not available.

Migrate Your PublicRuntimeSetting

The class PublicRuntimeSetting has been refactored. It retains commonly used properties via SimplifiedCaptureVisionSettings while removing the previously complex property settings, which are now exclusively supported through templates.

The APIs for accessing and updating runtime settings has been adjusted as follows:

Old APIs New APIs
BarcodeReader.get_runtime_settings CaptureVisionRouter.get_simplified_settings
BarcodeReader.update_runtime_settings CaptureVisionRouter.update_settings

Migrate to SimplifiedCaptureVisionSettings

The following properties are replaced by similar properties under SimplifiedCaptureVisionSettings. They can also be set via a template file(String).

PublicRuntimeSetting Property SimplifiedCaptureVisionSettings Parameter Template File Parameter
region roi & roi_measured_in_percentage TargetROIDef.Location.Offset
timeout timeout CaptureVisionTemplates.Timeout

Migrate to SimplifiedBarcodeReaderSettings

The following properties are replaced by similar properties under SimplifiedBarcodeReaderSettings. The majority of them can also be set via a template file(String).

PublicRuntimeSetting Property SimplifiedBarcodeReaderSettings Property Template File Parameter
min_barcode_text_length min_barcode_text_length BarcodeFormatSpecification.BarcodeTextLengthRangeArray
min_result_confidence min_result_confidence BarcodeFormatSpecification.MinResultConfidence
localization_modes localization_modes BarcodeReaderTaskSetting.LocationModes
expected_barcodes_count expected_barcodes_count BarcodeReaderTaskSetting.ExpectedBarcodesCount
barcode_format_ids barcode_format_ids BarcodeReaderTaskSetting.BarcodeFormatIds
barcode_format_ids_2 barcode_format_ids BarcodeReaderTaskSetting.BarcodeFormatIds
deblur_modes deblur_modes BarcodeReaderTaskSetting.DeblurModes
deblur_level deblur_modes BarcodeReaderTaskSetting.DeblurModes
max_algorithm_thread_count max_threads_in_one_task BarcodeReaderTaskSetting.MaxThreadsInOneTask
grayscale_transformation_modes grayscale_transformation_modes ImageParameter.GrayscaleTransformationModes
image_preprocessing_modes grayscale_enhancement_modes ImageParameter.GrayscaleEnhancementModes

Remarks:

  • The 2 groups of barcode formats are merged.
  • deblur_level is deprecated. You can use deblur_modes instead.
  • The mode IPM_MORPHOLOGY of imagePreprocessingModes is migrated to BinarizationModes. The mode arguments MorphOperation, MorphOperationKernelSizeX, MorphOperationKernelSizeY, MorphShape are now available for all modes of BinarizationModes.

Migrate to Template File

The following properties can only be set via a template file. Please contact us so that we can help you to transform your current settings to a new template file.

PublicRuntimeSetting Property Template File Parameter
scale_down_threshold ImageParameter.ImageScaleSettings
binarization_modes ImageParameter.BinarizationModes
text_result_order_modes BarcodeReaderTaskSetting.TextResultOrderModes
return_barcode_zone_clarity BarcodeReaderTaskSetting.ReturnBarcodeZoneClarity
scale_up_modes BarcodeReaderTaskSetting.BarcodeScaleModes
barcode_zone_min_distance_to_image_borders BarcodeFormatSpecification.BarcodeZoneMinDistanceToImageBorders
colour_conversion_modes ImageParameter.ColourConversionModes
region_predetection_modes BarcodeReaderTaskSetting.RegionPredetectionModes
texture_detection_modes ImageParameter.TextureDetectionModes
text_filter_modes ImageParameter.TextDetectionMode & ImageParameter.IfEraseTextZone
dpm_code_reading_modes BarcodeReaderTaskSetting.DPMCodeReadingModes
deformation_resisting_modes BarcodeReaderTaskSetting.DeformationResistingModes
barcode_complement_modes BarcodeReaderTaskSetting.BarcodeComplementModes

Migrate to Other APIs

The PDF properties of PublicRuntimeSetting are moved to set via the set_pdf_reading_parameter method of DirectoryFetcher and FileFetcher with a PDFReadingParameter parameter.

PublicRuntimeSetting Property
pdf_reading_mode
pdf_raster_dpi

The Intermediate Result system is redesigned and the following properties are deprecated.

PublicRuntimeSetting Property
intermediate_result_types
intermediate_result_saving_mode

Removed

The following properties are removed.

PublicRuntimeSetting Property
barcode_colour_modes
result_coordinate_type
terminate_phase
FurtherModes Property
colour_clustering_modes