Template-Based Content Rendering for Set-Top Boxes

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current streaming services require specialized servers and are inconvenient to customize or change once approved, limiting flexibility in content delivery and user experience.

Innovation Solution

A template-based system where media player devices use standardized and customized templates to render content, allowing content providers to customize their offerings without complex management or configuration processes, by parsing and executing template-based applications with standard and customized libraries.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If specialized servers and approved software are used for content streaming, then content delivery reliability is improved, but software customization flexibility deteriorates

Engineering Contradiction:
Improvecontent delivery reliabilityVSAvoidsoftware customization flexibility
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The software is segmented into a standardized core component (approved by device provider) and a customizable template component (provided by content provider). The template is parsed and executed within the constrained environment, allowing customization without modifying the approved core software.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A template-based intermediary layer is introduced between the approved software and the content delivery process. This template acts as a mediator that enables customization while operating within the constraints of the approved software environment.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If standardized templates are used for content rendering, then ease of customization is improved, but device complexity increases

Engineering Contradiction:
Improveease of customizationVSAvoiddevice complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

Instead of modifying the core software, the system uses template copying where standardized patterns are replicated and adapted for different content types. The template engine copies and instantiates rendering patterns without altering the underlying approved software structure.

Inventive Principle:
Principle #26Copying

3Productivity

If template-based rendering is implemented, then content delivery efficiency is improved, but processing requirements increase

Engineering Contradiction:
Improvecontent delivery efficiencyVSAvoidprocessing requirements
Core Design Contradiction:
ProductivityVSPower

Solution Approach 1:

Rendering templates are prepared and validated in advance during the approval process. This preliminary action ensures that templates are optimized and ready for efficient execution, reducing processing requirements during actual content delivery.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11102332B2Method and system for rendering content using templates
Publication Date: 2021.08.24 APPLE INC
  • US11102332B2 patent drawing
  • US11102332B2 patent drawing
  • US11102332B2 patent drawing

AI summary

According to some embodiments, an application launcher of a media player device launches an application bundle, the application bundle including a binary code. In response, a first server is accessed based on a universal resource locator (URL) specified by the application bundle to download an executable script. The executable script is parsed to configure a script runtime environment based on a predetermined template associated with the executable script. A first application programming interface (API) and a second API are enabled, where the first API is used to access a predetermined library maintained by the media player device and the second API is used to communicate with the binary code. The executable script is executed within the script runtime environment to render content, including rendering standard content by invoking the predetermined library via the first API and rendering customized content by invoking the binary code via the second API.