# US 2011/0066749 A1 · Distribution method, preferably applied in a streaming system

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2011/0066749 A1
- Document ID: US20110066749A1
- Status: Published application
- Kind: A1
- Application number: 12/951,263
- Filed: 2010-11-22
- Published: 2011-03-17
- Earliest claimed: 2006-09-22
- Assignees: Codemate A/S
- Inventors: STEPHEN ALSTRUP; THEIS RAUHE
- Web page: https://patentgrep.com/patent/US20110066749A1

## CPC

- H04L 67/104: Peer-to-peer [P2P] networks
- H04L 65/611: for multicast or broadcast (systems for broadcast or conference H04L12/18; arrangements for broadcast or distribution combined with broadcast H04H20/00; arrangements for broadcast applications with a direct linkage to broadcast information or to broadcast space-time H04H60/00; selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS], H04W4/06)
- H04L 67/06: specially adapted for file transfer, e.g. file transfer protocol [FTP]
- H04L 67/1091: {Interfacing with client-server systems or between P2P systems}
- H04L 1/0057: {Block codes (H04L1/0061, H04L1/0064 take precedence)}
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

The invention relates to a data live streaming system comprising at least one data live streaming broadcaster LSB and at least two live streaming recipients LSR, said at least two live streaming recipients LSR forming at least a part of a peer-to-peer streaming network and said at least two live streaming recipients LSR each comprising means for generation of peer-to peer streaming to other live streaming recipients LSR of said peer-to peer streaming network and wherein said peer-to peer streaming to other streaming recipients LSR comprises loss resilient code representations of data from said at least one live streaming broadcaster LSB.

## Claims

### Claim 1

A data streaming system comprising
at least one data streaming broadcaster (LSB), and
at least two streaming recipients (LSR),
said at least two streaming recipients (LSR) forming at least a part of a peer-to-peer streaming network;
wherein said at least two streaming recipients (LSR) each comprise a means for generating peer-to-peer streaming of content to other streaming recipients (LSR) of said peer-to-peer streaming network and wherein said peer-to-peer streaming of content to other streaming recipients (LSR) comprises loss resilient code representations of data from said at least one streaming broadcaster (LSB);
wherein at least one of said at least two streaming recipients (LSR) comprises a multicast receiver for receiving by multicast delivery loss resilient code representations of said data from said at least one streaming broadcaster (LSB).

### Claim 2 (depends on 1)

The data streaming system according to claim 1, wherein each of said at least two streaming recipients (LSR) provides at least one unique partial encoded representation (UPR) of Input Data (I) by said means for generating peer-to-peer streaming of content to other streaming recipients (LSR).

### Claim 3 (depends on 2)

The data streaming system according to claim 2, wherein at least two of said unique partial encoded representations (UPR) collectively form a complete representation of the Input Data (I).

### Claim 4 (depends on 1)

The data streaming system according to claim 1, wherein said means for generating peer-to-peer streaming of content to other streaming recipients (LSR) substantially provides M unique partial encoded representations (UPR) of Input Data (I) and wherein the streamed data from the streaming broadcaster (LSB) is fully or substantially represented by a subset of N unique partial encoded representations (UPR).

### Claim 5 (depends on 1)

The data streaming system according to claim 1, wherein the streamed data from the at least one streaming broadcaster (LSB) is fully represented by a subset of N unique partial encoded representations (UPR) encoded by Reed-Solomon based loss resilient code segments.

### Claim 6 (depends on 1)

The data streaming system according to claim 1, wherein the streamed data from the streaming broadcaster (LSB) is substantially represented by a subset of N unique partial encoded representations (UPR) encoded by LT-based based loss resilient code segments.

### Claim 7 (depends on 1)

The data streaming system according to claim 1, wherein said loss resilient code representations of data are provided in frames.

### Claim 8 (depends on 7)

The data streaming system according to claim 7, wherein said frames comprise time frames substantially produced and transmitted sequentially by said streaming broadcaster (LSB).

### Claim 9 (depends on 1)

