Virtual Clock for Media Synchronization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In digital multimedia playback systems, synchronizing media across multiple destinations while minimizing resource usage and network bandwidth, and mitigating packet losses in wireless networks to ensure uninterrupted playback is challenging, especially when different media components follow different network paths.

Innovation Solution

A method for indirectly measuring the rendering clock by computing a virtual clock using media data block size, number of blocks, and CPU clock increments, allowing for adjustments to synchronize media playback across multiple devices without specialized hardware, using a CPU and media rendering subsystem with separate clock domains.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If indirect clock measuring is used to synchronize media playback across multiple devices, then synchronization accuracy is improved, but device complexity increases due to virtual clock computation requirements

Engineering Contradiction:
Improvesynchronization accuracyVSAvoiddevice complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent introduces a virtual clock as an intermediary mechanism that mediates between the CPU clock domain and the media rendering clock domain. This virtual clock is computed indirectly through measuring media data block transfer timing, allowing synchronization without direct access to the rendering clock hardware, thus resolving the contradiction between measurement precision and device complexity

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent replaces direct hardware clock measurement (mechanical/system-level access to rendering clock) with a software-based computational approach. By substituting the physical clock measurement mechanism with a virtual clock computed from data block timing information, the system achieves synchronization accuracy without increasing hardware complexity

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Reliability

If separate clock domains are used in CPU and media rendering subsystem, then playback reliability is improved through independent clock sources, but measurement precision deteriorates due to inability to directly access rendering clock

Engineering Contradiction:
Improveplayback reliabilityVSAvoidclock measurement precision
Core Design Contradiction:
ReliabilityVSMeasurement precision

Solution Approach 1:

The patent transitions from directly measuring time in the rendering clock domain to measuring data block transfer events that bridge both clock domains. By observing the timing of media data blocks from the CPU's perspective (another dimension), the system can infer rendering clock characteristics without directly accessing it, maintaining both reliability and measurement precision

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Solution Approach 2:

The patent implements a feedback mechanism where the system continuously monitors the timing of media data block transfers and uses this information to compute and adjust the virtual clock. This feedback loop allows the system to maintain accurate synchronization measurements despite the separation of clock domains, as the virtual clock is continuously refined based on observed transfer timing

Inventive Principle:
Principle #23Feedback

3Quantity of substance

If virtual clock computation is performed using media data block timing, then resource usage is minimized without specialized hardware, but productivity decreases due to computational overhead

Engineering Contradiction:
Improveresource usageVSAvoidproductivity
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The patent makes the media rendering subsystem serve its own timing measurement needs by using its own data block transfer events to generate the timing information required for virtual clock computation. This self-service approach eliminates the need for separate specialized hardware or external measurement systems, minimizing resource usage while maintaining measurement accuracy

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent makes the existing media data block transfer mechanism serve multiple functions: both its original purpose of delivering media data and the additional function of providing timing information for clock synchronization. This multi-functionality reduces the need for separate resources dedicated solely to timing measurement, thereby minimizing overall resource usage while maintaining productivity

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

Data Source

PatentUS9804633B2Indirect clock measuring and media adjustment
Publication Date: 2017.10.31 ROKU INC
  • US9804633B2 patent drawing
  • US9804633B2 patent drawing
  • US9804633B2 patent drawing

AI summary

A method for indirectly measuring the clock rate of a media rendering subsystem, in a media rendering device that has a separate hardware clock for rendering the media, by using the rate at which data requests are made of the CPU in the media rendering device and using the CPU clock to provide additional accuracy in measuring the clock rate.