Selective packet processing in a packet based media processor for latency reduction
First Claim
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 input media packets including out-of-sequence and in-sequence input media packets, temporarily storing only the out-of-sequence input media packets in a buffer to defer processing of the out-of-sequence input media packets;
upon receiving said in-sequence input media packets, processing each in-sequence input media packet substantially immediately and forward to the destination in order; and
accessing from the buffer and processing substantially immediately those out-of-sequence input media packets whose processing was previously deferred when processing is in-sequence, thereby creating the corresponding output media packets, each output media packet being forwarded to the destination substantially immediately after being created.
10 Assignments
0 Petitions
Accused Products
Abstract
In-sequence media packets that arrive at a media server are processed immediately, and a buffer at the media server is checked for packets whose processing was previously deferred due to out-of-sequence arrival. Any in-sequence packets in the buffer are also processed and forwarded immediately after the processing and forwarding of the received in-sequence packet. Processing and forwarding are deferred for out-of-sequence packets, i.e., packets that are higher in the sequence than the next expected packet, by placing the out-of-sequence packets in the buffer. When a packet is placed in the buffer, a timer is initiated for the missing packet(s). If a pre-determined time passes without the receipt of a missing packet, the missing packet is declared lost and the next-in-sequence received packet is processed and forwarded toward the destination.
49 Citations
8 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 input media packets including out-of-sequence and in-sequence input media packets, temporarily storing only the out-of-sequence input media packets in a buffer to defer processing of the out-of-sequence input media packets; upon receiving said in-sequence input media packets, processing each in-sequence input media packet substantially immediately and forward to the destination in order; and accessing from the buffer and processing substantially immediately those out-of-sequence input media packets whose processing was previously deferred when processing is in-sequence, thereby creating the corresponding output media packets, each output media packet being forwarded to the destination substantially immediately after being created. - View Dependent Claims (2, 3, 4)
-
-
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 input media packets including out-of-sequence input media packets and in-sequence input media packets at said media server, to temporarily store only the received out-of-sequence input media packets to defer processing of the out-of-sequence input media packets; and a media packet processor operative, upon receipt of said in-sequence input media packets, to process substantially immediately and forward to the destination in order the received in-sequence input media packets, and to access from the re-ordering buffer and to process substantially immediately those out-of-sequence input media packets whose processing was previously deferred when processing is in-sequence, thereby creating corresponding output media packets, each output media packet being forwarded to the destination substantially immediately after being created. - View Dependent Claims (6, 7, 8)
-
Specification