EP0806874B1

Timing error recovery in isochronous packetized data transmission

Abstract

This record has no abstract on file.

EP0806874B1, drawing sheet 1
Sheet 1 of 10

Term

Term ended

Expired 9 May 2017, 9.4 years ago.

  1. Priority
  2. Filed
  3. Granted
  4. Expired
  5. Today

10 claims: 10 independent, 0 dependent

  1. 1
    A method for managing timing errors in isochronous data, abbreviated as "isodata", received in bursts from a packetized data stream (20) carrying isodata presentation units (18) in fixed length isodata transport packets (22a, 22b, .. 22g), each of said transport packets (22a, 22b, .. 22g) including a packet identifier, abbreviated as PID, and at least some of said packets containing a presentation time stamp, abbreviated as PTS, (52) indicative of a time for commencing the fixed rate presentation of isodata presentation units (18) from a buffer (152) into which they are temporarily stored upon receipt, said method comprising the steps of:monitoring said data stream (20) to detect PIDs identifying said isodata transport packets (22a, 22b,.. 22g);monitoring the isodata transport packets (22a, 22b, .. 22g) identified by said PIDs to locate isodata PTSs (52);retrieving a PTS extension(54) from the identified isodata transport packets (22a, 22b,.. 22g) to enable the time resolution for presenting the isodata presentation units (18) to be increased;synchronizing the presentation of said presentation units (18) from said buffer (152) to a system time clock, abbreviated as STC, (162) using timing information derived by summing at least said PTS (52) and said PTS extension (54), said synchronization step comparing the STC (162) to the timing information;and providing fill bits as output until it is time to present said presentation units (18) if said comparison determines that said presentation units (18) are too early to be presented due to a timing error.
  2. 2
    A method in accordance with claim 1 wherein said timing information is derived from the sum of said PTS (52), said PTS extension (54), and a PTS offset value used to provide a time delay.
  3. 3
    A method in accordance with claim 1 or 2 comprising the further steps of:comparing said timing information to said STC (162) to determine whether said buffered presentation units (18) are too late to be presented as a timing error or ready to be presented from said buffer (152);in the event said buffered presentation units (18) are determined to be too late to be presented, flushing said buffer and resynchronizing the presentation of newly received presentation units (18) from said buffer (152);and in the event said buffered presentation units (18) are determined to be ready to be presented, presenting said buffered presentation units (18) from said buffer (152).
  4. 4
    A method in accordance with one of claims 1 to 3 wherein:said fill bits are provided as output until a time designated by the STC (162) equals the time designated by said sum.
  5. 5
    A method in accordance with one of claims 1 to 4 wherein each presentation unit (18) comprises an integer number N of bits of isodata, said method comprising the further steps of:maintaining an N-bit count that is correlated with the presentation of a first presentation unit (18) from said buffer (152);and continuing to provide fill bits as output after said STC (162) equals the time designated by said sum until said N-bit count Indicates that it is time to commence the presentation of a new presentation unit (18).
  6. 6
    A decoder for managing timing errors in isochronous data, abbreviated as "isodata", received in bursts from a packetized data stream (20) carrying isodata presentation units (18) in fixed length isodata transport packets (22a, 22b, .. 22g), each of said transport packets (22a, 22b, .. 22g) including a packet identifier, abbreviated as PID, and at least some of said packets containing a presentation time stamp, abbreviated as PTS, (52) indicative of a time for commencing the fixed rate presentation of isodata presentation units (18) from a buffer (152) into which they are temporarily stored upon receipt, said decoder comprising:means (96) for monitoring said data stream to detect PIDs identifying said isodata transport packets (22a, 22b, .. 22g);means (98, 102) for monitoring the isodata transport packets (22a, 22b, .. 22g) identified by said PIDs to extract isodata PTSs (52);means (98, 104) for retrieving a PTS extension (54) from the identified isodata transport packets (22a, 22b, .. 22g) to enable the time resolution for presenting the isodata presentation units (18) to be increased;and means (106) for summing at least said PTS (52) and said PTS extension (54) to provide timing information;means (110;158) for synchronizing the presentation of said presentation units (18) from said buffer (152) to a system time clock, abbreviated as STC (162), using said timing information;and means (166) for providing fill bits as output until it is time to present said presentation units (18) if said comparison determines that said presentation units (18) are too early to be presented due to a timing error.
  7. 7
    A decoder in accordance with claim 6 wherein said adder (106) provides said timing information by summing said PTS (52), said PTS extension (54), and a PTS offset value used to provide a time delay.
  8. 8
    A decoder in accordance with one of claims 6 or 7 further comprising:means (158) for comparing said timing information to said STC (162) to determine whether said buffered presentation units (18) are too late to be presented as a timing error or ready to be presented from said buffer (152);means (152, 154, 158) for flushing said buffer (152) and resynchronizing the presentation of newly received presentation units (18) from said buffer (152) if said comparing step determines that said buffered presentation units (18) are too late to be presented;and means (158, 164) for presenting said buffered presentation units (18) from said buffer (152) if said comparing step determines that said buffered presentation units (18) are ready to be presented.
  9. 9
    A decoder in accordance with one of claims 6 to 8, wherein:said fill bits are provided as output until a time designated by the STC (162) equals a time designated by said timing information.
  10. 10
    A decoder in accordance with one of claims 6 to 8 wherein each presentation unit (18) comprises an integer number N of bits of isodata, said decoder further comprising:an N-bit counter (164) that is correlated with the presentation of a first presentation unit (18) from said buffer (152);wherein said fill bits continue to be provided as output after said STC (162) equals the time designated by said sum until said N-bit counter (164) indicates that it is time to commence the presentation of a new presentation unit (18).