Claims
- 1. At a media server disposed between a source and a destination in a packet-based communications system, a method of generating a stream of output media packets for the destination from a stream of input media packets received from the source, each input media packet containing sequence information identifying the relative location of the input packet in a stream of packets transmitted by the source, the input media packets exhibiting (1) mis-ordering with respect to the order of transmission by the source, and (2) inter-packet timing jitter having a magnitude of at least one nominal inter-packet interval, the method comprising:
upon receiving an out-of-sequence input media packet, deferring processing of the input media packet; and upon receiving an in-sequence input media packet, processing substantially immediately and in order the received in-sequence input media packet and those in-sequence input media packets whose processing was previously deferred, thereby creating the corresponding output media packets, each output media packet being forwarded to the destination substantially immediately after being created.
- 2. A method according to claim 1, wherein the sequence information in each input packet includes a timestamp indicating a relative time at which the packet was created by the source.
- 3. A method according to claim 1, wherein the sequence information in each input packet includes a sequence number indicating the relative position of the packet in the stream of packets transmitted by the source.
- 4. A method according to claim 1, wherein the processing of a received out-of-sequence packet is deferred no more than a predetermined timeout period, and upon expiration of the timeout period the missing packet is declared lost and the next in-sequence received packet is processed.
- 5. A media server for use between a source and a destination in a packet-based communications system, the source being operative to transmit a stream of media packets in sequence and at regular intervals, the stream of packets arriving at the media server as a stream of input media packets exhibiting (1) mis-ordering with respect to the order of transmission by the source, and (2) inter-packet timing jitter having a magnitude of at least one nominal inter-packet interval, the media server comprising:
a re-ordering buffer- operative upon receipt of an out-of-sequence input media packet to temporarily store the received out-of-sequence input media packet; and a media packet processor operative upon receipt of an in-sequence input media packet to process substantially immediately and in order the received in-sequence input media packet and those in-sequence input media packets stored in the re-ordering buffer, thereby creating corresponding output media packets, each output media packet being forwarded to the destination substantially immediately after being created.
- 6. A media server according to claim 5, wherein each packet transmitted by the source includes a timestamp indicating a relative time at which the packet was created by the source, and wherein the media server is operative to compare respective time stamps of received input media packets to detect their respective positions in the stream of media packets transmitted by the source.
- 7. A media server according to claim 5, wherein each packet transmitted by the source includes a sequence number indicating the relative position of the packet in the stream of media packets transmitted by the source, and wherein the media server is operative to compare respective sequence numbers of received input media packets to detect their respective positions in the stream of media packets transmitted by the source.
- 8. A media server according to claim 5, further comprising a timer operative to be started upon detection of a missing packet and to run a predetermined timeout period in the absence of receipt of the missing packet, and wherein the media packet process is operative upon expiration of the timeout period to declare the missing packet lost and to process the next in-sequence received packet.
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application claims priority under 35 U.S.C. §119(e) to U.S. Provisional Patent Application No. 60/322,369 filed Sept. 14, 2001.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60322369 |
Sep 2001 |
US |