Browser Video Editor Master Clock Sync

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Browser-based video editing over the internet faces challenges in synchronizing multimedia layers, such as video, audio, and graphic/text layers, which are stored externally and accessed asynchronously, leading to desynchronization during playback.

Innovation Solution

A remote service employs a master clock object operating at a constant rate to synchronize multimedia layers by using a rendering engine and a headless browser, ensuring each layer is controlled by its respective engine (video, audio, or graphic/text) and aligns their properties and timings, with the master clock object checking time values and visibility at each tick, and streams playback to FFmpeg for recording into an MP4 file.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If multimedia layers are accessed asynchronously from external sources, then the browser can utilize web-based multimedia sources, but the multimedia layers become desynchronized during playback

Engineering Contradiction:
Improveutilization of web-based multimedia sourcesVSAvoidsynchronization of multimedia layers
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

A master clock object is introduced as an intermediary to synchronize multiple asynchronous multimedia layers. The master clock operates at a constant rate and provides a unified timing reference that coordinates video, audio, and graphic layers, allowing them to be pulled from external web sources while maintaining synchronization through the mediating clock mechanism.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If a master clock object is introduced to synchronize multimedia layers, then synchronization is achieved, but the system complexity increases

Engineering Contradiction:
Improvesynchronization of multimedia layersVSAvoidsystem architecture complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The master clock object serves multiple functions simultaneously: it provides timing synchronization for all multimedia layers, acts as a coordination mechanism for asynchronous resource loading, and enables the browser-based editor to maintain a composition schema. This multi-functionality reduces the need for separate synchronization mechanisms for each layer type.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Adaptability or versatility

If external resources are pulled asynchronously, then the browser can access internet resources, but the playback timing becomes uncertain

Engineering Contradiction:
Improveaccess to external resourcesVSAvoidplayback timing accuracy
Core Design Contradiction:
Adaptability or versatilityVSMeasurement precision

Solution Approach 1:

The master clock object implements a feedback mechanism by continuously monitoring the playback timing of each multimedia layer and adjusting their synchronization accordingly. At each tick of the master clock, the system checks the timing status of video, audio, and graphic layers, providing feedback that ensures accurate playback timing despite asynchronous resource loading from external sources.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS10631047B1Online video editor
Publication Date: 2020.04.21 POND5 INC
  • US10631047B1 patent drawing
  • US10631047B1 patent drawing
  • US10631047B1 patent drawing

AI summary

A browser-based video editor is configured to allow a user to create a composition schema having multimedia layers, including video, audio, and graphic and text layers. The composition schema may be transmitted to a remote service that employs a rendering engine to play back the composition schema and align the clocks for each respective multimedia layer into a single video representation. A master clock object is employed to sync the clocks while also checking a series of properties with each multimedia layer to comport the multimedia layers with an interval-based master clock. The composition schema is recorded using FFmpeg (Fast Forward Moving Picture Experts Group) to create a video representation for user consumption, such as an MP4 (Motion Pictures Experts Group 4) formatted file.