Request-Driven Encoding for Consistent Streaming Content
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing content delivery systems face issues with inconsistent formatting in content streams, leading to technical problems and a poor user experience, as different content portions may have disparate encoding parameters, and client devices may modify or block certain content portions.
Innovation Solution
A streaming content delivery system that implements request-driven encoding to match content portions with common formatting parameters, using optimistic manifest creation and fallback portions to ensure consistent playback, and employs concealed identifiers to prevent content modification.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If content portions are delivered from multiple data centers with different encoding parameters, then content diversity and customization are improved, but formatting consistency deteriorates
Solution Approach 1:
The system dynamically changes encoding parameters based on client device capabilities and network conditions. The manifest file contains multiple versions of content portions with different encoding parameters (resolution, bitrate, format), and the system selects and delivers the appropriate version to each client, ensuring both content diversity and formatting consistency.
Solution Approach 2:
The content stream is segmented into multiple content portions (main content, advertisements, legal warnings, credits) that can be independently encoded and delivered. Each segment can have different encoding parameters optimized for its specific requirements, while the overall stream maintains consistent formatting through the manifest coordination mechanism.
2Speed
If content portions are pre-encoded with fixed parameters, then delivery speed is improved, but adaptability to different client devices deteriorates
Solution Approach 1:
The system performs preliminary encoding of content portions into multiple versions with different parameters before delivery. The manifest file is generated in advance with references to these pre-encoded versions, enabling rapid delivery while maintaining adaptability. The client device can quickly select the appropriate pre-encoded version based on its capabilities without requiring real-time encoding.
Solution Approach 2:
The manifest file serves multiple functions: it describes the content structure, provides encoding parameters for each content portion, enables client device compatibility matching, and facilitates rapid content delivery. This single data structure achieves universality by handling multiple requirements simultaneously.
3Ease of operation
If client devices can access and modify content portions, then ease of operation is improved, but content protection deteriorates
Solution Approach 1:
The manifest file acts as an intermediary between the content delivery system and client devices. It provides clients with structured information about content portions and their parameters, enabling easy access and operation. Simultaneously, the manifest can include protection mechanisms (such as DRM references, encryption keys, or access control information) that maintain content protection while allowing legitimate client operations.
Data Source
Figure 1
Figure 2
Figure 3A
AI summary
Systems and methods are described to enable request-driven encoding of content portions to be played back as part of a content stream. A content stream can represent multiple types of content, each initially encoded according to different formatting parameters. Thus, playback of the multiple types of content as initially encoded would result in an inconsistently formatted content stream. To address this, a streaming content delivery service may respond to requests by determining whether consistently formatted content portions are available, and if such portions are not available, select fallback content portions for inclusion in the stream. The streaming content service can further initiate generation of the consistently formatted content portions in response to the request, such that subsequent requests may be serviced using the consistently formatted content portions.