IP Library Granted Patent US 11,910,032
Granted Patent B1
US 11,910,032 · App. 17/879,211 · Granted Feb 20, 2024

Systems and methods for distributed media streaming

Inventors: Antti Heikkinen (Oulu, FI); Mikko Uitto (Oulu, FI)
Assignee: ROVI GUIDES, INC.
H04N21/23106H04N21/2187H04N21/23439
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 11,910,032
App. No.
17/879,211
Granted
Feb 20, 2024
Kind
B1
Abstract

Systems and methods are described for identifying a first network (associated with an edge server comprising a cache) and a second network available to a user equipment device. A request to access at least a portion of a media asset may be received from the user equipment device. In response to determining that the at least a portion of the media asset is not stored in the cache, a determination may be made whether the edge server, via the first network, or whether the user equipment device, via the second network, should obtain such at least a portion of the media asset. Such at least a portion of the media asset may be obtained using the selected server via the first network or using the selected user equipment device via the second network, caused to be stored at the cache, and generated for display at the user equipment device.

Claims (79)

1. A computer-implemented method comprising:

identifying a first network and a second network available to a user equipment device, wherein the user equipment device is configured to communicate with a content server via at least one of the first network or via the second network, and wherein the first network is associated with an edge server comprising a cache;

receiving, from the user equipment device, a request to access at least a portion of a media asset;

determining whether the at least a portion of the media asset is stored in the cache;

in response to determining that the at least a portion of the media asset is not stored in the cache:

determining whether the edge server should be selected to obtain the at least a portion of the media asset via the first network from the content server or the user equipment device should be selected to obtain the at least a portion of the media asset via the second network from the content server;

in response to determining that the user equipment device should be selected to obtain the at least a portion of the media asset via the second network from the content server, causing the at least a portion of the media asset to be obtained using the selected user equipment device via the second network;

causing the at least a portion of the media asset obtained using the selected user equipment device via the second network to be stored at the cache; and

causing the at least a portion of the media asset obtained using the selected user equipment device via the second network to be generated for display at the user equipment device.

2. The method of claim 1 , wherein the user equipment device is a first user equipment device, the method further comprising:

receiving, from a second user equipment device, a request to access the at least a portion of the media asset;

wherein determining whether the edge server should be selected to obtain the at least a portion of the media asset via the first network or the first user equipment device should be selected to obtain the at least a portion of the media asset via the second network further comprises determining whether the edge server should be selected to obtain the at least a portion of the media asset via the first network or the first user equipment device should be selected to obtain the at least a portion of the media asset via the second network or the second user equipment device should be selected to obtain the at least a portion of the media asset via the second network.

3. The method of claim 2 , wherein:

the first network is a localized private network,

the second network is a cellular network;

each of the first user equipment device and the second user equipment device is located in a physical environment associated with the localized private network; and

the at least a portion of the media asset obtained using the selected user equipment device via the second network is provided to the edge server by the selected first user equipment device via the localized private network.

4. The method of claim 3 , wherein:

causing the at least a portion of the media asset obtained using the selected user equipment device via the second network to be stored to the cache is performed based at least in part on determining that the at least a portion of the media asset is likely to be requested by another user equipment device in the physical environment associated with the localized private network.

5. The method of claim 3 , wherein:

causing the at least a portion of the media asset obtained using the selected user equipment device via the second network to be stored to the cache is performed based at least in part on determining that one or more portions of the media asset are being provided to a plurality of user equipment devices in the physical environment associated with the localized private network.

6. The method of claim 1 , wherein:

the media asset is a live broadcast; and

causing the at least a portion of the media asset obtained using the selected user equipment device via the second network to be stored to the cache is performed based at least in part on determining that the user equipment device is likely to request that a trick-play operation be performed on the at least a portion of the media asset.

7. The method of claim 1 , wherein the at least a portion of a media asset is a first portion of the media asset, the method further comprising:

receiving, from the user equipment device, a request to access a second portion of a media asset;

in response to determining that the second portion of the media asset is not stored in the cache:

determining whether the edge server should be selected to obtain the second portion of the media asset via the first network or the user equipment device should be selected to obtain the second portion of the media asset via the second network; and

in response to determining that the edge server should be selected to obtain the second portion of the media asset via the first network from a content server, causing the second portion of the media asset to be obtained using the selected edge server via the first network.

8. The method of claim 1 , further comprising:

causing the user equipment device to provide the at least a portion of the media asset to the edge server via the first network.

9. The method of claim 1 , wherein:

determining whether the edge server should be selected to obtain the at least a portion of the media asset via the first network or whether the user equipment device should be selected to obtain the at least a portion of the media asset via the second network comprises:

determining network characteristics associated with the first network;

determining network characteristics associated with the second network; and

selecting the user equipment device to obtain the at least a portion of the media asset via the second network based at least in part on the determined network characteristics associated with the first network and the determined network characteristics associated with the second network.

10. The method of claim 1 , wherein:

identifying the second network available to the user equipment device comprises receiving, at the edge server, an indication from the user equipment device specifying the second network and indicating a portion of the second network allocated for use in association with the edge server.

11. A computer-implemented system comprising:

an edge server comprising a cache; and

control circuitry configured to:

