Qencode + DoveRunner

Encrypt with Widevine, FairPlay, and PlayReady through DoveRunner — multi-DRM plus forensic watermarking in one workflow.

Overview

What This Integration Does

Qencode integrates with DoveRunner to deliver multi-DRM encryption and forensic watermarking in a single transcoding workflow. Qencode handles encoding and packaging; DoveRunner provides the key server and license delivery for Widevine, FairPlay, and PlayReady. For content owners who need both DRM protection and forensic traceability, this integration eliminates the need to manage separate watermarking and encryption pipelines.

Architecture

How the Integration Works

Source

Any storage or URL

Qencode ingests your source video from any storage provider or URL.

Encode & Encrypt

Encode & Encrypt

Qencode transcodes the video and requests encryption keys from DoveRunner's key server during packaging.

Package

Key & license server

Qencode writes encrypted HLS and/or DASH output with DoveRunner-managed keys to your storage.

Playback

Licensed playback

The viewer's device requests a license from DoveRunner. DoveRunner validates and delivers the decryption key.

Getting Started

Setup Steps

  1. Set up your DoveRunner account

    Register for a DoveRunner account and obtain your API credentials, key server URL, and license server endpoints for Widevine, FairPlay, and/or PlayReady.

    This step is completed in DoveRunner's dashboard — see DoveRunner documentation

  2. Configure DRM provider in Qencode

    In the Qencode dashboard, go to Settings → DRM and add your DoveRunner API key and key server endpoint.

  3. Enable DRM in your transcode request

    Add the cenc_drm parameter to your format array, specifying the DRM systems and DoveRunner as the provider. Enable forensic watermarking if required.

  4. Test playback

    Use a test player (Shaka Player for Widevine/PlayReady, Safari for FairPlay) to verify license acquisition, encrypted playback, and watermark presence.

Implementation

Code Example

Request Example

Widevine DRM via DoveRunner

{
  "query": {
    "source": "https://your-storage.com/video.mp4",
    "format": [
      {
        "output": "advanced_dash",
        "destination": {
          "url": "s3://YOUR_BUCKET/path/to/output/",
          "key": "YOUR_STORAGE_KEY",
          "secret": "YOUR_STORAGE_SECRET"
        },
        "stream": [
          {
            "video_codec": "libx264",
            "audio_codec": "aac",
            "width": 1280,
            "height": 720,
            "bitrate": 3000,
            "audio_bitrate": 128
          }
        ],
        "cenc_drm": {
          "key_id": "e2b281bafba58760cfa65ae6f3ddd630",
          "key": "c608c2426e4e7520b8b50f0b825f6e52",
          "iv": "34773976613968717467636c65756531",
          "pssh": "AAAAUXBzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAADEIARIQ4rKBuvulh2DPplrm893WMBoKZG92ZXJ1bm5lciIPdGVzdC1jb250ZW50LTAx",
          "la_url": "https://drm-license.doverunner.com/ri/licenseManager.do"
        }
      }
    ]
  }
}

Replace placeholder credentials with your actual DoveRunner API key and key server URL. Use environment variables in production.

For a step-by-step walkthrough, see Tutorial: DoveRunner DRM

We love creating powerful solutions that are aligned with the needs of your business.

Please send us a message if you have a question or Schedule a call for a demo to discuss your integration.

Let's talk

First Name
Last Name
Company
Email
Your Message

Contact us with any questions. We'd love to help.

Los Angeles, CA - (HQ)

San Francisco, CA

New York, NY