Header Translation Modification for Widevine DRM Compatibility

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current video players cannot play encrypted video assets with PSSH headers from unsupported DRM systems, such as PlayReady, on devices that only support Widevine, without re-encoding or re-encrypting the assets.

Innovation Solution

A video player and license server system that generates a Widevine header on-the-fly using available information, including a KeyID field and a ContentID field, to request a license from a Widevine license server, allowing decryption and playback even if not all necessary information is readily available.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a video player only supports Widevine DRM and receives an asset encrypted with PlayReady DRM, then the player cannot decrypt and play the video, but re-encoding or re-encrypting the asset is required to make it compatible

Engineering Contradiction:
ImproveDRM system compatibilityVSAvoidasset processing complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces a header translation mechanism that acts as an intermediary between PlayReady and Widevine DRM systems. The translator converts the PlayReady PSSH header into a Widevine-compatible header format, enabling the Widevine decoder to process assets originally encrypted with PlayReady without requiring re-encoding of the video content itself.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent changes the format parameters of the PSSH header from PlayReady specification to Widevine specification. This involves transforming the header structure, field names, and data organization to match Widevine expectations while preserving the essential decryption information, thereby enabling compatibility without altering the encrypted video payload.

Inventive Principle:
Principle #35Parameter changes

2Ease of operation

If the PSSH header contains only PlayReady-specific information, then Widevine license requests cannot be formed, but translating the header enables license acquisition

Engineering Contradiction:
Improvelicense request formationVSAvoidDRM system information
Core Design Contradiction:
Ease of operationVSLoss of information

Solution Approach 1:

The header translator serves as an intermediary that converts PlayReady PSSH header information into Widevine-compatible format. It maps PlayReady fields to corresponding Widevine fields, ensuring that the translated header contains all necessary information for Widevine license requests while discarding PlayReady-specific elements that are not needed by Widevine.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The translation process extracts only the essential decryption information from the PlayReady PSSH header that is relevant to Widevine, omitting PlayReady-specific data. This extraction enables formation of valid Widevine license requests using only the necessary key identifiers and encryption parameters.

Inventive Principle:
Principle #2Taking out (Extraction)

3Measurement precision

If different DRM systems use different identifier formats (KeyID vs ContentID), then license key lookup fails, but format translation enables successful key retrieval

Engineering Contradiction:
Improveidentifier matching accuracyVSAvoididentifier format handling
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent applies parameter changes by transforming the identifier format from PlayReady's KeyID structure to Widevine's ContentID structure. The translator modifies the identifier representation to match Widevine's expected format, enabling accurate matching with the license server's key store while maintaining the underlying cryptographic functionality.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10574629B2Header translation modification
Publication Date: 2020.02.25 PRJ HLDG CO LLC
  • US10574629B2 patent drawing
  • US10574629B2 patent drawing
  • US10574629B2 patent drawing

AI summary

There is disclosed a video player comprising a Widevine decoder, further comprising: a receiver for receiving an asset and an associated manifest file; a search engine for searching the manifest file to identify a KeyID field; a Widevine header creation module for creating a Widevine header including: a KeyID field corresponding to the identified KeyID field of the asset manifest file; and a ContentID field based on the identified KeyID field of the asset manifest file, wherein the format of the KeyID field and the created ContentID field of the created Widevine header are different; an interface for transmitting a request for a license to a Widevine license server, the request including the created Widevine header, and for receiving a Widevine license from the Widevine license server responsive to the request; and a controller for accessing video content associated with the asset using the Widevine license. There is disclosed a Widevine license server configured to: receive a license request including a Widevine header from a video player; transmit the Widevine header to a Widevine processing function; receive the ContentID field of the Widevine header from the Widevine processing function; parse the ContentID field, and in dependence on identification of the syntax of said field, using the KeyID field to obtain a Widevine license; and transmit the accessed Widevine license to the video player.