Collaborative Media Editing via Hybrid Logical Clocks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Collaborative editing of media assets in a multi-user and mixed computing environment faces challenges such as latency, bandwidth limitations, and achieving real-time synchronization across geographically diverse users, making it difficult to ensure consistency and efficiency in rendering editing actions.

Innovation Solution

The system employs a central server to manage a shared canvas, using hybrid logical clocks (HLCs) for timestamping and conflict-free replicated data types (CRDTs) to determine operational ordering, allowing users to propagate changes while supporting conflict resolution protocols like last-writer-wins, ensuring that changes are applied consistently across all users.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If multiple users repeatedly upload the entire local state of the user in real-time, then real-time collaboration is achieved, but bandwidth consumption becomes excessive and impractical

Engineering Contradiction:
Improvereal-time collaboration speedVSAvoidbandwidth consumption
Core Design Contradiction:
SpeedVSLoss of energy

Solution Approach 1:

The patent segments the local state into discrete operational units (patches) that represent specific editing actions. Instead of transmitting the entire local state, only the relevant operational segments are uploaded to the server and distributed to other users. This segmentation dramatically reduces bandwidth consumption while maintaining real-time collaboration capability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extracts only the essential operational information (patches) from the complete local state and transmits only these extracted elements. The patches contain minimal necessary data representing specific editing operations, eliminating redundant information transmission and optimizing bandwidth utilization.

Inventive Principle:
Principle #2Taking out (Extraction)

2Reliability

If tight clock synchronization is achieved in a multi-user environment, then consistency between users is assured, but system complexity increases due to the need for high-frequency synchronization

Engineering Contradiction:
Improveconsistency between usersVSAvoidsynchronization system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent incorporates timestamps into patches as a preliminary action during patch creation. Each patch is pre-tagged with timing information that enables automatic ordering and conflict resolution without requiring complex real-time clock synchronization mechanisms. This preliminary embedding of temporal information simplifies the overall system complexity.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an intermediary hybrid logical clock mechanism that mediates between distributed user clocks and the central server. This intermediary layer provides a simplified interface for timestamp generation and comparison, reducing the complexity that would otherwise be required for direct peer-to-peer clock synchronization.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If the entire local state is transmitted to ensure completeness, then data consistency is maintained, but network latency increases making real-time collaboration difficult

Engineering Contradiction:
Improvedata completenessVSAvoidnetwork latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

By segmenting the local state into discrete operational patches, the patent enables transmission of only the necessary data portions. This segmentation maintains data completeness for the specific operations being performed while dramatically reducing the overall transmission size and network latency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies partial action by transmitting only the specific operational patches that are necessary for maintaining consistency, rather than the excessive action of transmitting the entire local state. This partial transmission approach achieves sufficient data completeness for collaborative editing while minimizing latency.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentEP3750291B1Collaborative editing of media in a mixed computing environment
Publication Date: 2024.04.03 SHUTTERSTOCK VENTURES LLC
  • EP3750291B1 patent drawingFigure 1
  • EP3750291B1 patent drawingFigure 2
  • EP3750291B1 patent drawingFigure 3

AI summary

A user computing device may receive a command from a user to modify an object of a canvas. The canvas state may be shared between multiple users as part of a collaborative editing session. The received command may be accepted and the user computing device may perform a first operation on the object of the canvas according to the command, such as modifying a mutable attribute. The computing device may perform one or more steps to generate a patch. The computing device may be configured to receive a remote patch and process the remote patch in a manner where some operations of the remote patch are discarded and other operations of the remote patch are applied. A hybrid logical clock may be utilized to coordinate the application of remote patches.