CONNECT Player SDK 5 for Apple (FPS)
5.14.x 5.13.x 5.12.x 5.11.x 5.10.x 5.9.x 5.8.x 5.7.x 5.6.x 5.5.x 5.4.x 5.3.x 5.2.x 5.1.x 5.0.x
5.14.x 5.13.x 5.12.x 5.11.x 5.10.x 5.9.x 5.8.x 5.7.x 5.6.x 5.5.x 5.4.x 5.3.x 5.2.x 5.1.x 5.0.x

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.

watermarked-video#1.png

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:

watermark.delegate = self