Fragmented ISOBMFF Proxy for On-the-Fly Progressive Transmuxing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing systems face challenges in efficiently transmultiplexing fragmented ISOBMFF files to progressive ISOBMFF files, particularly due to the need to move the moov box to the front of the file, which is slow and requires disk writes, and is not conducive to on-the-fly multiplexing. Additionally, many recent playlist formats and APIs do not accept progressive ISOBMFF files, requiring conversion to fragmented ISOBMFF files for adaptive bitrate streaming.

Innovation Solution

A method and system for transmultiplexing fragmented ISOBMFF files to progressive ISOBMFF files by parsing fragments, generating a cache object, calculating output mdat offsets, and multiplexing output bytes to the progressive ISOBMFF format, allowing for on-the-fly conversion and serving of progressive ISOBMFF files.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If a second pass is made to move the moov box to the front of the file, then the file can be played while downloading, but the process is slow and requires disk writes

Engineering Contradiction:
Improvefile playback capabilityVSAvoidmultiplexing speed
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent applies preliminary action by writing the moov box to the front of the file during the initial multiplexing pass, rather than requiring a subsequent repass. The moov box is constructed with placeholder offsets that are updated as samples are multiplexed, enabling immediate playback capability without sacrificing multiplexing speed.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates a copy of the moov box structure and places it at the front of the file during the first pass. This copy contains initial offset information that is subsequently updated as the file is multiplexed, allowing the file to be playable immediately while the final structure is being built.

Inventive Principle:
Principle #26Copying

2Manufacturing precision

If the moov box is written at the end of the file after parsing and multiplexing, then all sample information is available, but the file cannot be streamed efficiently

Engineering Contradiction:
Improvesample information accuracyVSAvoidstreaming speed
Core Design Contradiction:
Manufacturing precisionVSSpeed

Solution Approach 1:

The moov box is preliminarily written to the front of the file with initial offset values before all sample data is multiplexed. This allows the file structure to be valid and streamable immediately, while the actual sample offsets are updated as multiplexing progresses, maintaining both streaming capability and information accuracy.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements a dynamic moov box that is initially written with placeholder offset information and then updated as samples are multiplexed into the file. This dynamic approach allows the file to transition from an incomplete but streamable state to a complete and accurate state without requiring a second pass.

Inventive Principle:
Principle #15Dynamics

3Adaptability or versatility

If fragmented ISOBMFF files are converted to progressive ISOBMFF files, then compatibility with legacy systems is improved, but conversion requires complete file multiplexing

Engineering Contradiction:
Improvesystem compatibilityVSAvoidconversion process complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The conversion process applies preliminary action by constructing the progressive ISOBMFF moov box during the initial fragmented file parsing phase, rather than requiring complete file multiplexing first. This allows legacy system compatibility to be achieved incrementally as fragments are processed.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses an intermediary cache object that stores parsed fragment information and serves as a bridge between fragmented and progressive ISOBMFF formats. This cache object allows the conversion process to proceed incrementally without requiring complete file multiplexing, reducing conversion complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS12346291B2On-the-fly/transparent fragmented ISOBMFF to progressive ISOBMFF transmultiplexing proxy
Publication Date: 2025.07.01 VIMEO COM INC
  • US12346291B2 patent drawing
  • US12346291B2 patent drawing
  • US12346291B2 patent drawing

AI summary

An aspect of the subject technology includes a method including receiving a request including an input file and a selection. The input file is in the fragmented ISOBMFF format. The method also includes parsing one or more fragments from the input file, generating a cache object based on the fragments, generating an output moov box based on at least one of the fragments or the cache object, calculating output mdat offsets for the selection corresponding to the fragments based on at least one of the fragments or the cache object, and determining output bytes of an output mdat section. The output mdat section is based on the output mdat offsets. The method further includes multiplexing the output bytes to the progressive ISOBMFF format, and serving the multiplexed output bytes.