Patent US5420801A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5420801A Expired / Lapsed US ⏱️ 0.0 years remaining

System and method for synchronization of multimedia streams

Assignee: International Business Machines Corp
•
Filing: 1992-11-13
•
Granted: 1995-05-30
•
Expires: 2012-11-13
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A computer-based multimedia presentation system is provided with a synchronization scheme for recording and playing independent media. The disclosed system and method allows media processes and single medium processes to achieve and maintain synchronization with each other without process interdependence and without interprocess communication. This capability is provided by assigning a common clock for all processes, requiring all participating media processes to reference the common clock, informing each process of, a synchronization basepoint called a "zero-time", and then allowing each process to independently synchronize itself to the common clock. The common clock itself does not provide any stimulus to a media process; it is a passive component in the synchronization. The media process is the active component, referring to the common clock as required to maintain synchronization for the particular media it is handling.

Inventors

  • 👤 Michael J. Dockter
  • 👤 Charles L. Haug
  • 👤 Kevin D. Seppi

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-24 22:09
CPC Classifications
G; G06; G06F; G06F8/00; G06F8/40; G06F8/41; G06F8/45; G06F8/458; G06F16/00; G06F16/40; G11; G11B; G11B27/00; G11B27/10

Claims Analysis

Total Claims: 42
Claim 1
Independent Claim 92 words
A method for synchronizing initiation of media operations in a multimedia recording and playback system, comprising the steps of: in a starter process, receiving the current time from a clock means, assigning the received current time as an initialization-time value, determining a zero-time value by adding a process preparation time to the initialization-time value, broadcasting the zero-time value to at least one media process; and in the media process, receiving the zero-time value, upon the current time reaching the zero-time value, initiating the media operations, thereby, synchronizing initiation of the media operations.
Claim 2
Independent Claim 92 words
A method for synchronizing initiation of media operations in a multimedia recording and playback system, comprising the steps of: in a starter process, receiving the current time from a clock means, assigning the received current time as an initialization-time value, determining a zero-time value by adding a process preparation time to the initialization-time value, broadcasting the zero-time value to at least one media process; and in the media process, receiving the zero-time value, upon the current time reaching the zero-time value, initiating the media operations, thereby, synchronizing initiation of the media operations.
Claim 3
Dependent Claim 30 words
A method for synchronizing initiation as recited in claim 1, wherein the media operation is any of image recording, image playback, text recording, text playback, audio recording, and audio playback.
Claim 4
Dependent Claim 19 words
A method for synchronizing initiation as recited in claim 1, wherein the clock means is a system real-time clock.
Claim 5
Dependent Claim 23 words
A method for synchronizing initiation as recited in claim 1, wherein the media process initiates its media operation independently of other media processes.
Claim 6
Dependent Claim 39 words
A method for synchronizing initiation as recited in claim 4, wherein media process receives exactly one zero-time value transmission, and wherein the zero-time value transmission constitutes the only synchronization transmission initiated from the starter process to the media process.
Claim 7
Independent Claim 106 words
A method for synchronizing initiation of media operations in a multimedia recording and playback system, comprising the steps of: in a starter process, receiving the current time from a clock means, assigning the received current time as an initialization-time value, determining a zero-time value by adding a process preparation time to the initialization-time value, broadcasting the zero-time value to at least one media process; and in the media process, receiving the zero-time value, determining a media start-time by combining an offset time with the zero-time value, and upon the current time reaching the media start-time, initiating the media operation, thereby, synchronizing initiation of the media operations.
Claim 8
Independent Claim 106 words
A method for synchronizing initiation of media operations in a multimedia recording and playback system, comprising the steps of: in a starter process, receiving the current time from a clock means, assigning the received current time as an initialization-time value, determining a zero-time value by adding a process preparation time to the initialization-time value, broadcasting the zero-time value to at least one media process; and in the media process, receiving the zero-time value, determining a media start-time by combining an offset time with the zero-time value, and upon the current time reaching the media start-time, initiating the media operation, thereby, synchronizing initiation of the media operations.
Claim 9
Dependent Claim 25 words
A method for synchronizing initiation as recited in claim 6, wherein the media start-time is determined by adding the offset time to the zero-time value.
Claim 10
Independent Claim 127 words
A method for synchronizing media recording in a multimedia recording and playback system, comprising the steps of: in a starter process, receiving the current time from a clock means, assigning the received current time as an initialization-time value, determining a zero-time value by adding a process preparation time to the initialization-time value; broadcasting the zero-time value to at least one media process; and in the media process, receiving the zero-time value, upon the current time reaching the zero-time value, repeating for each media event the sub-steps of obtaining the current time from the clock means, determining an event offset based on the zero-time value and the current time, logging the event offset in association with the media event, recording the media event, thereby, synchronizing the media recording.
Claim 11
Independent Claim 127 words
A method for synchronizing media recording in a multimedia recording and playback system, comprising the steps of: in a starter process, receiving the current time from a clock means, assigning the received current time as an initialization-time value, determining a zero-time value by adding a process preparation time to the initialization-time value; broadcasting the zero-time value to at least one media process; and in the media process, receiving the zero-time value, upon the current time reaching the zero-time value, repeating for each media event the sub-steps of obtaining the current time from the clock means, determining an event offset based on the zero-time value and the current time, logging the event offset in association with the media event, recording the media event, thereby, synchronizing the media recording.
Claim 12
Dependent Claim 38 words
A method for synchronizing media recording as recited in claim 8, wherein the step of repenting for each media event further comprises the sub-step of, after recording the media event, waiting for arrival of the next media event.
Claim 13
Dependent Claim 28 words
A method for synchronizing media recording as recited in claim 8, wherein a media event includes any of a single presentation object and a set of presentation objects.
Claim 14
Dependent Claim 27 words
A method for synchronizing media recording as recited in claim 8, wherein the logging step logs the event offset into the data rate of the recorded data.
Claim 15
Independent Claim 25 words
A method for synchronizing media recording as recited in claim wherein the event offset is determined by subtracting the zero-time value from the current time.
Claim 16
Dependent Claim 30 words
A method for synchronizing media recording as recited in claim 8, wherein the step of determining n zero-time value further includes coding the zero-time value by computing its two's complement.
Claim 17
Dependent Claim 32 words
A method for synchronizing media recording as recited in claim 8, wherein the media process determines the granularity and number of media events independently of the starter process and other media processes.
Claim 18
Dependent Claim 20 words
A method for synchronizing media recording as recited in claim 8, wherein the clock means is a system real-time clock.
Claim 19
Dependent Claim 25 words
A method for synchronizing media recording as recited in claim 8, wherein the media process operates independently of other media processes and the starter process.
Claim 20
Dependent Claim 41 words
A method for synchronizing media recording as recited in claim 16, wherein the media process receives exactly one zero-time value transmission, and wherein the zero-time value transmission constitutes the only synchronization transmission initiated from the starter process to the media process.
Claim 21
Independent Claim 140 words
A method for synchronizing media recording in a multimedia recording and playback system, comprising the steps of: in a starter process, receiving the current time from a clock means, assigning the received current time as an initialization-time value, determining a zero-time value by adding a process reparation time to the initialization-time value, broadcasting the zero-time value to at least one media process; and in the media process, receiving the zero-time value, determining a media start-time by adding an offset time to the zero-time value, upon the current time reaching the media start-time, repeating for each media event the sub-steps of obtaining the current time from the clock means, determining an event offset based on the zero-time value and the current time, logging the event offset in association with the media event, recording the media event, thereby, synchronizing the media recording.
Claim 22
Independent Claim 140 words
A method for synchronizing media recording in a multimedia recording and playback system, comprising the steps of: in a starter process, receiving the current time from a clock means, assigning the received current time as an initialization-time value, determining a zero-time value by adding a process reparation time to the initialization-time value, broadcasting the zero-time value to at least one media process; and in the media process, receiving the zero-time value, determining a media start-time by adding an offset time to the zero-time value, upon the current time reaching the media start-time, repeating for each media event the sub-steps of obtaining the current time from the clock means, determining an event offset based on the zero-time value and the current time, logging the event offset in association with the media event, recording the media event, thereby, synchronizing the media recording.
Claim 23
Independent Claim 118 words
A method for synchronizing media playback in a multimedia recording and playback system, comprising the steps of: in a starter process, receiving the current time from a clock means, assigning the received current time as an initialization-time value, determining a zero-time value by adding a process preparation time to the initialization-time value; broadcasting the zero-time value to at least one media process; and in the media process, receiving the zero-time value, accessing a log of event offset times associated with a plurality of media events, for each logged event offset time, performing the sub-steps of readying the associated media event for playing, and when the event offset time arrives, playing the media event, thereby, synchronizing the media playback.
Claim 24
Independent Claim 118 words
A method for synchronizing media playback in a multimedia recording and playback system, comprising the steps of: in a starter process, receiving the current time from a clock means, assigning the received current time as an initialization-time value, determining a zero-time value by adding a process preparation time to the initialization-time value; broadcasting the zero-time value to at least one media process; and in the media process, receiving the zero-time value, accessing a log of event offset times associated with a plurality of media events, for each logged event offset time, performing the sub-steps of readying the associated media event for playing, and when the event offset time arrives, playing the media event, thereby, synchronizing the media playback.
Claim 25
Dependent Claim 37 words
A method for synchronizing media playing as recited in claim 19, wherein the event offset time arrival is determined by comparing the current time with the sum of the zero-time value and the logged event offset time.
Claim 26
Dependent Claim 28 words
A method for synchronizing media playing as recited in claim 19, wherein the log of event offset times is provided in the data rate of the recorded data.
Claim 27
Dependent Claim 26 words
A method for synchronizing media playing as recited in claim 19, wherein the log of event offset times is created by any of recording and authorship.
Claim 28
Dependent Claim 51 words
A method for synchronizing media playing as recited in claim 19, wherein the step of performing sub-steps further comprises the sub-steps of determining a correction time based on the event offset time, the current time, and zero-time, for a non-zero correction time, performing a resynchronization action on the next media event.
Claim 29
Dependent Claim 32 words
A method for synchronizing media playing as recited in claim 19, wherein the correction time is determined by subtracting the current time from the sum of zero-time and the event offset time.
Claim 30
Dependent Claim 27 words
A method for synchronizing media playing as recited in claim 19, wherein for a negative correction time the resynchronization action includes any of compression, truncation, and deletion.
Claim 31
Dependent Claim 26 words
A method for synchronizing media playing as recited in claim 19, wherein for a positive correction time the resynchronization action includes any of waiting and elongation.
Claim 32
Dependent Claim 30 words
A method for synchronizing media playing as recited in claim 19, wherein the step of determining a zero-time value further includes coding the zero-time value by computing its two's complement.
Claim 33
Dependent Claim 20 words
A method for synchronizing media playing as recited in claim 19, wherein the clock means is a system real-time clock.
Claim 34
Dependent Claim 25 words
A method for synchronizing media playing as recited in claim 19, wherein the media process operates independently of other media processes and the starter process.
Claim 35
Dependent Claim 41 words
A method for synchronizing media playing as recited in claim 29, wherein the media process receives exactly one zero-time value transmission, and wherein the zero-time value transmission constitutes the only synchronization transmission initiated from the starter process to the media process.
Claim 36
Dependent Claim 23 words
A method for synchronizing media recording as recited in claim 19, wherein the media process terminates itself upon playing its final media event.
Claim 37
Independent Claim 118 words
A method for synchronizing media playback in a multimedia recording and playback system, comprising the steps of: in a starter process, receiving the current time from a clock means, assigning the received current time as an initialization-time value, determining a zero-time value by adding a process preparation time to the initialization-time value; broadcasting the zero-time value to at least one media process; and in the media process, receiving the zero-time value, accessing a log of event offset times associated with a plurality of media events, for each logged event offset time, performing the sub-steps of readying the associated media event for playing, and when the event offset time arrives, playing the media event, thereby, synchronizing the media playback.
Claim 38
Independent Claim 118 words
A method for synchronizing media playback in a multimedia recording and playback system, comprising the steps of: in a starter process, receiving the current time from a clock means, assigning the received current time as an initialization-time value, determining a zero-time value by adding a process preparation time to the initialization-time value; broadcasting the zero-time value to at least one media process; and in the media process, receiving the zero-time value, accessing a log of event offset times associated with a plurality of media events, for each logged event offset time, performing the sub-steps of readying the associated media event for playing, and when the event offset time arrives, playing the media event, thereby, synchronizing the media playback.
Claim 39
Independent Claim 88 words
A method for synchronizing initiation of events in a multiprogramming computer system, comprising the steps of: in a starter process, receiving the current time from a clock means, assigning the received current time as an initialization-time value, determining a zero-time value by adding a process preparation time to the initialization-time value, broadcasting the zero-time value to at least one receiving process; and in the receiving process, receiving the zero-time value, upon the current time reaching the zero-time value, initiating the event, thereby, synchronizing initiation of the media events.
Claim 40
Independent Claim 88 words
A method for synchronizing initiation of events in a multiprogramming computer system, comprising the steps of: in a starter process, receiving the current time from a clock means, assigning the received current time as an initialization-time value, determining a zero-time value by adding a process preparation time to the initialization-time value, broadcasting the zero-time value to at least one receiving process; and in the receiving process, receiving the zero-time value, upon the current time reaching the zero-time value, initiating the event, thereby, synchronizing initiation of the media events.
Claim 41
Independent Claim 103 words
A method for synchronizing events in a multiprogramming computer system, comprising the steps of: in a starter process, receiving the current time from a clock means, assigning the received current time as an initialization-time value, determining a zero-time value by adding a process preparation time to the initialization-time value; broadcasting the zero-time value to at least one receiving process; and in the receiving process, receiving the zero-time value, upon the current time reaching the zero-time value, repeating for each event the sub-steps of executing the event, determining a next-event time, waiting until the current time reaches the next-event time, thereby, synchronizing the events.
Claim 42
Independent Claim 103 words
A method for synchronizing events in a multiprogramming computer system, comprising the steps of: in a starter process, receiving the current time from a clock means, assigning the received current time as an initialization-time value, determining a zero-time value by adding a process preparation time to the initialization-time value; broadcasting the zero-time value to at least one receiving process; and in the receiving process, receiving the zero-time value, upon the current time reaching the zero-time value, repeating for each event the sub-steps of executing the event, determining a next-event time, waiting until the current time reaches the next-event time, thereby, synchronizing the events.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1998-05-29 1998-11-28 1999-05-30 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2002-05-29 2002-11-28 2003-05-30 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2006-05-29 2006-11-28 2007-05-30 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag