---
title: "Watermark Detection Service Guide"
description: "This document explains how to request watermark detection and receive the result via DoveRunner Console."
---
> For the complete documentation index, see [llms.txt](/llms.txt).

import YouTubeEmbed from '../../../../../components/YouTubeEmbed.astro';

DoveRunner watermark detection operates using a `blind` detection approach.
During detection, the system analyzes video frames to identify the embedded watermark pattern and decrypts the watermark payload using the secret key that was used at the time of watermark insertion.

If a valid watermark payload is successfully extracted, the detection service queries the session database to locate the session record associated with the extracted payload. The corresponding session information is then returned as the detection result.

```mermaid
sequenceDiagram
    participant A as Service site
    participant B as DoveRunner service
    A ->> B: Suspicious content
    Note right of B: Detect watermark (payload)
    B -->> B: Analyze video frames
    opt Watermark detected
    Note right of B: Session database
    B -->> B: Find session data
    end
    B ->> A: Report detection result
```

## Tutorial Video

This video is a tutorial about how to request Forensic Watermarking detection.

<YouTubeEmbed videoId="LOJMPCkamnM" />

## Requirements for Detection

:::note 

For watermark detection, a continuous recorded video of at least 5 minutes or longer is required. DoveRunner Forensic Watermark solution is robust against various attacks including resizing, but the actual detection rate of the watermark may vary depending on the video quality (resolution, bitrate, shake, etc.) used for detection. The minimum specification required for detection is 480p 1Mbps or higher, and most of the video over 720p can be detected.
Incase there is lot of distortion and auto detection fails, as Doverunner supports non-blind detection as well 
the original video or even some snapshots of original content is provided through support ticket the expert team would try to extract the embedded watermark information. 

:::

The detailed requirements for watermark detection are as follows:

| Item | Description |
| :--- | :-- |
| Minimum video length | In order to detect watermarks, continuous recorded video without repeating sections with a length of at least 5 minutes is required |
| Video quality | At least 480p with 1Mbps is required for detection. 720p or higher quality recommended |
| Video stability | Requires fixed recorded video without shaking. Undetectable if the screen is shaken due to shooting with a handheld camera or smartphone |
| Buffering or freezing | There must be a section that was played normally without buffering or screen freezing for at least 5 minutes |

## Registering Watermark Detection

To request watermark detection, 
- **Step 1:** click the `Register Detection Request` button on the `Forensic Watermarking` > `Detection Service` screen of the DoveRunner Console.
- **Step 2:** On the registration screen, enter the title of the target content and the link to download the detection target file.
- **Step 3:** click the `Register` button to register the watermark detection request.

  - `Content Title`: Information to distinguish each item on the detection list screen. This information is not used in the actual watermark detection operation.
  - `Target Download Link`: Enter a 'direct download link' for the video file so that it can be downloaded by DoveRunner service system without any additional information or manual action — no login, and no interactive confirmation page. You can also enter a link to cloud storage such as Google Drive, but a standard "share" link (e.g. `drive.google.com/file/d/.../view`) is not automatically downloadable; use a direct-download link or configure sharing so the file downloads without an interstitial page.

## Reviewing Detection Result

After registering the detection request, you can check the request list with progress and detection result for each item on the `Detection Service` screen.

  - `Checkbox`: You can request `cancel detection` after selecting items that are being detected.
  - `Detection ID`: A unique ID for each detection request
  - `Content Title`: The title value entered on the request registration
  - `Type`: 
    - `Watermark` - When detection is requested through the detection service or API. 
    - `Anti-Piracy` - When detection is requested through the DoveRunner Anti Piracy service
  - `Status`: Displays the detection progress. For a detailed list of statuses, please refer to the next section.
  - `Registration Date`: The time the detection request was registered
  - `Complete Date`: The time the detection task was completed 

### Detection Status

The watermark detection operation can have the following statuses according to the progress.

 - `Submitted`: The detection request is registered in the system.
 - `Downloading`: The detection target video is being downloaded.
 - `Detecting`: The download is complete and watermark detection is in progress.
 - `Completed`: Watermark detection is completed and the result is available.
 - `Canceled`: The detection request was canceled by the user.
 - `Error`: Detection cannot proceed because the target video does not meet the requirements.
 - `Failed`: Tried to detect watermark, but failed due to various attacks.

### Detection Result Screen

If you click the link in the 'Content Title' of the detection request list, you can check detailed information and detection results for each detection task. The following information is displayed in the detection result.

 - `Result`: The same status value as the above `detection status` is displayed.
 - `Watermark Token`: When detection is successful, the watermark data (payload) actually inserted into the target video is displayed.
 - `Watermark`: A watermark string that is stored with the above watermark token as a key value. (forensic_mark value of the session API)
 - `Error Code`: If the detection status is `Error` or `Failed`, the corresponding error code is displayed.
 - `Error message`: Displays the error message corresponding to the error code.