identify a first network and a second network available to a user equipment device, wherein the user equipment device is configured to communicate with a content server via at least one of the first network or via the second network, and wherein the first network is associated with the edge server comprising the cache;

receive, from the user equipment device, a request to access at least a portion of a media asset;

determine whether the at least a portion of the media asset is stored in the cache;

in response to determining that the at least a portion of the media asset is not stored in the cache:

determine whether the edge server should be selected to obtain the at least a portion of the media asset via the first network from the content server or the user equipment device should be selected to obtain the at least a portion of the media asset via the second network from the content server;

in response to determining that the user equipment device should be selected to obtain the at least a portion of the media asset via the second network from the content server, cause the at least a portion of the media asset to be obtained using the selected user equipment device via the second network;

cause the at least a portion of the media asset obtained using the selected user equipment device via the second network to be stored at the cache; and

cause the obtained at least a portion of the media asset to be generated for display at the user equipment device.

12. The system of claim 11 , wherein the user equipment device is a first user equipment device, and the control circuitry is further configured to:

receive, from a second user equipment device, a request to access the at least a portion of the media asset;

determine whether the edge server should be selected to obtain the at least a portion of the media asset via the first network or the first user equipment device should be selected to obtain the at least a portion of the media asset via the second network by further determining whether the edge server should be selected to obtain the at least a portion of the media asset via the first network or the first user equipment device should be selected to obtain the at least a portion of the media asset via the second network or the second user equipment device should be selected to obtain the at least a portion of the media asset via the second network.

13. The system of claim 12 , wherein:

the first network is a localized private network,

the second network is a cellular network;

each of the first user equipment device and the second user equipment device is located in a physical environment associated with the localized private network; and

the control circuitry is further configured to:

cause the at least a portion of the media asset obtained using the selected user equipment device via the second network to be provided to the edge server by the selected first user equipment device or by the selected second user equipment device via the localized private network.

14. The system of claim 13 , wherein:

the control circuitry is configured to cause the at least a portion of the media asset obtained using the selected user equipment device via the second network to be stored at the cache by determining that the at least a portion of the media asset is likely to be requested by another user equipment device in the physical environment associated with the localized private network.

15. The system of claim 13 , wherein:

the control circuitry is configured to cause the at least a portion of the media asset obtained using the selected user equipment device via the second network to be stored at the cache by determining that one or more portions of the media asset are being provided to a plurality of user equipment devices in the physical environment associated with the localized private network.

16. The system of claim 11 , wherein:

the media asset is a live broadcast; and

the control circuitry is configured to cause the at least a portion of the media asset obtained using the selected user equipment device via the second network to be stored at the cache by determining that the user equipment device is likely to request that a trick-play operation be performed on the at least a portion of the media asset.

17. The system of claim 11 , wherein the at least a portion of a media asset is a first portion of the media asset, and the control circuitry is further configured to:

receive, from the user equipment device, a request to access a second portion of a media asset;

in response to determining that the second portion of the media asset is not stored in the cache:

determine whether the edge server should be selected to obtain the second portion of the media asset via the first network or the user equipment device should be selected to obtain the second portion of the media asset via the second network; and

in response to determining that the edge server should be selected to obtain the second portion of the media asset via the first network from a content server, cause the second portion of the media asset to be obtained using the selected edge server via the first network.

18. The system of claim 11 , wherein the control circuitry is further configured to:

cause the user equipment device to provide the obtained at least a portion of the media asset to the edge server via the first network.

19. The system of claim 11 , wherein the control circuitry is further configured to:

determine whether the edge server should be selected to obtain the at least a portion of the media asset via the first network or whether the user equipment device should be selected to obtain the at least a portion of the media asset via the second network by:

determining network characteristics associated with the first network;

determining network characteristics associated with the second network; and

selecting user equipment device to obtain the at least a portion of the media asset via the second network, based at least in part on the determined network characteristics associated with the first network and the determined network characteristics associated with the second network.

20. The system of claim 11 , wherein the control circuitry is further configured to:

identify the second network available to the user equipment device by receiving, at the edge server, an indication from the user equipment device specifying the second network and indicating a portion of the second network allocated for use in association with the edge server.

Assignments (3)
CHANGE OF NAME Recorded Oct 4, 2024
From: ROVI GUIDES, INC.
To: ADEIA GUIDES INC.
Reel/Frame 069113/0413 →
SECURITY INTEREST Recorded May 3, 2023
From: ADEIA GUIDES INC.; ADEIA IMAGING LLC; ADEIA MEDIA HOLDINGS LLC; ADEIA MEDIA SOLUTIONS INC.; ADEIA SEMICONDUCTOR ADVANCED TECHNOLOGIES INC.; ADEIA SEMICONDUCTOR BONDING TECHNOLOGIES INC.; ADEIA SEMICONDUCTOR INC.; ADEIA SEMICONDUCTOR SOLUTIONS LLC; ADEIA SEMICONDUCTOR TECHNOLOGIES LLC; ADEIA SOLUTIONS LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 063529/0272 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 9, 2022
From: HEIKKINEN, ANTTI; UITTO, MIKKO
To: ROVI GUIDES, INC.
Reel/Frame 060753/0263 →