Introducing the Digimarc Mobile SDK
The Digimarc Mobile SDK (DM SDK) is Digimarc’s mobile content recognition platform. The DM SDK enables a mobile device to continuously monitor its environment and report when it recognizes audio and visual content.
The key features of the DM SDK are:
- Detection of Digimarc digital watermark in Print
- Detection of Digimarc digital watermark in Packaging
- Detection of Digimarc digital watermark in Audio
- Detection of the most common 1D traditional barcodes found in retail (UPC-A, UPC-E, EAN-8, EAN-13, Code 39, Code 128, DataBar, ITF-14, ITF Variable Length) and QR codes
- Quick drop-in or sophisticated low-level app integration options
- Simultaneous detection of supported content in image and audio streams
- Easy integration with the Digimarc Resolver
In the DM SDK API, detected codes are referred to as payloads. Some simple payloads can be used immediately by the app. Other payloads can be resolved by sending a request to the Digimarc Resolver Service, which returns a ContentItem, giving more information associated with that payload. Those associations are managed by the Print & Audio Module and are outside the scope of this document.
This documentation provides an overview of using the DM SDK to detect payloads in content and resolve the payloads. For further information about payloads, see Representation.
Minimum Requirements
The DM SDK requires a valid license key to read watermarks and barcodes. See Get a License Key.
The minimum system requirements for using DM SDK depend on the operating system.
Android
- Android Studio v4.2 (Chipmunk | 2021.2.1) or higher.
- An Android project targeting at least Android 7.0 (API level 24).
iOS
IDE: Xcode 14 or newer
Deployment Target | Minimum Version | Camera | Microphone | Image Data | Audio Data |
iOS, iPadOS | 13.0 | Supported | Supported | Supported | Supported |
macOS | 10.15.0 (Catalina) | Supported | Supported | Supported | Supported |
Mac Catalyst | Unsupported | Unsupported | Unsupported | Unsupported | Unsupported |
watchOS | Unsupported | Unsupported | Unsupported | Unsupported | Unsupported |
tvOS | Unsupported | Unsupported | Unsupported | Unsupported | Unsupported |
Only some Apple capture APIs are supported under Mac Catalyst. Refer to the DM SDK Audio Reader documentation for details.
Get a License Key
You can generate a license key through the Print & Audio module or the Digimarc Illuminate Platform. License keys created in the Print & Audio module aren't visible in Illuminate or the other way around.
Print & Audio Module
You'll need an account on the Digimarc Print & Audio Module. If you don't have an account, see Create an Account.
To get a license key:
- Log in to Digimarc Print & Audio Module (https://portal.digimarc.net).
- Click the Developer tab at the top of the screen.
- Click Get Started if it's displayed.
- Optional: For your desired operating system, click SDK Download. Save the ZIP file to your computer.
- In the Mobile SDK section, click CREATE MOBILE SDK USER and type a descriptive name for your application.
- Click Key beside the mobile app name to get the license key.
- Copy the key string and save it to your computer. If you misplace your credentials, return to the Developer tab and click Key to reveal the API key for the target mobile app.
Illuminate
You'll need an account on the Digimarc Illuminate Platform with the Account Administrator role.
To get a license key:
- Log in to Illuminate (https://digimarc.app).
- On the Account Settings view, scroll to the Configuration section and click License keys. The License Keys view opens.
- Click Add license key. The Add License Key view opens.
- Type a descriptive Name for your application. It must be unique within your account. Names can be up to 64 characters long.
- Click Add license key. Illuminate creates the license key and password.
- Save both the license key and password:
- Click the Copy icons ( ) to copy both the license key and password and save them on your computer.
- Click Download License key and password as a text file to save the text file in your default downloads folder.
- Optional: To download the SDK, click the Help icon ( ), click Digimarc Tools, and click Digimarc Mobile SDK for your desired operating system. Save the ZIP file to your computer.
Get a Mobile API Key
Digital watermarks configured in Illuminate can be read by the Mobile SDK but are encrypted and must be passed to the Digimarc Illuminate Platform before data can be retrieved. This communication is handled automatically by the SDK but requires a Mobile API key you create in Illuminate. Mobile API keys are available only for supported subscriptions.
To call the Mobile REST API directly, you must provide an encrypted cpmPath as a parameter. The cpmPath for any watermark you read is provided by the getPayloadString method for Android or the DMSPayloadData interface for iOS. The encrypted cpmPath string begins with "ed2."
To get a Mobile API key:
- Log in to the Digimarc Illuminate Platform (https://digimarc.app).
- On the Account Settings view, scroll to the Configuration section and click API keys. The API Keys view opens.
- Click Add API key. The Add API Key view opens.
- Type a Name for the API key. It must be unique within your account. Names can be up to 64 characters long.
- Choose Mobile API as the API type.
- Enable Read only as the API key permission.
- Click Add API key. The New API Key view opens, displaying your new API key.
- Click the Copy icon ( ) to copy the API key and save it on your computer or click Download API key as a text file to save a text file in your default downloads folder. The text file name follows the pattern Illuminate mobile read only API Key <key_name>.txt.
For more information, see: