DTCP Translator for HLS Streaming with Trick Play Support
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
DTCP and HLS standards are not compatible, making it difficult to stream media content securely across different devices, particularly when using Apple devices, and existing solutions do not effectively enable trick play operations in HLS streaming.
Innovation Solution
A DTCP translator is developed to convert DTCP-standard compliant video into HLS-compatible format, including chunking and padding of Protected Content Packets with a DTCP key, and implementing a modified SEEK operation using DLNA headers for trick play functionality.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If DTCP standard is used for secure content protection, then content security is improved, but compatibility with HLS players is lost
Solution Approach 1:
A translation layer is introduced between DTCP content protection and HLS streaming protocols. The translation server receives DTCP-protected content, extracts the encryption keys and content, re-encrypts it using HLS-compatible encryption methods, and delivers it to HLS players. This intermediary enables compatibility without compromising the security of the original DTCP content.
2Adaptability or versatility
If HLS standard is used for streaming compatibility, then device compatibility is improved, but native DTCP security protection is lost
Solution Approach 1:
The translation server acts as a secure gateway that maintains DTCP security requirements while enabling HLS compatibility. It enforces DTCP key management and content protection rules, then translates the protected content into HLS format with appropriate encryption, ensuring that security policies are maintained throughout the translation process.
3Adaptability or versatility
If DTCP content is converted to HLS format, then HLS player compatibility is improved, but trick play functionality is lost
Solution Approach 1:
The translation server pre-processes DTCP content by segmenting it into HLS-compatible chunks and pre-generating index files that enable random access. By preparing the content structure in advance with proper byte-range support and playlist indexing, the server enables trick play operations (seek, fast forward, rewind) in the converted HLS content without requiring real-time processing during playback.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A method for DTCP to HLS conversion is provided that starts with a standard DTCP Protected Content Packet (PCP) structure. The PCP payload data is chunked at defined chunk boundaries. Each chunk is then appended with a pad to be compatible with HLS. An HLS playlist is then provided using the PCP header with identification of the chunks and a keytag. The chunk is encrypted with a DTCP key calculated by the DTCP standard using: (a) copy control bits; (b) a nonce, and (c) an exchange key ID. Relevant PCP header fields are provided in the keytag for the HLS playlist supporting the transaction that enables calculation of the DTCP content key to enable later decryption of the chunks. The system further provides a revised HLS GET for DLNA to enable trick play seek operations to be performed on the converted HLS.