Media Container Embedded Code for Format Conversion
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Media engines often lack the necessary components to process various audio and video encoding formats and container formats, leading to partial or incomplete playback of media content, requiring content providers to create multiple versions of the same content for different devices, which is wasteful in terms of storage and processing resources.
Innovation Solution
Embedding runnable code, such as JavaScript, within media containers to execute on the receiving apparatus and perform necessary processing, including transcoding, multiplexing, and format conversion, to support playback of media content by the media engine, even if it lacks specific decoding capabilities or container format support.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If media engines are designed with support for multiple encoding formats and container formats, then playback compatibility is improved, but device complexity increases
Solution Approach 1:
A format conversion service acts as an intermediary between the media container and the media engine. This service receives media containers in various formats, converts them to a standardized internal format, and then provides them to the media engine. This mediator approach enables the media engine to maintain simple, fixed functionality while still supporting multiple input formats through the conversion service layer.
Solution Approach 2:
The system is segmented into distinct functional components: a format conversion service that handles format adaptation, and a media engine that handles playback. This segmentation allows each component to be optimized independently - the conversion service handles format diversity while the media engine maintains simplicity, resolving the contradiction between versatility and complexity.
2Adaptability or versatility
If content providers create multiple versions of the same content for different devices, then playback compatibility is improved, but storage and processing resources are wasted
Solution Approach 1:
A single media container is designed to serve multiple device types through the format conversion service. Instead of creating separate versions for different devices, the universal container format can be converted to any required format by the service, eliminating the need for multiple content versions and reducing storage and processing resource waste.
Solution Approach 2:
The format conversion service dynamically changes format parameters (encoding schemes, container formats) based on the target device capabilities, while the content itself remains unchanged. This parameter-based adaptation allows one content version to serve multiple devices, avoiding the resource waste of creating multiple content versions.
3Adaptability or versatility
If format conversion is performed on the server side before delivery, then playback compatibility is improved, but processing time and server load increase
Solution Approach 1:
The media container is pre-prepared in a universal format that contains all necessary information for conversion. The format conversion service performs conversion only when needed based on device capability detection, rather than pre-converting to all possible formats. This preliminary preparation approach reduces unnecessary processing time while maintaining compatibility.
Solution Approach 2:
The system dynamically determines the appropriate format conversion based on real-time device capability detection. Rather than static pre-conversion to all formats or no conversion, the service adaptively performs conversion only when and how needed, optimizing processing time based on actual device requirements.
4Adaptability or versatility
If the media engine directly processes all container formats, then playback compatibility is improved, but the media engine complexity increases
Solution Approach 1:
The format conversion service serves as an intermediary layer between diverse container formats and the media engine. This mediator handles all format-specific processing, allowing the media engine to maintain a simple, fixed design that interacts with a standardized internal format, thus improving compatibility without increasing engine complexity.
Solution Approach 2:
Format conversion functionality is extracted from the media engine and placed in a separate format conversion service. This extraction removes the complexity of handling multiple formats from the media engine itself, allowing it to remain simple while still achieving broad compatibility through the external conversion service.
Data Source
AI summary
A method of playing out media from a media engine run on a receiving apparatus, the method comprising: at the receiving apparatus, receiving a media data structure comprising audio or video content formatted in a plurality of layers, including at least a first layer comprising the audio or video content encoded according to an audio or video encoding scheme respectively, and a second layer encapsulating the encoded content in one or more media containers according to a media container format; determining that at least one of the media containers further encapsulates runnable code for processing at least some of the formatting of the media data structure in order to support playout of the audio or video content by the media engine; running the code on a code engine of the receiving apparatus in order to perform the processing of the media data structure for input to the media engine.


