×

Method and system for precise synchronization of audio and video streams during a distributed communication session with multiple participants

  • US 7,949,890 B2
  • Filed: 01/31/2008
  • Issued: 05/24/2011
  • Est. Priority Date: 01/31/2007
  • Status: Expired due to Fees
First Claim
Patent Images

1. A method for clock synchronization by calculating a correction value to be added or subtracted from a local time calculated comprising:

  • defining a first computer A'"'"'s time as an absolute time TA and a second computer N'"'"'s time as non-absolute time TN;

    assigning a current best approximation of a network round trip time between computers A and N to RTTapp;

    setting initial values of registers tA,last and tN,last to zero for computer A;

    exchanging synchronization packets periodically;

    computer N computing t1=TLocalTimeN, wherein TLocalTimeN is a local time of computer N;

    computer N writing t1 into a synchronization section in a synchronization request;

    computer N sending an audio packet to computer A;

    computer A receiving the audio packet;

    computer A computing t2=TLocalTimeA, wherein TLocalTimeA is a local time of computer A;

    computer A setting tA,last to the value of t2 and setting tN,last to the value of t1 from the audio packet if t1>

    tN,last;

    computer A calculating t′

    2 and writing (t′

    1=t1+t′

    2

    t2, t′

    2) into the synchronization section in a synchronization reply if the tN,last was not sent in a synchronization reply, wherein t′

    2 is a local time of computer N just before an audio packet is sent to computer N;

    computer A sending an audio packet to computer N;

    computer N receiving the audio packet;

    computer N computing t3=TLocalTimeN;

    computer N computing RTT=t3

    t′

    1;

    computer N assigning RTTapp=RTT if RTTapp is not defined;

    computer N assigning the value of minimum(RTTapp+RTTdrift, RTT) to RTTapp if RTT<

    1.05*RTTapp, wherein RTTdrift is a drift in packet round trip time;

    assigning a mean value of (t′

    2

    (t′

    1+t3)/2) of buffered data from previous synchronization cycles to Δ

    TN−

    A
    ;

    synchronizing clock by adding a correction value Δ

    TN−

    A
    to a local time TN.

View all claims
  • 28 Assignments
Timeline View
Assignment View
    ×
    ×