IP Library › Granted Patent US 12,081,841
Granted Patent B2
US 12,081,841 · App. 18/256,987 · Granted Sep 3, 2024

Multisource media delivery systems and methods

Inventors: Jeffrey Riedmiller (Novato, CA); Mingchao Yu (Sydney, AU); Jason Michael Cloud (Clayton, CA)
Assignee: Dolby Laboratories Licensing Corporation
H04N21/60H04N21/2183
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,081,841
App. No.
18/256,987
Granted
Sep 3, 2024
Kind
B2
Abstract

A method for delivering media content to one or more clients over a distributed system is disclosed. The method may include generating a plurality of network-coded symbols from a plurality of original symbols representing a first media asset. The method may further include generating an original plurality of coded variants of the first media asset. The method may further include distributing a first coded variant of the original plurality of coded variants to a first cache on a first server device for storage in the first cache. The method may further include distributing a second coded variant of the original plurality of coded variants to a second cache on a second server device for storage in the second cache.

Claims (42)

1. A method for delivering media content to one or more clients over a distributed system, the method comprising:

at a first device:

generating a plurality of network-coded symbols from a plurality of original symbols representing a first media asset;

generating an original plurality of coded variants of the first media asset,

wherein each coded variant includes one or more symbols that include at least one of (i) one or more original symbols of the plurality of original symbols and (ii) one or more network-coded symbols of the plurality of network-coded symbols, and distributing a first coded variant of the original plurality of coded variants to a first cache on a first server device for storage in the first cache; and

distributing a second coded variant of the original plurality of coded variants to a second cache on a second server device for storage in the second cache.

2. The method of claim 1 ,

wherein first transmitted data including at least one of (i) a first network-coded symbol from the first coded variant and (ii) a first recoded symbol based on the first coded variant is configured to be transmitted from the first cache to a client device;

wherein second transmitted data including at least one of (i) a second network-coded symbol from the second coded variant and (ii) a second recoded symbol based on the second coded variant is configured to be transmitted from the second cache to the client device concurrently with transmission of the first transmitted data from the first cache; and

wherein the first transmitted data and the second transmitted data are configured to be transmitted to the client device via different communication links.

3. The method of claim 2 , wherein the different communication links include at least one of:

different channels of a single communication modality, and

different communication modalities.

4. The method of claim 2 , further comprising:

generating, with the first cache, a first recoded variant based on the first coded variant, wherein the first recoded variant includes one or more first recoded symbols that include the first recoded symbol based on the first coded variant;

wherein the first recoded variant is functionally-equivalent to the coded variants of the original plurality of coded variants such that an amount of any data that exceeds a threshold amount of data and that is drawn from the first recoded variant or any one or more other coded variants allows for decoding of the amount of any data to recover the first media asset.

5. The method of claim 4 , wherein generating the first recoded variant based on the first coded variant comprises:

decoding, with the first cache, network-coded symbols from the first coded variant to determine the original symbols represented by the network-coded symbols from the first coded variant, and

generating, at the first cache and using network coding, the one or more first recoded symbols from the original symbols represented by the network-coded symbols from the first coded variant.

6. The method of claim 4 , wherein generating the first recoded variant based on the first coded variant comprises:

generating, at the first cache and using network coding, the one or more first recoded symbols from network-coded symbols from the first coded variant.

7. The method of claim 4 , further comprising:

distributing, with the first cache, the first recoded variant to a third cache on the first server device, the second server device, or an additional server device for storage in the third cache.

8. The method of claim 7 , wherein the third cache does not have a direct communication path with the first device.

9. The method of claim 2 , further comprising:

receiving, by each of the first cache and the second cache, a request indicating that the client device has requested consumption of the first media asset;

in response to the first cache receiving the request, initiating transmission, from the first cache, of the first transmitted data to the client device; and

in response to the second cache receiving the request, initiating transmission, from the second cache, of the second transmitted data to the client device.

10. The method of claim 9 , wherein the transmission of the first transmitted data from the first cache and the transmission of the second transmitted data from the second cache occur without the first cache and the second cache receiving a portion of the first media asset after the request is received by the first cache and the second cache.

11. The method of claim 9 , wherein generating the original plurality of coded variants includes:

generating the first coded variant to include a first predetermined amount of symbols based on a first storage budget of the first cache; and

generating the second coded variant to include a second predetermined amount of symbols based on a second storage budget of the second cache.

12. The method of claim 1 , wherein the original plurality of coded variants includes at least one of:

a full-size coded variant that is configured to independently admit recovery of the first media asset through network decoding; and

a partial coded variant that is not configured to independently admit recovery of the first media asset through network decoding.

13. The method of claim 1 , wherein each coded variant is functionally-equivalent such that an amount of any data that exceeds a threshold amount of data and that is drawn from any one or more coded variants allows for decoding of the amount of any data to recover the first media asset.

14. The method of claim 1 , wherein the one or more symbols in each coded variant is linearly independent from each of the other one or more symbols in a respective coded variant.

15. A non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more electronic processors of an electronic device including a network interface, the one or more programs including instructions for: performing the method of claim 1 .

16. An electronic device, comprising:

a network interface;

one or more electronic processors; and

a memory storing one or more programs configured to be executed by the one or more electronic processors, the one or more programs including instructions for performing the method of claim 1 .

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 17, 2024
From: RIEDMILLER, JEFFREY; YU, MINGCHAO; CLOUD, JASON MICHAEL
To: DOLBY LABORATORIES LICENSING CORPORATION
Reel/Frame 066147/0299 →
Continuity (2)
Provisional Application 63126265 · Dec 16, 2020
Related Publication 20240056649A1 · Feb 15, 2024
Cited By (1)
US 12,641,320