Skip to main content
Skip table of contents

Forensic watermarking

The Nexguard library forensic watermarking tool embeds a unique, invisible serial number onto video/audio content.

Prerequisites

  • A Watermarking server to generate the watermarked surface. Associated with this:

    • Tenant Id - you may use TEST_TENANT during integration
    • Service endpoint URL
    • Secret key
    • API Key to authenticate with the service endpoint if required (optional)
  • A system to generate 24-bit Watermark IDs (contained within the token) to identify the user, session and device or both.

Initialisation

Instantiate and configure the OTVWatermark class by calling init(url:token:tenant:secret:) which provides all the configuration parameters.

Alternatively, for individual configuration, call init(secret:) followed by set(url:), set(token:) and set(tenant:)set(apiKey:) is also available if required.

Binding the player and view

The UIView and AVPlayerLayer must be bound together to allow the presentation of the watermark. Call bind(playerView:playerLayer:) passing references to your UIView and AVPlayerLayer.
When using TEST_TENANT as the tenant, you should see a stub pattern displayed over your video.

Feedback loop

Create a delegate to handle messages and error events from the watermarking system:

  • OTVWatermarkDelegate

The callbacks to implement for this delegate are:

  • onWatermark(error: OTVWatermarkError, message: String)
  • onWatermark(message: String)

Ensure the delegate for the OTVWatermark instance is set; for example:

CODE
watermark.delegate = self
JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.