WO2012018339A1 - Application of unequal error protection rateless codes in multimedia streaming over multi-path networks - Google Patents

Application of unequal error protection rateless codes in multimedia streaming over multi-path networks Download PDF

Info

Publication number
WO2012018339A1
WO2012018339A1 PCT/US2010/044571 US2010044571W WO2012018339A1 WO 2012018339 A1 WO2012018339 A1 WO 2012018339A1 US 2010044571 W US2010044571 W US 2010044571W WO 2012018339 A1 WO2012018339 A1 WO 2012018339A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
source
fountain
layers
encoded
Prior art date
Application number
PCT/US2010/044571
Other languages
French (fr)
Inventor
Zhenyu Wu
Original Assignee
Thomson Licensing
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Thomson Licensing filed Critical Thomson Licensing
Priority to PCT/US2010/044571 priority Critical patent/WO2012018339A1/en
Publication of WO2012018339A1 publication Critical patent/WO2012018339A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/35Unequal or adaptive error protection, e.g. by providing a different level of protection according to significance of source information or by adapting the coding according to the change of transmission channel characteristics
    • H03M13/356Unequal error protection [UEP]
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/3761Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 using code combining, i.e. using combining of codeword portions which may have been transmitted separately, e.g. Digital Fountain codes, Raptor codes or Luby Transform [LT] codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • H04L1/0047Decoding adapted to other signal detection operation
    • H04L1/005Iterative decoding, including iteration between signal detection and decoding operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/007Unequal error protection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1812Hybrid protocols; Hybrid automatic repeat request [HARQ]
    • H04L1/1819Hybrid protocols; Hybrid automatic repeat request [HARQ] with retransmission of additional or different redundancy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1829Arrangements specially adapted for the receiver end
    • H04L1/1835Buffer management
    • H04L1/1845Combining techniques, e.g. code combining
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L2001/0092Error control systems characterised by the topology of the transmission link
    • H04L2001/0093Point-to-multipoint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L2001/0092Error control systems characterised by the topology of the transmission link
    • H04L2001/0097Relays