The data streaming system according to claim 1, wherein the streaming of data from said at least one streaming broadcaster (LSB) is structured in consecutive frames and wherein substantially each of the frames is initiated by an initial transmission of data representations to said at least two streaming recipients (LSR), and wherein said at least two streaming recipients (LSR) stream said data representations or derivatives thereof to others of the streaming recipients (LSR) as loss resilient code segments, and wherein the others of the streaming recipients (LSR) gather a number N of unique loss resilient code segments and regenerate said frames transmitted from said at least one streaming broadcaster (LSB) as a streaming signal.

### Claim 10 (depends on 1)

The data streaming system according to claim 1, wherein said data comprises at least one of video and audio streams.

### Claim 11

A network comprising
at least one Input Data (I) broadcaster (IB), and
a plurality of peers (P),
said plurality of peers (P) transforming Input representative data (IRD) from said at least one Input broadcaster (IB) into a first part of a plurality of M unique partial encoded representations (UPR) of Input Data (I),
at least one of said at least one Input Data (I) broadcaster (IB) transforming Input representative data (IRD) from said at least one Input broadcaster (IB) into a second part of said plurality of M unique partial encoded representations (UPR) of Input Data (I),
wherein a plurality of code subsets (W1, W2, W3, . . . ) of said M unique partial encoded representations comprises N different unique partial encoded representations (UPR) of said Input Data (I), each of the code subsets (W1, W2, W3, . . . ) representing said Input Data (I) and where N is less than M−1.

### Claim 12 (depends on 11)

The network according to claim 11, wherein each of said plurality of peers (P) produces one of said M unique partial encoded representations (UPR) of Input Data (I).

### Claim 13 (depends on 11)

The network according to claim 11, wherein at least one of said code subsets (W1, W2, W3 . . . ) represents an encoded version of said Input Data (I).

### Claim 14 (depends on 11)

The network according to claim 11, wherein at least one of said code subsets (W1, W2, W3 . . . ) is encoded by means of LT based codes.

### Claim 15 (depends on 11)

The network according to claim 11, wherein at least one of said code subsets (W1, W2, W3 . . . ) is encoded by means of Reed-Solomon based codes.

### Claim 16 (depends on 11)

The network according to claim 11, wherein said network further comprises at least two recipient peers (RP), the at least two recipient peers (RP) gathering at least one of said code subsets (W1, W2, W3 . . . ) and decoding the at least one of said code subsets (W1, W2, W3 . . . ) into data corresponding to the encoded data.

### Claim 17 (depends on 16)

The network according to claim 16, wherein the gathering performed by said at least two recipient peers (RP) is performed on the basis of a request to at least one of the other peers.

### Claim 18 (depends on 16)

The network according to claim 16, wherein the gathering performed by said at least two recipient peers (RP) is performed on the basis of a push transmission performed by at least one of the plurality of peers (P).

### Claim 19 (depends on 11)

The network according to claim 11, wherein at least one of said plurality of peers (P) forms a recipient peer (RP).

### Claim 20 (depends on 11)

The network according to claim 11, wherein said input representative data (IRD) is established at least partly by at least two intermediate peers (IP).

### Claim 21 (depends on 20)

The network according to claim 20, wherein said intermediate peers (IP) comprise further intermediate processing steps adapted for establishment of input representative data (IRD).

### Claim 22 (depends on 11)

The network according to claim 11, wherein at least one of said plurality of peers (P) forms an intermediate peer (IP).

### Claim 23 (depends on 11)

The network according to claim 11, wherein the total number of peers (P) is greater than 5, and the number of intermediate peers (IP) is between ⅕ and 1/100 of the total number of peers (P).

### Claim 24 (depends on 11)

The network according to claim 11, wherein said input representative data (IRD) is transmitted from said broadcaster (IB) to at least two intermediate peers (IP).

### Claim 25 (depends on 24)

The network according to claim 24, wherein said at least two intermediate peers (IP) receive only a partial representation of said Input Data (I).

