Claims
- 1. A method of receiving selected content carried in a stream of transport packets, the method comprising the steps of:
receiving a network frame having none or more content transport packets encapsulated therein and stream information for a first set of transport packets, the first set of transport packets including the none or more content transport packets and at least one null transport packet, the transport packets of the first set having a specific order thereto; processing the stream information to produce a second set of transport packets, the second set of transport packets including the none or more content transport packets and at least one replacement transport packet, the second set of transport packets corresponding to the first set of transport packets; and transmitting the second set of transport packets in a synchronous stream of transport packets.
- 2. The method of claim 1, wherein the at least one replacement transport packets is a stuffing packet.
- 3. The method of claim 1, wherein the stream information is included in the network frame.
- 4. The method of claim 1, wherein the stream information indicates the number of replacement transport packets included in the second set of packets.
- 5. The method of claim 1, wherein the stream information includes sequence information for the packets of the second set of packets.
- 6. The method of claim 1, wherein the first set of transport packets includes a predetermined number of content packets.
- 7. The method of claim 6, wherein the first set of transport packets includes a variable number of null packets.
- 8. The method of claim 1, wherein the transport stream is an MPEG transport stream and the null packets are stuffing packets.
- 9. The method of claim 1, wherein the network frame encapsulates a first content transport packet and an at least second content transport packet, wherein the stream information indicates the number of replacement transport packets interposing the first content transport packet and the at least second content transport packet in the second set of transport packets.
- 10. The method of claim 1, wherein the network frame encapsulates a first content transport packet and, wherein the stream information indicates the number of replacement transport packets preceding the first content packet in the set of transport packets.
- 11. The method of claim 1, wherein step of processing the stream information further includes the steps of:
reading the stream information to determine the number of replacement transport packets interposing consecutive content packets; generating the determined number of replacement transport packets; and interposing the generated replacement transport packets between the consecutive content packets.
- 12. The method of claim 1, further including the steps of:
receiving a configuration message having a specific transmission bit rate therein; and configuring a transmitter such that the transmitter transmits the set of transport packets at the specific transmission bit rate.
- 13. The method of claim 1, prior to the step of de-encapsulating, further including the steps of:
buffering the network frame in a buffer having a plurality of network frames stored therein; extracting a group of network frames from the buffer according to a first-in, first-out basis; providing the group of network frames to a forward-error-corrector; determining whether the group of network frames is an error-free group; and responsive to determining that the group is not error-free, correcting errors in the group of network frames.
- 14. The method of claim 1, further including the steps of:
monitoring the fill level of a buffer; responsive to the fill level exceeding a predetermined threshold, increasing the clock rate of a clock; and responsive to the fill level being beneath a predetermined threshold, decreasing the clock rate of the clock.
- 15. The method of claim 14, wherein the set of transport packets are transmitted at a bit rate measured relative to the rate of the clock.
- 16. The method of claim 1, prior to the step of processing, further including the steps of:
buffering the network frame in a buffer, wherein the buffer has multiple network frames stored therein, wherein each network frame includes a sequence number; de-interleaving the a group of network frames stored in the buffer such that the network frames of the group are arranged in sequential order according to their sequence numbers, wherein the network frames of the group are de-encapsulated in sequential order.
- 17. A method of receiving selected content carried in a stream of transport packets, the method comprising the steps of:
receiving a stream of network frames carrying a portion of a synchronous first stream of transport packet, the first stream of transport packets consisting of content packets and null packets, wherein the portion of the first stream of transport packets carried by the stream of network frames consists of the content packets; processing the network frames to de-encapsulate content packets carried therein; and transmitting a synchronous second stream of transport packets, the second stream of transport packets including the content packets carried the stream of network frames.
- 18. The method of claim 17, wherein the stream of network frames carries stream information for the first stream of transport packets.
- 19. The method of claim 18, wherein the stream information indicates the number of null packets in a given set of transport packets of the first stream of transport packets.
- 20. The method of claim 18, wherein the stream information indicates the sequence of null packets and content packets in a given set of transport packets of the first stream of transport packets.
- 21. The method of claim 18, wherein a given network frame includes stream information for a given set of transport packets of the first stream of transport packets, wherein the step of processing the network frames includes the steps of:
reading the steam information, wherein the stream information specifies the number of null packets in the given set; generating a specific number of replacement transport packets, wherein the specific number is equal to the number of null packets specified by the stream information; and including the generated replacement transport packets in the second stream of transport packets.
- 22. The method of claim 21, wherein the given set includes at least one content packet and at least one null packet in a specific order, the stream information includes sequence information about the given set, and further including the step of:
arranging the at least one content packet with generated replacement transport packets such that their sequence corresponds to the specific order of the given set.
- 23. The method of claim 17, further including the steps of:
receiving a configuration message having a transmission bit rate included therein; and initializing a transmitter such that the second stream of transport packets is transmitted at the transmission bit rate included in the configuration message.
- 24. A method of transmitting a transport stream through a network, the method comprising the steps of:
at a network stream transmitter, receiving through a first communication link sets of transport packets, wherein each set of transport packets includes multiple transport packets, the multiple transport packets consisting of none or more null packets and none or more content packets; at the network stream transmitter, determining for each set of transport packets stream information, wherein the stream information for a given set indicates the proportion of the null packets in the given set; at the network stream transmitter, for each set, encapsulating the none or more content packets of that set and the stream information of that set in a network frame; at the network stream transmitter, transmitting the network frame for each set via a second communication link; and at a transport stream transmitter, receiving through the second communication link the network frames having the none or more content packets and the stream information included therein; at the transport stream transmitter, processing each network frame using at least the stream information included therein to generate a group of transport packets, the group of transport packets consisting of the none or more content packets of the network frame and a specific number of replacement transport packets, wherein the specific number of replacement transport packets is determined using the stream information included in the network frame; at the transport stream transmitter, transmitting each group of transport packets via a third communication link.
- 25. The method of claim 24, wherein for a given set of transport packets the stream information includes sequence information defining the order of the multiple packets for that given set.
- 26. The method of claim 25, at the transport stream transmitter, further including the step of:
arranging each group transport packets according to the sequence information.
- 27. The method of claim 24, wherein the sets of transport packets received at the network stream transmitter through the first communication link form a first synchronous stream of transport packets, wherein the network stream transmitter transmits the network frames as an asynchronous stream, and wherein the transport stream transmitter transmits the transport packets of the groups of transport packets as a second synchronous stream of transport packets.
- 28. The method of claim 25, further including the steps of:
at the network stream transmitter, determining the bit rate of transport packets received via the first communication link; and at the network stream transmitter, transmitting a configuration message via the second communication link, the configuration message having the bit rate included therein; and at the network stream transmitter, receiving the configuration message; and at the network stream transmitter, adjusting a transmitter such that the transmitter is set to transmit transport packets via the third communication link at the determined bit rate.
- 29. An apparatus for receiving selected content carried in a stream of transport packets, the apparatus comprising:
an input port adapted to receive a network frame having none or more content transport packets encapsulated therein and stream information for a set of transport packet defining a plurality of transport packets, the set of transport packets including the none or more content transport packets and none or more replacement transport packets, the plurality transport packets of the set having a specific order thereto; a processor adapted to process the stream information with the none or more content transport packet to replicate the set of transport packets, wherein the replicate set of transport packets correspond to the set of transport packets and are arranged in the same specific order; and transmitting the replicated set of transport packets in a synchronous stream.
- 30. The apparatus of claim 29, wherein the stream information is included in the network frame.
- 31. The apparatus of claim 29, wherein the stream information indicates the number of replacement transport packets included in the set of packets
- 32. The apparatus of claim 29, wherein the replicate set of transport packets includes a predetermined number of content packets.
- 33. The apparatus of claim 32, wherein the replicate set of transport packets includes a number of replacement transport packets, the number of replacement transport packets specified by the stream information.
- 34. The method of claim 29, wherein the transport stream is an MPEG transport stream and the replacement transport packets are stuffing packets.
- 35. The apparatus of claim 29, wherein the network frame encapsulates a first content transport packet and an at least second transport packet, wherein the stream information indicates the number of replacement transport packets interposing the first content packet and the at least second transport packet in the set of transport packets.
- 36. The apparatus of claim 29, wherein the network frame encapsulates a first content transport packet and, wherein the stream information indicates the number of replacement transport packets preceding the first content packet in the set of transport packets.
- 37. The apparatus of claim 29, wherein the processor is further adapted to read the stream information to determine the number of replacement transport packets interposing consecutive content packets, generate the number of replacement transport packets interposing the consecutive content packets, and provide the transmitter with the generated replacement transport packets interposing the consecutive content packets.
- 38. The apparatus of claim 29, wherein the processor is further adapted to configure the transmitter such that the transmitter transmits the set of transport packets at a specific transmission bit rate.
- 39. The apparatus of claim 38, wherein the processor configures the transmitter responsive to receiving a configuration message having the specific transmission bit rate therein.
- 40. The apparatus of claim 29, further including:
a buffer having multiple network frames stored therein; and a forward error correction module adapted to extract a group of network frames from the buffer and determine whether the group of network frames is an error-free group, responsive to determining that the group is not error-free, correcting errors in the group of network frames.
- 41. The apparatus of claim 29, wherein the processor is further adapted to measure the fill level of a buffer, and responsive to the fill level exceeding a predetermined threshold, the processor is adapted to increase the clock rate of a clock, and responsive to the fill level being beneath a predetermined threshold, the processor is adapted to decrease the clock rate of the clock.
- 42. The apparatus of claim 41, wherein the set of transport packets are transmitted at a bit rate measured relative to the rate of the clock.
- 43. The apparatus of claim 29, wherein the network frames are received in a non-sequential order and processor is further adapted to process the network frames in sequential order.
- 44. An apparatus for receiving selected content carried in a stream of transport packets, the apparatus comprising:
an input port adapted to receive a stream of network frames carrying a portion of a synchronous first stream of transport packet, the first stream of transport packets consisting of content packets and null packets, wherein the portion of the first stream of transport packets carried by the stream of network frames consists of the content packets; a processor adapted to process the network frames to de-encapsulate content packets carried therein; and a transmitter adapted to transmit a synchronous second stream of transport packets, the second stream of transport packets including the content packets carried the stream of network frames.
- 45. The apparatus of claim 44, wherein the stream of network frames carries stream information for the first stream of transport packets.
- 46. The apparatus of claim 45, wherein the stream information indicates the number of null packets in a given set of transport packets of the first stream of transport packets.
- 47. The apparatus of claim 45, wherein the stream information indicates the sequence of null packets and content packets in a given set of transport packets of the first stream of transport packets.
- 48. The apparatus of claim 45, wherein a given network frame includes stream information for a given set of transport packets of the first stream of transport packets, wherein the processor is further adapted to read the steam information, wherein the stream information specifies the number of null packets in the given set, generate a specific number of replacement transport packets, the specific number of replacement transport packets equaling the number of null packets specified by the stream information, and include the generated replacement transport packets in the second stream of transport packets.
- 49. The apparatus of claim 48, wherein the given set includes at least one content packet and at least one null packet in a specific order, the stream information includes sequence information about the given set, and the processor is further adapted to arrange the at least one content packet with generated replacement transport packets such that their sequence corresponds to the specific order of the given set.
- 50. The apparatus of claim 44, wherein responsive to the processor receiving a configuration message having a transmission bit rate included therein, the processor initializes the transmitter such that the second stream of transport packets is transmitted at the transmission bit rate included in the configuration message.
- 51. A system for transmitting a transport stream through an asynchronous network, the system comprising:
a network stream transmitter having a first input port, a first buffer, a first processor, and a first transmitter, the first input port adapted to receive through a first communication link a first stream of transport packets, the first buffer adapted to buffer received transport packets, the first processor adapted to extract buffered transport packets as sets of transport packets, wherein each set of transport packets includes multiple transport packets, the multiple transport packets consisting of none or more null packets and none or more content packets, the first processor further adapted to determine for each set of transport packets stream information, wherein the stream information for a given set indicates the proportion of the null packets in the given set, the first processor further adapted to encapsulate the none or more content packets of that set and the stream information of that set in a network frame, and the transmitter adapted to transmit the network frame for each set via a second communication link in an stream of network frames; and a transport stream transmitter having a second input port, a second processor, and a second transmitter, the input port adapted to receive the stream of network frames through the second communication link the network frames having the none or more content packets and the stream information included therein, the second processor adapted to process each network frame using at least the stream information included therein to generate a group of transport packets, the group of transport packets consisting of the none or more content packets of the network frame and a specific number of replacement transport packets, wherein the specific number of replacement transport packets is determined using the stream information included in the network frame, and the transmitter adapted to transmit each group of transport packets via a third communication link in a second stream of transport packets.
- 52. The apparatus of claim 51, wherein for a given set of transport packets the stream information includes sequence information defining the order of the multiple packets for that given set.
- 53. The apparatus of claim 52, wherein the second processor is further adapted to arrange each group transport packets according to the sequence information.
- 54. The apparatus of claim 51, wherein the first stream of transport packets is a synchronous stream of transport packets, wherein the stream of network frames is as an asynchronous stream of network frames, and wherein the second stream of transport packets is a second synchronous stream of transport packets.
- 55. The apparatus of claim 51, wherein the first processor is further adapted to determine the bit rate of first stream of transport packets received via the first communication link and transmit a configuration message via the second communication link, the configuration message having the bit rate included therein, and wherein the second processor is further adapted to read the configuration message and responsive thereto, adjust the second transmitter such that the second transmitter is set to transmit the second stream of transport packets via the third communication link at the determined bit rate.
CROSS-REFERENCE TO RELATED APPLICATION
[0001] This application claims priority to co-pending U.S. provisional application entitled, “A DEVICE FOR TRANSCEIVING MPEG-2 TRANSPORT STREAMS OVER IP NETWORKS,” having ser. No. 60/345,388, filed Jan. 4, 2002, which is entirely incorporated herein by reference.
[0002] This application is related to co-pending U.S. patent application entitled “TRANSMITTING STREAMS OVER ASYNCHRONOUS NETWORKS,” which is being filed on the same date as the present application having the same inventor and is entirely incorporated herein by reference.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60345388 |
Jan 2002 |
US |