Definitions

  • the present invention is directed to a multi-path network where the devices operating in the network use the unequal error protection (UEP) property of rateless (digital fountain) codes.
  • UDP unequal error protection
  • a multicast system as used herein is a system in which a server transmits the same data to multiple receivers simultaneously, where the receivers form a subset of all the receivers up to and including all of the receivers.
  • a broadcast system is a system in which a server transmits the same data to all of the receivers simultaneously. That is, a multicast system by definition can include a broadcast system.
  • a client includes (but is not limited to) a client device, a mobile terminal, a mobile station, a node, a station, an end device , a terminal device, a computer, a laptop, a dual mode smart phone or any other equivalent device.
  • Multi-path or multi-link networking has recently emerged as an effective solution to enhance network reliability and throughput by delivering service data over multiple independent network paths to a client.
  • a client can connect to a server via a number of network paths. Furthermore, as a group, clients may share network paths. Each network path can be uni-directional or bi-directional. For the same path, the network conditions for different clients may differ, for example, bandwidth, loss rate, etc. due to factors, such as wireless channel interference and signal strength attenuation. Furthermore, these connection paths can be dynamic due to possible client mobility.
  • Fig. 1 shows clients A, B and C connected to the server through network paths Pi, P 2 and P3.
  • clients A, B and C respectively have one, three and two paths connecting to the server.
  • These network paths go through different networks, i.e., a 3GPP-LTE cellular network, a Wi-Fi network and a DVB-H network, in which the 3GPP-LTE path is bi-directional, whiles the other two paths are unidirectional.
  • the shaded rectangles in Fig.l represent data packets going through these networks.
  • Client A only receives packets from Pi, while Client B has three data sources, and Client C receives packets from both P 2 and P3. So the clients may have different aggregated network bandwidths.
  • Multi-path networks also include other types, such as peer-to-peer (P2P) networks.
  • P2P peer-to-peer
  • the server needs to address the data packet scheduling problem in order to efficiently utilize the network resources to stream multimedia content to the clients in a multicast group.
  • the objective of the scheduling task is to jointly determine (find):
  • the server needs to determine the delivery path for each data packet and in turn control the data rate and flow allocation of each path, so that each client can achieve the best QoS that corresponds to its aggregated network bandwidth.
  • a straightforward design usually requires that the server be able to estimate and keep track of the details of each client's network paths. However, such an estimate may not be accurate or may involve large overhead.
  • the server does not have the full knowledge of the complete network's topology. As a result, the lack of such information can cause a waste of network resources.
  • the selected paths may be optimal in terms of network utilization, the selected paths are or may be suboptimal from the viewpoint of client's QoS.
  • a general framework for streaming multimedia data in multi-path networks is derived which encompasses both network and media aware metrics.
  • the framework is based upon a set of models including multi-path network models and a video quality model.
  • the prior art then casts and solves the rate allocation as an optimization problem.
  • this approach only targets one client and requires detailed knowledge of the path conditions of that client. Hence, it is not applicable to multi-path streaming to a multicast group.
  • the computational complexity involved in the work is high.
  • the present invention is an application of rateless (digital fountain) codes with an unequal error protection (UEP) property used in scalable multimedia streaming to a multicast group within multi-path wireless networks.
  • clients may connect to a server with multiple paths, and each path can differ in terms of network type and conditions, which can change dynamically.
  • the present invention exploits ratelessness and randomness properties of the digital fountain codes, so that the server can remain unconcerned about clients' detailed network information when it performs scheduling.
  • Each client in a multicast group may have Quality of Service (QoS) requirements that are proportional to its aggregated network bandwidth.
  • QoS Quality of Service
  • the present invention can reduce the packet scheduling overhead at the server and improve network resource utilization.
  • a method and apparatus including retrieving a block of source data, organizing the block of source data into layers of source symbols, encoding the layers of source symbols using fountain codes, wherein the fountain codes have an unequal protection property such that the fountain encoded layers of source symbols have different protection strengths and streaming the fountain encoded layers of source symbols to a multicast group of client devices over a path of any of a plurality of wireless networks. Also described are a method and apparatus including receiving unequal error protection fountain encoded data from a path of any of a plurality of wireless networks, retrieving payload data from the received unequal error protection fountain encoded data to obtain payload data, adding the payload data to a current codeword and decoding the current codeword to obtain a block of source data.
  • Fig. 1 is a schematic diagram of a multi-path multicast wireless network.
  • Fig. 2 is a schematic diagram of a wireless mesh network.
  • Fig. 3 shows fountain codes with prioritized protection.
  • Fig. 4 shows prioritized fountain code decoding.
  • Fig. 5 is a flowchart of an exemplary implementation of the operation of the present invention from the perspective of a server.
  • Fig. 6 is a flowchart of an exemplary implementation of the operation of the present invention from the perspective of a client.
  • Fig. 7 is a block diagram of an exemplary device operating in a multi-path network using the unequal error protection property of rateless codes.
  • Fountain codes are a relatively new class of codes originally designed for robust and scalable transmission of data over lossy computer networks.
  • a fountain code For a message to be delivered which includes a vector of input symbols (xj, ... 3 ⁇ 4), a fountain code generates a potentially limitless stream of output symbols.
  • the input symbols (data) are called “source symbols”, the output symbols are called “encoded symbols”.
  • Source symbols and output symbols form a codeword. Each encoded symbol is generated independently by sampling from a distribution D, and adding the source symbols correspondingly to support the sampled vector.
  • fountain codes can generate an arbitrary number of encoded symbols from a few to possibly infinite on the fly for each codeword, based on pseudorandom selections from a finite number of source symbols.
  • code rate for a fountain code is no longer fixed.
  • digital fountain codes are also known as rateless codes. This property is beneficial for those network channels with dynamic or unknown loss rates, since the server can keep sending encoded symbols to feed (transmit to, send to, communicate to) the client(s) until they have received enough encoded symbols to recover the source symbols, or some network resource is depleted.
  • the other feature of digital fountain codes is that, due to the random nature of the encoding process, as long as there is a sufficient number of source symbols in a codeword, there is high probability that the encoded symbols are linearly independent. Therefore, a digital fountain code decoder can recover the source symbols from an arbitrary set of encoded symbols of a codeword, when the received encoded symbols reach a sufficient amount.
  • a client when the server sends encoded symbols through multiple network paths, a client can receive the encoded symbols from any of the multiple paths used by the server to transmit (communicate, send, forward). With high probability, there is no waste of the received encoded symbols in recovering source symbols.
  • UEP fountain codes In general, all the source symbols in a fountain codeword receive the same amount of protection from its encoded symbols. However, there is a variant of fountain codes called "unequal error protection” (UEP) fountain codes. With UEP fountain codes, the protection strength can be shifted among the source symbols. A common practice to utilize the UEP property is to allocate more protection to high-priority source symbols (data) and less protection for low-priority data. There are many different approaches to construct UEP fountain codes, such as those reported in the prior art.
  • Scalable multimedia coding is a coding paradigm in which a multimedia source is encoded into multiple layers, so that by decoding each successive layer, the reconstructed multimedia quality is improved in terms of resolution, fidelity, etc.
  • videos that are encoded by SVC are specifically considered.
  • the described invention can be applied to other scalable multimedia sources, such as scalable images and audio.
  • SVC Scalable Video Coding
  • H.264/AVC High Efficiency Video Coding
  • Its bit stream includes a base layer and one or more enhancement layers.
  • the base layer provides basic video quality, and with each additional enhancement layer added in order of its layer index, the video quality improves. Since the decoding of an enhancement layer depends on the base layer and all of lower-indexed enhancement layer(s), generally the base layer has the highest priority, followed by the enhancement layers with decreasing layer indices.
  • the present invention combines these components to address the server scheduling problem as described above in a multi-path video multicast streaming application.
  • the server encodes a block of SVC video data with digital fountain codes and packetizes the encoded symbols output from the fountain encoder into network packets, and then sends these packets over the multiple links connects the server to the clients in a multicast group.
  • Fig. 3 illustrates the fountain encoding process at the server: the SVC bit stream data that corresponds to a media time interval T are included into a fountain codeword as source symbols for encoding.
  • the SVC bit stream includes a base and one or more enhancement layers.
  • the layers are treated as high-priority and low-priority separately, as shown in Fig. 3.
  • the included bit stream data from the two layers are treated as high-priority and low-priority separately.
  • every T bytes of the base layer data are grouped to form a high-priority source symbol (data)
  • every T bytes of enhancement layer data are grouped to form a low- priority source symbol (data).
  • a random number of degrees d is chosen first for each encoding symbol. Then d source symbols are randomly chosen and XORed to form the encoded symbol.
  • the random source symbol selection process is often altered so that more connections between source and encoded symbols come from high-priority source symbols, and vice versa. As a result, the high-priority source symbols get more protection.
  • the server packetizes the encoded symbols from the fountain encoder output into a path that has remaining bandwidth. It continues sending these packets until the time interval T corresponding to the current codeword expires, or it is informed by some means that all the clients have received enough data. Then the server moves to fetch the next block of data from the SVC bit stream and repeats the above process.
  • the server does not need to perform complicated path selection and rate allocation among multiple paths. Moreover, it does not have to have the specific knowledge about the path information of each of its client groups.
  • Fig. 5 is a flowchart of an exemplary implementation of the operation of the present invention from the perspective of a server.
  • the server retrieves a block of data from an SVC bit stream corresponding to time interval T.
  • the server organizes the SVC bit stream into layers.
  • the server organizes the SVC data as source symbols in a fountain codeword.
  • the server applies UEP coding to different SVC layers in the fountain codeword.
  • the server generates encoded layer of symbols and transmits (sends, communicates, forwards) the fountain encoded layers of symbols over a path of any of a plurality of wireless networks. The paths are selected based on remaining bandwidth.
  • a test is performed at 525 to determine if every client has received enough data (fountain encoded symbols) to properly decode the data.
  • Feedback can be sent through network connections that have a feedback capability, e.g. 3G network as shown in Fig. 1.
  • the server continues sending data within DVB-H bandwidth capacity until the playback time for the chunk of data expires. If every client has received enough data (fountain encoded symbols) to properly decode the data then processing proceeds to 505. If every client has not received enough data (fountain encoded symbols) to properly decode the data then a test is performed at 525 to determine if the time interval has expired. If the time interval has expired, then processing proceeds to 505. If the time interval has not expired, then processing proceeds to 520.
  • each client receives data packets from the path(s) that connects the client to the server.
  • the client first retrieves the encoded symbols from each packet payload, and then forwards them to the fountain decoder to decode.
  • the fountain decoder moves to receiving encoded symbols for the next codeword.
  • the server may receive only a portion of the encoded symbols that originated from the server. This is because the server sends the encoded symbols over all the available links, but for a particular client, it may only have a subset of the connections. Another reason is that some packets may get dropped during delivery. Thus, the amount of received encoded symbols should be proportional to the client's effective aggregated bandwidth.
  • Fig. 4 the symbols that were not able to be recovered are shown with a dotted boundary marking the circle. All other circles indicate symbols that were able to be recovered.
  • the shaded circles indicate high-priority (base layer) symbols and the unshaded circles indicate low-priority (enhancement layer) symbols.
  • base layer the encoded symbols of a codeword
  • the unshaded circles indicate low-priority (enhancement layer) symbols.
  • the client can reconstruct the video using the recovered base layer data to have basic video quality.
  • another client has more paths, or has better channel conditions, it can receive more encoded symbols and thus have a higher probability of recovering the additional enhancement layer(s). So the client is able to enjoy a higher video QoS.
  • the server does not need to have any path information of its clients' multicast groups and also avoids the complicated path selection and rate allocation processes.
  • each client in the multicast group(s) can reconstruct the amount of useful service data that is proportional to its effective aggregated bandwidth.
  • different UEP fountain code construction methods different amounts of encoded symbols are needed to recover source symbols assigned to different priorities. Therefore, it is possible for the server to estimate the available aggregated bandwidth profile of the multicast group(s), and adjust the fountain codes construction to match the profile, in order to achieve the best QoS for all the clients.
  • Fig. 6 is a flowchart of an exemplary implementation of the operation of the present invention from the perspective of a client.
  • the client starts to work on a new codeword.
  • the client receives data packets from any of the connecting paths of any of a plurality of wireless networks available between itself and the server.
  • the client retrieves the payload data (fountain encoded symbols) and adds the retrieved data to the current fountain encoded symbols (codeword) that it is working on (that the client may have received from another path (link, channel).
  • the client attempts to decode the fountain encoded codewords.
  • a test is performed to determine if the client has been able to recover the source symbols.
  • a test is performed to determine if the client device is able to give the server feedback. If the client device is able to give the server feedback then at 640 the client device transmits feedback to the server that it is finished because the client device has received enough unequal error protected fountain encoded symbols to properly decode the source symbols. If the client device is not able to give the server any feedback then processing proceeds to 605. If the client has not been able to recover the source symbols, then a test is performed at 630 to determine if the time interval for the data has expired. If the time interval for the data has expired, then processing proceeds to 635. If the time interval for the data has not expired, then processing proceeds to 610.
  • Fig. 7 is a block diagram of an exemplary device operating in a multi-path network using the unequal error protection property of rateless codes.
  • the device can be either a server or a client.
  • the exemplary device (apparatus) shown in Fig. 7 may be either a server or a client.
  • the transceiver actually transmits and receives data and any control signals and the control logic performs all other functions as described below.
  • the control logic includes means for retrieving a block of source data, means for organizing the block of source data into layers of source symbols and means for encoding the layers of source symbols using fountain codes, wherein the fountain codes have an unequal protection property such that the fountain encoded layers of source symbols have different protection strengths.
  • Each of the multiple paths may or may not have a feedback capability.
  • Each block of source data is a scalable video coded bit stream coded by a scalable video coder. Different protection strengths are applied to different layers of the source symbols of the scalable video coded bit stream such that a number of the fountain encoded layers of source symbols necessary to recover different scalable video coded layers are different, wherein a base layer has a smallest amount of encoded source symbols to recover and a higher enhancement layer has more encoded source symbols to recover.
  • the control logic also includes means for adjusting the fountain codes construction to adjust an amount of encoded layers of source symbols necessary to recover source symbols with different priorities to match a bandwidth profile of each client device in the multicast group.
  • the transceiver includes means for streaming the fountain encoded layers of source symbols to a multicast group of client devices over a path of a plurality of wireless networks.
  • the means for streaming includes means for streaming the fountain encoded source symbols at a full capacity of each of the multiple paths.
  • the control logic includes means for retrieving payload data from received unequal error protection fountain encoded data to obtain payload data, means for adding the payload data to a current codeword and means for decoding the current codeword to obtain a block of source data.
  • the control logic also includes means for repeatedly executing the means for receiving, retrieving, adding and decoding until the block of source data has been recovered or a time interval for usefulness of the block of source data has expired.
  • the plurality of wireless networks include different paths between a client device and a server, which is a source of the block of source data.
  • the client device is a member of a multicast group having a plurality of client devices as members, wherein the plurality of client devices may share a plurality of common paths.
  • Each of the plurality of client devices receives the unequal error protection fountain encoded data.
  • the block of source data corresponds to a base layer and an enhancement layer of a scalable video coded bit stream.
  • the transceiver includes means for receiving unequal error protection fountain encoded data from a path from any of a plurality of wireless networks.
  • the transceiver also includes means for sending said server feedback.
  • the present invention may be implemented in various forms of hardware, software, firmware, special purpose processors, or a combination thereof.
  • the present invention is implemented as a combination of hardware and software.
  • the software is preferably implemented as an application program tangibly embodied on a program storage device.
  • the application program may be uploaded to, and executed by, a machine comprising any suitable architecture.
  • the machine is implemented on a computer platform having hardware such as one or more central processing units (CPU), a random access memory (RAM), and input/output (I/O) interface(s).
  • CPU central processing units
  • RAM random access memory
  • I/O input/output
  • the computer platform also includes an operating system and microinstruction code.
  • various processes and functions described herein may either be part of the microinstruction code or part of the application program (or a combination thereof), which is executed via the operating system.
  • various other peripheral devices may be connected to the computer platform such as an additional data storage device and a printing device.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

A method and apparatus are described including retrieving a block of source data, organizing the block of source data into layers of source symbols, encoding the layers of source symbols using fountain codes, wherein the fountain codes have an unequal protection property such that the fountain encoded layers of source symbols have different protection strengths and streaming the fountain encoded source symbols to a multicast group of client devices over a path of any of a plurality of multiple paths in a wireless networks. Also described are a method and apparatus including receiving unequal error protection fountain encoded data from a path of any of a plurality of wireless networks, retrieving payload data from the received unequal error protection fountain encoded data to obtain payload data, adding the payload data to a current codeword and decoding the current codeword to obtain a block of source data.

Description

APPLICATION OF UNEQUAL ERROR PROTECTION RATELESS CODES IN MULTIMEDIA STREAMING OVER MULTI-PATH NETWORKS)
FIELD OF THE INVENTION
The present invention is directed to a multi-path network where the devices operating in the network use the unequal error protection (UEP) property of rateless (digital fountain) codes.
BACKGROUND OF THE INVENTION
In multicast and broadcast applications, data are transmitted from a server to multiple receivers over wired and/or wireless networks. A multicast system as used herein is a system in which a server transmits the same data to multiple receivers simultaneously, where the receivers form a subset of all the receivers up to and including all of the receivers. A broadcast system is a system in which a server transmits the same data to all of the receivers simultaneously. That is, a multicast system by definition can include a broadcast system.
As used herein a client includes (but is not limited to) a client device, a mobile terminal, a mobile station, a node, a station, an end device , a terminal device, a computer, a laptop, a dual mode smart phone or any other equivalent device.
Multi-path or multi-link networking has recently emerged as an effective solution to enhance network reliability and throughput by delivering service data over multiple independent network paths to a client.
In a multi-path multicast wireless network, a client can connect to a server via a number of network paths. Furthermore, as a group, clients may share network paths. Each network path can be uni-directional or bi-directional. For the same path, the network conditions for different clients may differ, for example, bandwidth, loss rate, etc. due to factors, such as wireless channel interference and signal strength attenuation. Furthermore, these connection paths can be dynamic due to possible client mobility.
As an example Fig. 1 shows clients A, B and C connected to the server through network paths Pi, P2 and P3. In particular, clients A, B and C respectively have one, three and two paths connecting to the server. These network paths go through different networks, i.e., a 3GPP-LTE cellular network, a Wi-Fi network and a DVB-H network, in which the 3GPP-LTE path is bi-directional, whiles the other two paths are unidirectional. The shaded rectangles in Fig.l represent data packets going through these networks. As seen from Fig. 1, Client A only receives packets from Pi, while Client B has three data sources, and Client C receives packets from both P2 and P3. So the clients may have different aggregated network bandwidths.
Another example of such type of networks is a Mobile Ad Hoc Network (MANET) as shown in Fig. 2. In such a network, a mesh topology connects clients to the server through multiple paths, and all the nodes (clients) in the network can serve as a router in order to build up a short-term dynamic network infrastructure. Multi-path networks also include other types, such as peer-to-peer (P2P) networks.
In the above multi-path wireless multicast networks, the server needs to address the data packet scheduling problem in order to efficiently utilize the network resources to stream multimedia content to the clients in a multicast group. The objective of the scheduling task is to jointly determine (find):
1) The optimal streaming rate for each client in the group so that its received QoS is maximized, and
2) The network path that should be used to transmit each data packet to each client, so that the QoS of the each client in the client group is maximized.
In other words, the server needs to determine the delivery path for each data packet and in turn control the data rate and flow allocation of each path, so that each client can achieve the best QoS that corresponds to its aggregated network bandwidth.
A straightforward design usually requires that the server be able to estimate and keep track of the details of each client's network paths. However, such an estimate may not be accurate or may involve large overhead. On the other hand, for paths with unidirectional based connection (e.g. UDP), or a multicast group with a large number of clients, it is impossible or very difficult for the server to do so. Furthermore, for dynamic and distributed networks such as MANET or P2P networks, the server does not have the full knowledge of the complete network's topology. As a result, the lack of such information can cause a waste of network resources.
As an example, consider the multi-path network shown in Fig. 1. Client B shares path Pi with Client A, and P2, P3 with Client C. Suppose the bandwidth of each path is the same for all the three clients. To best utilize the bandwidth resources, the server needs to send the packets that are common to Clients A and B through Pi, and the packets that are shared by Clients B and C through P2 and P3, and rest of the packets that are exclusively for Client B through any path that has remaining bandwidth. This solution requires that the server constantly monitors the link connection status, and estimates the bandwidth of each client, which can be costly or inaccurate. It may not even be possible in the case of some networks such as for a DVB-H network since a DVB- H network does not have a feedback channel. Furthermore, even with accurate path information, the server still needs to perform the path selection and rate allocation process. The path selection and rate allocation tasks are generally not easy.
Many existing works in multi-path streaming rely on classic routing algorithms that find the best path (or sets of paths) given some established network metrics. They do not take into consideration the metrics of multimedia streaming applications. Thus though the selected paths may be optimal in terms of network utilization, the selected paths are or may be suboptimal from the viewpoint of client's QoS.
In one prior art study, a general framework for streaming multimedia data in multi-path networks is derived which encompasses both network and media aware metrics. The framework is based upon a set of models including multi-path network models and a video quality model. The prior art then casts and solves the rate allocation as an optimization problem. However, this approach only targets one client and requires detailed knowledge of the path conditions of that client. Hence, it is not applicable to multi-path streaming to a multicast group. Furthermore, the computational complexity involved in the work is high. SUMMARY OF THE INVENTION
The present invention is an application of rateless (digital fountain) codes with an unequal error protection (UEP) property used in scalable multimedia streaming to a multicast group within multi-path wireless networks. In the case of such use, clients may connect to a server with multiple paths, and each path can differ in terms of network type and conditions, which can change dynamically. As a result, it is difficult for the server to efficiently schedule data packet delivery to the clients, while at the same time fully utilize the individual bandwidth capacity of each client. The present invention exploits ratelessness and randomness properties of the digital fountain codes, so that the server can remain unconcerned about clients' detailed network information when it performs scheduling. Each client in a multicast group may have Quality of Service (QoS) requirements that are proportional to its aggregated network bandwidth. The present invention can reduce the packet scheduling overhead at the server and improve network resource utilization.
A method and apparatus are described including retrieving a block of source data, organizing the block of source data into layers of source symbols, encoding the layers of source symbols using fountain codes, wherein the fountain codes have an unequal protection property such that the fountain encoded layers of source symbols have different protection strengths and streaming the fountain encoded layers of source symbols to a multicast group of client devices over a path of any of a plurality of wireless networks. Also described are a method and apparatus including receiving unequal error protection fountain encoded data from a path of any of a plurality of wireless networks, retrieving payload data from the received unequal error protection fountain encoded data to obtain payload data, adding the payload data to a current codeword and decoding the current codeword to obtain a block of source data.
BRIEF DESCRIPTION OF THE DRAWINGS
The present invention is best understood from the following detailed description when read in conjunction with the accompanying drawings. The drawings include the following figures briefly described below: Fig. 1 is a schematic diagram of a multi-path multicast wireless network.
Fig. 2 is a schematic diagram of a wireless mesh network.
Fig. 3 shows fountain codes with prioritized protection.
Fig. 4 shows prioritized fountain code decoding.
Fig. 5 is a flowchart of an exemplary implementation of the operation of the present invention from the perspective of a server.
Fig. 6 is a flowchart of an exemplary implementation of the operation of the present invention from the perspective of a client.
Fig. 7 is a block diagram of an exemplary device operating in a multi-path network using the unequal error protection property of rateless codes.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
Fountain codes are a relatively new class of codes originally designed for robust and scalable transmission of data over lossy computer networks. For a message to be delivered which includes a vector of input symbols (xj, ... ¾), a fountain code generates a potentially limitless stream of output symbols. Hereafter, the input symbols (data) are called "source symbols", the output symbols are called "encoded symbols". Source symbols and output symbols form a codeword. Each encoded symbol is generated independently by sampling from a distribution D, and adding the source symbols correspondingly to support the sampled vector.
There are two features of digital fountain codes that are exploited in the present invention. The first is that fountain codes can generate an arbitrary number of encoded symbols from a few to possibly infinite on the fly for each codeword, based on pseudorandom selections from a finite number of source symbols. Thus, unlike traditional FEC codes, the code rate for a fountain code is no longer fixed. Thus, digital fountain codes are also known as rateless codes. This property is beneficial for those network channels with dynamic or unknown loss rates, since the server can keep sending encoded symbols to feed (transmit to, send to, communicate to) the client(s) until they have received enough encoded symbols to recover the source symbols, or some network resource is depleted. The other feature of digital fountain codes is that, due to the random nature of the encoding process, as long as there is a sufficient number of source symbols in a codeword, there is high probability that the encoded symbols are linearly independent. Therefore, a digital fountain code decoder can recover the source symbols from an arbitrary set of encoded symbols of a codeword, when the received encoded symbols reach a sufficient amount. With this property, when the server sends encoded symbols through multiple network paths, a client can receive the encoded symbols from any of the multiple paths used by the server to transmit (communicate, send, forward). With high probability, there is no waste of the received encoded symbols in recovering source symbols.
In general, all the source symbols in a fountain codeword receive the same amount of protection from its encoded symbols. However, there is a variant of fountain codes called "unequal error protection" (UEP) fountain codes. With UEP fountain codes, the protection strength can be shifted among the source symbols. A common practice to utilize the UEP property is to allocate more protection to high-priority source symbols (data) and less protection for low-priority data. There are many different approaches to construct UEP fountain codes, such as those reported in the prior art.
Scalable multimedia coding is a coding paradigm in which a multimedia source is encoded into multiple layers, so that by decoding each successive layer, the reconstructed multimedia quality is improved in terms of resolution, fidelity, etc. In the present invention, videos that are encoded by SVC are specifically considered. However, the described invention can be applied to other scalable multimedia sources, such as scalable images and audio.
SVC (Scalable Video Coding) is an extension to the H.264/AVC video coding standard. It can provide scalability in spatial (resolution), temporal (frame rate) and SNR (quality/fidelity) dimensions. Its bit stream includes a base layer and one or more enhancement layers. In general, the base layer provides basic video quality, and with each additional enhancement layer added in order of its layer index, the video quality improves. Since the decoding of an enhancement layer depends on the base layer and all of lower-indexed enhancement layer(s), generally the base layer has the highest priority, followed by the enhancement layers with decreasing layer indices.
The present invention combines these components to address the server scheduling problem as described above in a multi-path video multicast streaming application.
At the server end, the server encodes a block of SVC video data with digital fountain codes and packetizes the encoded symbols output from the fountain encoder into network packets, and then sends these packets over the multiple links connects the server to the clients in a multicast group.
In Fig. 3 the symbols that are to be encoded and transmitted (communicated, sent out, forwarded) are indicated by boxes (squares). The shaded circles indicate high- priority (base layer) encoded symbols and the unshaded circles indicate low-priority (enhancement layer) encoded symbols. Fig. 3 illustrates the fountain encoding process at the server: the SVC bit stream data that corresponds to a media time interval T are included into a fountain codeword as source symbols for encoding. Suppose that the SVC bit stream includes a base and one or more enhancement layers. The layers are treated as high-priority and low-priority separately, as shown in Fig. 3. The included bit stream data from the two layers are treated as high-priority and low-priority separately. Specifically, every T bytes of the base layer data are grouped to form a high-priority source symbol (data), and likewise, every T bytes of enhancement layer data are grouped to form a low- priority source symbol (data).
According to the encoding rules for digital fountain codes, a random number of degrees d is chosen first for each encoding symbol. Then d source symbols are randomly chosen and XORed to form the encoded symbol. For different UEP fountain code construction methods, the random source symbol selection process is often altered so that more connections between source and encoded symbols come from high-priority source symbols, and vice versa. As a result, the high-priority source symbols get more protection. Then the server packetizes the encoded symbols from the fountain encoder output into a path that has remaining bandwidth. It continues sending these packets until the time interval T corresponding to the current codeword expires, or it is informed by some means that all the clients have received enough data. Then the server moves to fetch the next block of data from the SVC bit stream and repeats the above process.
Therefore, with the present invention, the server does not need to perform complicated path selection and rate allocation among multiple paths. Moreover, it does not have to have the specific knowledge about the path information of each of its client groups.
Fig. 5 is a flowchart of an exemplary implementation of the operation of the present invention from the perspective of a server. At 505 the server retrieves a block of data from an SVC bit stream corresponding to time interval T. At 507 the server organizes the SVC bit stream into layers. At 510 the server organizes the SVC data as source symbols in a fountain codeword. At 515 the server applies UEP coding to different SVC layers in the fountain codeword. At 520 the server generates encoded layer of symbols and transmits (sends, communicates, forwards) the fountain encoded layers of symbols over a path of any of a plurality of wireless networks. The paths are selected based on remaining bandwidth. A test is performed at 525 to determine if every client has received enough data (fountain encoded symbols) to properly decode the data. Feedback can be sent through network connections that have a feedback capability, e.g. 3G network as shown in Fig. 1. The server continues sending data within DVB-H bandwidth capacity until the playback time for the chunk of data expires. If every client has received enough data (fountain encoded symbols) to properly decode the data then processing proceeds to 505. If every client has not received enough data (fountain encoded symbols) to properly decode the data then a test is performed at 525 to determine if the time interval has expired. If the time interval has expired, then processing proceeds to 505. If the time interval has not expired, then processing proceeds to 520.
At the client-side, each client receives data packets from the path(s) that connects the client to the server. The client first retrieves the encoded symbols from each packet payload, and then forwards them to the fountain decoder to decode. For the current codeword, once the decoder has accumulated enough encoding symbols to recover the desirable amount of source symbols in the codeword, or the time interval T corresponding to the current codeword expires, the fountain decoder moves to receiving encoded symbols for the next codeword.
For a particular client, it may receive only a portion of the encoded symbols that originated from the server. This is because the server sends the encoded symbols over all the available links, but for a particular client, it may only have a subset of the connections. Another reason is that some packets may get dropped during delivery. Thus, the amount of received encoded symbols should be proportional to the client's effective aggregated bandwidth.
In Fig. 4 the symbols that were not able to be recovered are shown with a dotted boundary marking the circle. All other circles indicate symbols that were able to be recovered. The shaded circles indicate high-priority (base layer) symbols and the unshaded circles indicate low-priority (enhancement layer) symbols. As shown in Fig. 4, suppose a client only receives some of the encoded symbols of a codeword and there are still some symbols missing. Due to the UEP construction of the fountain codes, as long as there is a sufficient number of encoded symbols, all of the high-priority source symbols can be recovered, though not all the low-priority encoded symbols may be recovered. Hence, the client can reconstruct the video using the recovered base layer data to have basic video quality. On the other hand, if another client has more paths, or has better channel conditions, it can receive more encoded symbols and thus have a higher probability of recovering the additional enhancement layer(s). So the client is able to enjoy a higher video QoS.
Based upon the above descriptions of the server-side and the client-side operations, it is evident that using the present invention, the server does not need to have any path information of its clients' multicast groups and also avoids the complicated path selection and rate allocation processes. Meanwhile, each client in the multicast group(s) can reconstruct the amount of useful service data that is proportional to its effective aggregated bandwidth. With different UEP fountain code construction methods, different amounts of encoded symbols are needed to recover source symbols assigned to different priorities. Therefore, it is possible for the server to estimate the available aggregated bandwidth profile of the multicast group(s), and adjust the fountain codes construction to match the profile, in order to achieve the best QoS for all the clients.
Fig. 6 is a flowchart of an exemplary implementation of the operation of the present invention from the perspective of a client. At 605 the client starts to work on a new codeword. At 610 the client receives data packets from any of the connecting paths of any of a plurality of wireless networks available between itself and the server. At 615 the client retrieves the payload data (fountain encoded symbols) and adds the retrieved data to the current fountain encoded symbols (codeword) that it is working on (that the client may have received from another path (link, channel). At 620 the client attempts to decode the fountain encoded codewords. At 625 a test is performed to determine if the client has been able to recover the source symbols. If the client has been able to recover the source symbols, then at 635 a test is performed to determine if the client device is able to give the server feedback. If the client device is able to give the server feedback then at 640 the client device transmits feedback to the server that it is finished because the client device has received enough unequal error protected fountain encoded symbols to properly decode the source symbols. If the client device is not able to give the server any feedback then processing proceeds to 605. If the client has not been able to recover the source symbols, then a test is performed at 630 to determine if the time interval for the data has expired. If the time interval for the data has expired, then processing proceeds to 635. If the time interval for the data has not expired, then processing proceeds to 610.
Fig. 7 is a block diagram of an exemplary device operating in a multi-path network using the unequal error protection property of rateless codes. The device can be either a server or a client. The exemplary device (apparatus) shown in Fig. 7 may be either a server or a client. The transceiver actually transmits and receives data and any control signals and the control logic performs all other functions as described below. Specifically, when the device is behaving as a server, the control logic includes means for retrieving a block of source data, means for organizing the block of source data into layers of source symbols and means for encoding the layers of source symbols using fountain codes, wherein the fountain codes have an unequal protection property such that the fountain encoded layers of source symbols have different protection strengths. Each of the multiple paths may or may not have a feedback capability. Each block of source data is a scalable video coded bit stream coded by a scalable video coder. Different protection strengths are applied to different layers of the source symbols of the scalable video coded bit stream such that a number of the fountain encoded layers of source symbols necessary to recover different scalable video coded layers are different, wherein a base layer has a smallest amount of encoded source symbols to recover and a higher enhancement layer has more encoded source symbols to recover. The control logic also includes means for adjusting the fountain codes construction to adjust an amount of encoded layers of source symbols necessary to recover source symbols with different priorities to match a bandwidth profile of each client device in the multicast group. The transceiver includes means for streaming the fountain encoded layers of source symbols to a multicast group of client devices over a path of a plurality of wireless networks. The means for streaming includes means for streaming the fountain encoded source symbols at a full capacity of each of the multiple paths. Specifically, when the device is behaving as a client device the control logic includes means for retrieving payload data from received unequal error protection fountain encoded data to obtain payload data, means for adding the payload data to a current codeword and means for decoding the current codeword to obtain a block of source data. The control logic also includes means for repeatedly executing the means for receiving, retrieving, adding and decoding until the block of source data has been recovered or a time interval for usefulness of the block of source data has expired. The plurality of wireless networks include different paths between a client device and a server, which is a source of the block of source data. The client device is a member of a multicast group having a plurality of client devices as members, wherein the plurality of client devices may share a plurality of common paths. Each of the plurality of client devices receives the unequal error protection fountain encoded data. The block of source data corresponds to a base layer and an enhancement layer of a scalable video coded bit stream. The transceiver includes means for receiving unequal error protection fountain encoded data from a path from any of a plurality of wireless networks. The transceiver also includes means for sending said server feedback.
It is to be understood that the present invention may be implemented in various forms of hardware, software, firmware, special purpose processors, or a combination thereof. Preferably, the present invention is implemented as a combination of hardware and software. Moreover, the software is preferably implemented as an application program tangibly embodied on a program storage device. The application program may be uploaded to, and executed by, a machine comprising any suitable architecture. Preferably, the machine is implemented on a computer platform having hardware such as one or more central processing units (CPU), a random access memory (RAM), and input/output (I/O) interface(s). The computer platform also includes an operating system and microinstruction code. The various processes and functions described herein may either be part of the microinstruction code or part of the application program (or a combination thereof), which is executed via the operating system. In addition, various other peripheral devices may be connected to the computer platform such as an additional data storage device and a printing device.
It is to be further understood that, because some of the constituent system components and method steps depicted in the accompanying figures are preferably implemented in software, the actual connections between the system components (or the process steps) may differ depending upon the manner in which the present invention is programmed. Given the teachings herein, one of ordinary skill in the related art will be able to contemplate these and similar implementations or configurations of the present invention.

Claims

CLAIMS:
1. A method, said method comprising: retrieving a block of source data; organizing said block of source data into layers of source symbols; encoding said layers of source symbols using fountain codes, wherein said fountain codes have an unequal protection property such that said fountain encoded layers of source symbols have different protection strengths; and streaming said fountain encoded layers of source symbols to a multicast group of client devices over a path of any of a plurality of wireless networks.
2. The method according to claim 1, wherein each said path may or may not have a feedback capability.
3. The method according to claim 1, wherein each said block of source data is a scalable video coded bit stream coded by a scalable video coder.
4. The method according to claim 3, wherein said different protection strengths are applied to different layers of said source symbols of said scalable video coded bit stream such that a number of said fountain encoded layers of source symbols necessary to recover different scalable video coded layers are different, wherein a base layer has a smallest amount of encoded source symbols to recover and a higher enhancement layer has more encoded source symbols to recover.
5. The method according to claim 1, wherein said streaming step streams said fountain encoded layers of source symbols at a full capacity of each said path.
6. The method according to claim 1, further comprising adjusting said fountain codes construction to adjust an amount of encoded layers of source symbols necessary to recover source symbols with different priorities to match a bandwidth profile of each said client device in said multicast group.
7. A method, said method comprising: receiving unequal error protection fountain encoded data from a path of any of a plurality of wireless networks; retrieving payload data from said received unequal error protection fountain encoded data to obtain payload data; adding said payload data to a current codeword; and decoding said current codeword to obtain a block of source data.
8. The method according to claim 7, further comprising repeating said steps of receiving, retrieving, adding and decoding until said block of source data has been recovered or a time interval for usefulness of said block of source data has expired.
9. The method according to claim 7, wherein said plurality of wireless networks include different paths between a client device and a server, which is a source of said block of source data.
10. The method according to claim 9, wherein said client device is a member of a multicast group having a plurality of client devices as members, wherein the plurality of client devices may share a common path.
11. The method according to claim 9, wherein each of said plurality of client devices receives said unequal error protection fountain encoded data.
12. The method according to claim 7, wherein said block of source data corresponds to a base layer and an enhancement layer of a scalable video coded bit stream.
13. The method according to claim 9, further comprising sending said server feedback.
14. An apparatus, comprising: means for retrieving a block of source data; means for organizing said block of source data into layers of source symbols; means for encoding said layers of source symbols using fountain codes, wherein said fountain codes have an unequal protection property such that said fountain encoded layers of source symbols have different protection strengths; and means for streaming said fountain encoded layers of source symbols to a multicast group of client devices over a path of any of a plurality of wireless networks.
15. The apparatus according to claim 14, wherein each said path may or may not have a feedback capability.
16. The apparatus according to claim 14, wherein each said block of source data is a scalable video coded bit stream coded by a scalable video coder.
17. The apparatus according to claim 16, wherein said different protection strengths are applied to different layers of said source symbols of said scalable video coded bit stream such that a number of said fountain encoded layers of source symbols necessary to recover different scalable video coded layers are different, wherein a base layer has a smallest amount of encoded source symbols to recover and a higher enhancement layer has more encoded source symbols to recover.
18. The apparatus according to claim 14, wherein said means for streaming includes means for streaming said fountain encoded layers of source symbols at a full capacity of each said path.
19. The apparatus according to claim 14, further comprising means for adjusting said fountain codes construction to adjust an amount of encoded layers of source symbols necessary to recover source symbols with different priorities to match a bandwidth profile of each said client device in said multicast group.
20. An apparatus, comprising: means for receiving unequal error protection fountain encoded data from a path of any of a plurality of wireless networks; means for retrieving payload data from said received unequal error protection fountain encoded data to obtain payload data; means for adding said payload data to a current codeword; and means for decoding said current codeword to obtain a block of source data.
21. The apparatus according to claim 20, further comprising means for repeatedly executing said means for receiving, retrieving, adding and decoding until said block of source data has been recovered or a time interval for usefulness of said block of source data has expired.
22. The apparatus according to claim 20, wherein said plurality of wireless networks include different paths between a client device and a server, which is a source of said block of source data.
23. The apparatus according to claim 22, wherein said client device is a member of a multicast group having a plurality of client devices as members, wherein the plurality of client devices may share a common path.
24. The apparatus according to claim 22, wherein each of said plurality of client devices receives said unequal error protection fountain encoded data.
25. The apparatus according to claim 20, wherein said block of source data corresponds to a base layer and an enhancement layer of a scalable video coded bit stream.
26. The apparatus according to claim 22, further comprising means for sending said server feedback.
PCT/US2010/044571 2010-08-05 2010-08-05 Application of unequal error protection rateless codes in multimedia streaming over multi-path networks WO2012018339A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/US2010/044571 WO2012018339A1 (en) 2010-08-05 2010-08-05 Application of unequal error protection rateless codes in multimedia streaming over multi-path networks

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2010/044571 WO2012018339A1 (en) 2010-08-05 2010-08-05 Application of unequal error protection rateless codes in multimedia streaming over multi-path networks

Publications (1)

Publication Number Publication Date
WO2012018339A1 true WO2012018339A1 (en) 2012-02-09

Family

ID=43746607

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2010/044571 WO2012018339A1 (en) 2010-08-05 2010-08-05 Application of unequal error protection rateless codes in multimedia streaming over multi-path networks

Country Status (1)

Country Link
WO (1) WO2012018339A1 (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014113636A1 (en) * 2013-01-17 2014-07-24 Qualcomm Incorporated Fec-based reliable transport control protocols for multipath streaming
CN103974070A (en) * 2014-04-25 2014-08-06 广州市香港科大霍英东研究院 Wireless video transmission method and system based on multi-user input and output
EP2830318A4 (en) * 2012-03-23 2015-12-02 Humax Holdings Co Ltd Hybrid delivery method and reception method for mmt packaged svc video contents
EP3070950A3 (en) * 2015-03-20 2016-11-30 Comcast Cable Communications, LLC Data publication and distribution
CN109729307A (en) * 2019-02-28 2019-05-07 北京理工大学 A kind of multicast desktop video conferencing system based on fountain codes
CN113890683A (en) * 2021-10-11 2022-01-04 东北大学 Hierarchical video transmission method based on unequal error protection online fountain codes
CN114499752A (en) * 2021-12-30 2022-05-13 西安交通大学 Fountain code safe transmission method based on multi-path interlocking
WO2022170568A1 (en) * 2021-02-10 2022-08-18 Qualcomm Incorporated Improvement in network coding for dual connectivity

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060062243A1 (en) * 2004-09-23 2006-03-23 Dacosta Behram M Reliable audio-video transmission system using multi-media diversity
WO2009039638A1 (en) * 2007-09-28 2009-04-02 Pin-Han Ho A robust system and method for wireless data multicasting using superposition modulation
WO2009071781A1 (en) * 2007-12-05 2009-06-11 Alcatel Lucent Method for transmitting data from a radiocommunication network infrastructure to user equipment and equipment for carrying out he method
WO2009131979A2 (en) * 2008-04-21 2009-10-29 Qualcomm Incorporated Method and apparatus for encoding transmission data blocks for enhanced switching performance

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060062243A1 (en) * 2004-09-23 2006-03-23 Dacosta Behram M Reliable audio-video transmission system using multi-media diversity
WO2009039638A1 (en) * 2007-09-28 2009-04-02 Pin-Han Ho A robust system and method for wireless data multicasting using superposition modulation
WO2009071781A1 (en) * 2007-12-05 2009-06-11 Alcatel Lucent Method for transmitting data from a radiocommunication network infrastructure to user equipment and equipment for carrying out he method
WO2009131979A2 (en) * 2008-04-21 2009-10-29 Qualcomm Incorporated Method and apparatus for encoding transmission data blocks for enhanced switching performance

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2830318A4 (en) * 2012-03-23 2015-12-02 Humax Holdings Co Ltd Hybrid delivery method and reception method for mmt packaged svc video contents
US9413494B2 (en) 2013-01-17 2016-08-09 Qualcomm Incorporated FEC-based reliable transport control protocols for multipath streaming
WO2014113636A1 (en) * 2013-01-17 2014-07-24 Qualcomm Incorporated Fec-based reliable transport control protocols for multipath streaming
CN103974070A (en) * 2014-04-25 2014-08-06 广州市香港科大霍英东研究院 Wireless video transmission method and system based on multi-user input and output
CN103974070B (en) * 2014-04-25 2017-08-15 广州市香港科大霍英东研究院 Wireless video transmission method and system based on multi-user input and output
US11743314B2 (en) 2015-03-20 2023-08-29 Comcast Cable Communications, Llc Data publication and distribution
EP3070950A3 (en) * 2015-03-20 2016-11-30 Comcast Cable Communications, LLC Data publication and distribution
US10742703B2 (en) 2015-03-20 2020-08-11 Comcast Cable Communications, Llc Data publication and distribution
CN109729307A (en) * 2019-02-28 2019-05-07 北京理工大学 A kind of multicast desktop video conferencing system based on fountain codes
WO2022170568A1 (en) * 2021-02-10 2022-08-18 Qualcomm Incorporated Improvement in network coding for dual connectivity
CN113890683A (en) * 2021-10-11 2022-01-04 东北大学 Hierarchical video transmission method based on unequal error protection online fountain codes
CN114499752A (en) * 2021-12-30 2022-05-13 西安交通大学 Fountain code safe transmission method based on multi-path interlocking
CN114499752B (en) * 2021-12-30 2023-12-22 西安交通大学 Fountain code safe transmission method based on multipath interlocking

Similar Documents

Publication Publication Date Title
WO2012018339A1 (en) Application of unequal error protection rateless codes in multimedia streaming over multi-path networks
CN101068236B (en) Streaming media bit rate control method, system and equipment
US9894421B2 (en) Systems and methods for data representation and transportation
Nguyen et al. Multimedia wireless transmission with network coding
CN103262630A (en) Signaling techniques for multimedia-ware radio and network adaptation
US9860028B2 (en) Systems and methods for hybrid content delivery
CN102640508B (en) Based on the method for the wireless video transmission of priority
CN1476199A (en) Transmission control parameter production method and method of selective repeating according to packet characteristics
KR102114847B1 (en) Apparatus and method for transmitting and receiving multimedia data in mobile communication system
US9553898B2 (en) Gateway based and centric network management and coordination
US7599326B2 (en) Method for distributing a set of data, radiocommunication network and wireless station for implementing the method
CN113055285B (en) Self-adaptive data transmission method based on MPTCP and network coding
Huusko et al. Cross-layer architecture for scalable video transmission in wireless network
Nguyen et al. Hybrid ARQ-random network coding for wireless media streaming
Vivekananda et al. Efficient video transmission technique using clustering and optimisation algorithms in MANETs
Gheorghiu et al. On the performance of network coding in multi-resolution wireless video streaming
Sheikh et al. Distributed scheduling for low-delay and loss-resilient media streaming with network coding
CN103986932A (en) Message source channel combined encoding and decoding method for video data stream
Sun et al. Scheduling of multicast and unicast services under limited feedback by using rateless codes
Hsu et al. Rate control and stream adaptation for scalable video streaming over multiple access networks
CN107615810A (en) Header compression system and method for online network code
He et al. Optimized video multicasting over wireless ad hoc networks using distributed algorithm
US9930423B1 (en) Dynamic transmission time interval bundling for multicast video
JP5743350B2 (en) Data transmission apparatus, forward error correction method, and program
CN106330399B (en) A kind of fast feedback approach suitable for multi-hop heterogeneous network network code

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10745495

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 10745495

Country of ref document: EP

Kind code of ref document: A1