### Claim 26 (depends on 11)

The network according to claim 11, wherein the unique partial encoded representations (UPR) are generated by a plurality of different peers from the plurality of peers (P).

### Claim 27 (depends on 11)

The network according to claim 11, wherein the uniqueness of the unique partial encoded representations (UPR) are ensured by producing the partial encoded representations (UPR) by different peers of the plurality of peers (P).

### Claim 28 (depends on 11)

The network according to claim 11, wherein at least one peer of the plurality of peers (P) collects and transforms input representative data (IRD) into at least one unique partial encoded representation by a pull process.

### Claim 29 (depends on 11)

The network according to claim 11, wherein at least one peer of the plurality of peers (P) collects and transforms input representative data (IRD) into at least one unique partial encoded representation by a push process.

### Claim 30 (depends on 11)

The network according to claim 11, wherein said Input Data (I) is transmitted from the at least one Input Data (I) broadcaster (IB) on a real-time basis.

### Claim 31 (depends on 11)

The network according to claim 11, wherein said Input Data (I) is transmitted from the at least one Input Data (I) broadcaster (IB) on a real-time basis in frames.

### Claim 32 (depends on 11)

The network according to claim 11, wherein said network is a video streaming network.

### Claim 33 (depends on 11)

The network according to claim 11, wherein said network is performing video-streaming on demand.

### Claim 34 (depends on 11)

The network according to claim 11, wherein said network is performing live-video streaming

### Claim 35 (depends on 11)

The network according to claim 11, wherein said network is formed by the Internet and said plurality of peers (P) comprises computers communicating with the Internet.

### Claim 36 (depends on 11)

The network according to claim 11, wherein at least one of said plurality of peers (P) comprises a computer transforming input representative data (IRD) into at least one unique partial encoded representation (UPR) of Input Data (I) without gathering and utilizing partial encoded representation (UPR) of Input Data (I) produced by others of the plurality of peers (P).

### Claim 37 (depends on 11)

The network according to claim 11, wherein at least one of said plurality of peers (P) switches between:
at least one mode, where the at least one of said plurality of peers (P) both produces at least one partial encoded representation (UPR) and gathers partial encoded representations produced by others of the plurality of peers (P) to obtain at least one code subset (W1, W2, W3,) and decodes the at least one code subset (W1, W2, W3,); and
at least one idle mode, where the at least one of said plurality of peers (P) acts solely or primarily as a producer of at least one partial encoded representation (UPR).

### Claim 38 (depends on 11)

The network according to claim 11, wherein the plurality of peers (P) are implicitly or explicitly defined in the input data (I).

### Claim 39 (depends on 11)

The network according to claim 11, wherein the encoded input data (I) is associated with peer defining data.

### Claim 40 (depends on 11)

The network according to claim 11, wherein said unique partial encoded representations (UPR) comprise loss resilient codes.

### Claim 41 (depends on 11)

The network according to claim 11, wherein said Input Data (I) comprises video streaming, said broadcaster (IB) comprises a video streaming broadcaster, and at least two of said plurality of peers (P) comprise recipients of video streams.

### Claim 42

A method of streaming data in a streaming system comprising at least one data streaming broadcaster (LSB) and at least two streaming recipients (LSR), the method comprising
forming at least a part of a peer-to-peer streaming network with said at least two streaming recipients (LSR), and
generating peer-to-peer streaming of content to other streaming recipients (LSR) of said peer-to-peer streaming network with said at least two streaming recipients (LSR),
wherein said peer-to-peer streaming of content to other streaming recipients (LSR) is established by means of loss resilient code representations of data from said at least one streaming broadcaster (LSB); and
generating multicast streaming of content to the streaming recipients (LSR) of said peer-to-peer streaming network wherein said multicast streaming of content is established by means of loss resilient code representations of data from said at least one streaming broadcaster (LSB).

### Claim 43

A method of distributing input data (I) in a network comprising at least one Input Data (I) broadcaster (TB) and a plurality of peers (P), the method comprising
transforming, with said plurality of peers (P), Input representative data (IRD) from said at least one Input broadcaster (TB) into a first part of a plurality of M unique partial encoded representations (UPR) of the Input Data (I),
transforming Input representative data (IRD) from said at least one Input broadcaster (TB) into a second part of said plurality of M unique partial encoded representations (UPR) of Input Data (I),
wherein a plurality of code subsets (W1, W2, W3, . . . ) of said M unique partial encoded representations comprises N different unique partial encoded representations (UPR) of said Input Data (I), each subset (W1, W2, W3, . . . )
representing said Input Data (I) and where N is less than M−1.

### Claim 44

A data streaming system comprising
at least one data streaming broadcaster (LSB), and
at least two streaming recipients (LSR),
said at least two streaming recipients (LSR) forming at least a part of a peer-to-peer streaming network,
wherein said at least two streaming recipients (LSR) each comprise a means for generating peer-to-peer streaming of content to other streaming recipients (LSR) of said peer-to-peer streaming network, said peer-to-peer streaming of content to other streaming recipients (LSR) comprises loss resilient code representations of data from said at least one streaming broadcaster (LSB), and
wherein at least one of said at least one data streaming broadcaster (LSB) comprises a means for generating multicast streaming of content to streaming recipients (LSR) of said peer-to-peer streaming network, said multicast streaming of content to streaming recipients (LSR) comprises loss resilient code representations of data from said at least one streaming broadcaster (LSB), and
wherein said means for generating peer-to-peer streaming of content to other streaming recipients (LSR) and said means for generating multicast streaming of content to streaming recipients (LSR), substantially provide collectively M unique partial encoded representations (UPR) of Input Data (I), and wherein the number M substantially corresponds to the number of streaming recipients (LSR).

### Claim 45 (depends on 44)

The data streaming system according to claim 44, wherein each of said at least two streaming recipients (LSR) provides at least one unique partial encoded representation (UPR) of Input Data (I) by said means for generating peer-to-peer streaming of content to other streaming recipients (LSR).

### Claim 46 (depends on 45)

The data streaming system according to claim 45, wherein at least two of said unique partial encoded representations (UPR) collectively form a complete representation of the Input Data (I).

### Claim 47 (depends on 44)

The data streaming system according to claim 44, wherein the streamed data from the streaming broadcaster (LSB) is fully or substantially represented by a subset of N unique partial encoded representations (UPR).

### Claim 48 (depends on 44)

The data streaming system according to claim 44, wherein the streamed data from the at least one streaming broadcaster (LSB) is fully represented by a subset of N unique partial encoded representations (UPR) encoded by Reed-Solomon based loss resilient code segments.

### Claim 49 (depends on 44)

The data streaming system according to claim 44, wherein the streamed data from the streaming broadcaster (LSB) is substantially represented by a subset of N unique partial encoded representations (UPR) encoded by LT-based based loss resilient code segments.

### Claim 50 (depends on 44)

The data streaming system according to claim 44, wherein at least one of said at least two streaming recipients (LSR) regenerates the encoded data from said streaming broadcaster (LSB) by decoding a number N unique partial encoded representations (UPR) of data, and wherein at least one of said N unique partial encoded representations (UPR) is generated by the other streaming recipients (LSR).

### Claim 51 (depends on 44)

The data streaming system according to claim 44, wherein the streaming of data from said at least one streaming broadcaster (LSB) is structured in consecutive frames and wherein substantially each of the frames is initiated by an initial transmission of data representations to said at least two streaming recipients (LSR), and wherein said at least two streaming recipients (LSR) stream said data representations or derivatives thereof to others of the streaming recipients (LSR) as loss resilient code segments, and wherein the others of the streaming recipients (LSR) gather a number N of unique loss resilient code segments and regenerate said frames transmitted from said at least one streaming broadcaster (LSB) as a streaming signal.

### Claim 52 (depends on 44)

The data streaming system according to claim 44, wherein said peer-to-peer streaming network comprises a grid based system.

