Developer Center

Watermarking

Watermarking technology enables identification of those responsible for unauthorized distribution of content that was obtained through screen capture or camera recording.

ExpressPlay watermarking for VOD, powered by Content Armor, is a comprehensive, fully managed, server side solution for session based watermarking that supports the DASH and HLS adaptive bitrate standards.

To evaluate the solution please contact your ExpressPlay sales representative.


Content Pre-processing

ExpressPlay uses a technique known as A/B switching, where two watermarked versions of the original content are interleaved to create a unique content manifest. Creation of the two watermarked versions is computationally intensive but needs to be done only once and can be done offline.

Figure 1

Figure 1 – Offline processing of the ABR content

The A/B Ingest process is done via a toolchain provided by ExpressPlay and it generates the following artifacts:

  • A Rendition – The original ABR content watermarked with the “A” watermark
  • B Rendition – The original ABR content watermarked with the “B” watermark
  • Pace file – A file used by the ExpressPlay service to generate the A/B switched manifest
  • Watermarking forensics data – Data that will be needed to extract the watermark from distributed content and must be kept by the service provider in perpetuity.

Generation of AB Manifest

Figure 2

Figure 2 – Runtime generation of the AB Manifest and Watermark ID

Generation of the AB Manifest is done through the ExpressPlay REST API, which processes the manifests from the A & B renditions generated during the preprocessing phase along with the Pace file to generate a manifest that will create a unique watermark when the content is recorded by an attacker.

The documentation for the watermarking API is available here.

Note: that to help reduce the network overhead involved in generating the AB Manifest, ExpressPlay can cache the A & B manifests.

In addition to the AB manifest, the ExpressPlay service will return a unique watermark ID that corresponds to the watermark pattern that will be rendered when the content is played (The unauthorized screen capture or digital recording of the content will contain that ID).

For DRM protected content it’s recommended to pass the watermark ID in the correlation parameter of the ExpressPlay token generation request. The correlation parameter will be captured in the transaction record that will be generated when the content is played by the user (proof of playback)


Content Playback

No special player or client is required, playback of the watermarked content is simply a matter of passing the AB Manifest to the Player on the device. The player will retrieve fragments from the A & B renditions in a sequence that generates a unique and invisible watermark.

Note: to prevent tampering with the watermark via a man in the middle attack, it is advised to deliver the manifest to the player via https.

Figure 3

Figure 3 – Runtime generation of the AB Manifest and Watermark ID


Watermark Extraction

Once the Studio discovers pirated content, it may contact the service provider for assistance with the investigation. The service provider can use the Watermark ID that is embedded in the content to correlate the pirated content with a specific session/user.

Extraction of the Watermark ID is done is done by submitting the content and the Watermarking forensic data to Intertrust.