Just-in-Time Video Encoding for Cloud DVR Storage Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Cloud or network digital video recorder (DVR) systems face inefficiencies in storage utilization due to the inability to play content segments recorded in different quality versions, leading to unnecessary storage of multiple format versions.

Innovation Solution

Implementing just-in-time encoding of video segments, where the system stores one high-quality version and encodes it on demand to match the requested lower quality format, reducing storage needs while efficiently utilizing encoding resources.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If multiple quality versions of content segments are pre-stored, then playback compatibility across different quality requirements is improved, but storage resource consumption increases

Engineering Contradiction:
Improveplayback compatibilityVSAvoidstorage resource consumption
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The system performs preliminary encoding of content segments into multiple quality versions (e.g., high, medium, low bitrate) and stores only the highest quality version. When a user requests a specific quality level, the system retrieves the stored high-quality version and performs real-time transcoding to generate the requested quality version, eliminating the need to pre-store all quality variants.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system changes the quality parameters (bitrate, resolution, codec settings) of the content segment dynamically based on user requests. By storing a single high-quality master version and applying parameter transformations during playback, the system achieves multi-quality adaptability without multiplying storage requirements.

Inventive Principle:
Principle #35Parameter changes

2Quantity of substance

If only one high-quality version is stored, then storage efficiency is improved, but the system cannot directly play content in requested quality formats without real-time encoding

Engineering Contradiction:
Improvestorage efficiencyVSAvoidencoding time
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The system performs preliminary preparation by storing the high-quality master version with complete encoding information and metadata. This preliminary action enables rapid real-time transcoding when quality conversion is needed, as the encoding parameters and source material are already prepared, minimizing actual encoding time during playback requests.

Inventive Principle:
Principle #10Preliminary action

3Speed

If all quality versions are pre-encoded and stored, then playback speed is improved, but device complexity increases

Engineering Contradiction:
Improveplayback speedVSAvoidsystem complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The system extracts only the essential high-quality content segment from multiple possible quality versions and stores it. The quality transformation function is extracted and performed dynamically during playback, separating the storage function (simple) from the transformation function (complex but time-limited), thereby reducing overall system complexity while maintaining playback performance.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS20240236387A9Methods and systems for encoding of content segments
Publication Date: 2024.07.11 COMCAST CABLE COMM LLC
  • US20240236387A9 patent drawing
  • US20240236387A9 patent drawing
  • US20240236387A9 patent drawing

AI summary

Systems and methods are described herein for just-in-time encoding of uniquely recorded vide segments. A particular content segment can include a plurality of versions, where each version includes a different formatting characteristic. For example, the plurality of versions can include a high bit rate version, a medium bitrate version, and a low bitrate version. The system can store one of the versions of the content segment. When a user requests the content segment in a version other than the stored version, the system can retrieve the stored version from storage, and can encode the version of the content segment to generate or replicate the requested version of the content segment.