### Claim 53 (depends on 44)

The data streaming system according to claim 44, wherein said data comprises at least one of video and audio streams.

### Claim 54

A data streaming system comprising
at least one data streaming broadcaster (LSB), and
at least two streaming recipients (LSR),
said at least two streaming recipients (LSR) forming at least a part of a peer-to-peer streaming network,
wherein said at least two streaming recipients (LSR) each comprise a means for generating peer-to-peer streaming of content to other streaming recipients (LSR) of said peer-to-peer streaming network, and wherein said peer-to-peer streaming of content to other streaming recipients (LSR) comprises loss resilient code representations of data transmitted by said at least one streaming broadcaster (LSB), and
wherein at least one of said at least two streaming recipients (LSR) regenerates the encoded data from said streaming broadcaster (LSB) by decoding a number N unique partial encoded representations (UPR) of data and wherein at least one of said N unique partial encoded representations (UPR) is generated by the other streaming recipients (LSR) and at least one other of said N unique partial encoded representations (UPR) is received by multicast delivery.

### Claim 55 (depends on 54)

The data streaming system according to claim 54, wherein each of said at least two streaming recipients (LSR) provides at least one unique partial encoded representation (UPR) of Input Data (I) by said means for generating peer-to-peer streaming of content to other streaming recipients (LSR).

### Claim 56 (depends on 54)

The data streaming system according to claim 54, wherein at least two of said unique partial encoded representations (UPR) collectively form a complete representation of the Input Data (I).

### Claim 57 (depends on 54)

The data streaming system according to claim 54, wherein said means for generating peer-to-peer streaming of content to other streaming recipients (LSR) substantially provides M unique partial encoded representations (UPR) of Input Data (I), and wherein the streamed data from the streaming broadcaster (LSB) is fully or substantially represented by a subset of N unique partial encoded representations (UPR).

### Claim 58 (depends on 54)

The data streaming system according to claim 54, wherein the number M substantially corresponds to the number of streaming recipients (LSR).

### Claim 59 (depends on 54)

The data streaming system according to claim 54, wherein the streamed data from the at least one streaming broadcaster (LSB) is fully represented by a subset of N unique partial encoded representations (UPR) encoded by Reed-Solomon based loss resilient code segments.

### Claim 60 (depends on 54)

The data streaming system according to claim 54, wherein the streamed data from the at least one streaming broadcaster (LSB) is substantially represented by a subset of N unique partial encoded representations (UPR) encoded by LT-based based loss resilient code segments.

### Claim 61 (depends on 54)

The data streaming system according to claim 54, wherein the streaming of data from said at least one streaming broadcaster (LSB) is structured in consecutive frames and wherein substantially each of the frames is initiated by an initial transmission of data representations to said at least two streaming recipients (LSR), and wherein said at least two streaming recipients (LSR) stream said data representations or derivatives thereof to others of the streaming recipients (LSR) as loss resilient code segments, and wherein the others of the streaming recipients (LSR) gather a number N of unique loss resilient code segments and regenerate said frames transmitted from said at least one streaming broadcaster (LSB) as a streaming signal.

### Claim 62 (depends on 54)

The data streaming system according to claim 54, wherein said peer-to-peer streaming network comprises a grid based system.

### Claim 63 (depends on 54)

The data streaming system according to claim 54, wherein said data comprises at least one of video and audio streams.

### Claim 64

A method of receiving data in a network comprising the steps of:
receiving a plurality of peer-to-peer delivered loss resilient code representations of said data,
receiving a plurality of multicast delivered loss resilient code representations of said data,
regenerating said data from said broadcaster by decoding a combination of said plurality of peer-to-peer delivered loss resilient code representations and said plurality of multicast delivered loss resilient code representations.

### Claim 65

A network comprising at least one multicast stream of loss resilient data and a plurality of peer-to-peer transmitted loss resilient data, wherein a combination of a part of the loss resilient data from the multicast stream with a part of the plurality of peer-to-peer transmitted loss resilient data forms a data from a broadcaster.
