IP Library Granted Patent US 11,729,450
Granted Patent B2
US 11,729,450 · App. 17/979,127 · Granted Aug 15, 2023

Systems and methods for delivery of content via multicast and unicast

Inventors: Rajendran Pichaimurthy (Karnataka, IN); Madhusudhan Seetharam (Karnataka, IN); Harshith Kumar Gejjegondanahally Sreekanth (Karnataka, IN)
Assignee: Rovi Guides, Inc.
H04N21/26616H04L65/611H04L65/612H04N21/2668H04N21/26208H04N21/6408H04N21/812H04N21/8456H04L67/306H04N21/23424
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,729,450
App. No.
17/979,127
Granted
Aug 15, 2023
Kind
B2
Abstract

The system and methods described aid content delivery by providing requested content using a hybrid delivery of unicast and multicast content. A content delivery system receives, from user equipment, a request for content and identifies multicast sources for the content. The content delivery system determines a recent multicast source from the multicast sources, the recent multicast source having begun more recently relative to the other sources. The content delivery system transmits, to the user equipment, an identity of the recent multicast source and provides a beginning portion of the content to the user equipment via a unicast stream.

Claims (90)

1. A computer-implemented method comprising:

receiving, from user equipment, a request for content;

retrieving data indicating a position in a multicast source of the content corresponding with when the user equipment began buffering the multicast source;

calculating a projected unicast stream length based on a difference in a start time in the content of a unicast stream and the position in the content when the user equipment began buffering the multicast source;

detecting an advertisement period in the unicast stream;

reducing the advertisement period, wherein the advertisement period in the unicast stream is reduced based on the projected unicast stream length; and

providing a beginning portion of the content to the user equipment via the unicast stream.

2. The method of claim 1 , further comprising:

identifying a plurality of multicast sources, wherein the content is accessible via each of the multicast sources;

determining, as the multicast source, a recent multicast source from the plurality of multicast sources, wherein the recent multicast source most recently began delivering the content relative to other multicast sources of the plurality of multicast sources; and

transmitting, to the user equipment, an identity of the recent multicast source.

3. The method of claim 1 , wherein providing the beginning portion of the content to the user equipment via the unicast stream comprises:

transmitting, to the user equipment, the unicast stream;

receiving an indication to end the unicast stream; and

in response to receiving the indication to end the unicast stream, ending the transmission of the unicast stream.

4. The method of claim 1 , wherein providing the beginning portion of the content to the user equipment via the unicast stream comprises:

storing a timestamp indicating the current position of the multicast source in the content corresponding with when the user equipment began buffering the multicast source;

transmitting, to the user equipment, the unicast stream;

determining the unicast stream has reached a timepoint in the content corresponding with the timestamp;

transmitting, in response to determining the unicast stream reached the timepoint in the content corresponding with the timestamp, an instruction to the user equipment to switch from the unicast stream to a buffer of the multicast source; and

ending the transmission of the unicast stream.

5. The method of claim 1 , wherein:

identifying a plurality of multicast sources by:

retrieving an identifier of the content;

transmitting a request to a media guidance data source for identities of the plurality of multicast sources, wherein the request to the media guidance data source comprises the identifier of the content; and

receiving a response from the media guidance data source, the response comprising a plurality of identities of the plurality of multicast sources and respective start times for the plurality of multicast sources; and

determining the multicast source from the plurality of multicast sources by:

comparing the respective start times for the plurality of multicast sources with one another; and

identifying, based on comparing the respective start times for the plurality of multicast sources with one another, one of the plurality of multicast sources, wherein the identified one of the plurality of multicast sources has a latest start time among the plurality of multicast sources that have already begun.

6. The method of claim 1 , further comprising:

retrieving textual information related to advertisement content associated with the advertisement period; and

supplementing the unicast stream with the textual information.

7. The method of claim 6 , further comprising:

identifying a user profile associated with the user equipment; and

determining the advertisement content based on the user profile.

8. The method of claim 1 , wherein:

the advertisement content is associated with a plurality of advertisements; and

reducing the advertisement period comprises removing at least one advertisement of the plurality of advertisements from the advertisement period.

9. The method of claim 1 , wherein:

reducing the advertisement period comprises shortening a length of at least one advertisement associated with the advertisement period.

10. The method of claim 1 , further comprising:

storing, in memory, a single copy of the content comprising:

the beginning portion of the content provided to the user equipment via the unicast stream; and

a remaining portion of the content provided via the multicast source.

11. A system comprising:

memory;

control circuitry configured to:

receive, from user equipment, a request for content;

retrieve data indicating a position in a multicast source of the content corresponding with when the user equipment began buffering the multicast source, wherein the content associated with the multicast source is stored in the memory;

calculate a projected unicast stream length based on a difference in a start time in the content of a unicast stream and the position in the content when the user equipment began buffering the multicast source;

detect an advertisement period in the unicast stream;

reduce the advertisement period, wherein the advertisement period in the unicast stream is reduced based on the projected unicast stream length; and

provide a beginning portion of the content to the user equipment via the unicast stream.

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

identify a plurality of multicast sources, wherein the content is accessible via each of the multicast sources;

determine, as the multicast source, a recent multicast source from the plurality of multicast sources, wherein the recent multicast source most recently began delivering the content relative to other multicast sources of the plurality of multicast sources; and

transmit, to the user equipment, an identity of the recent multicast source.

13. The system of claim 11 , wherein the control circuitry is further configured to provide the beginning portion of the content to the user equipment via the unicast stream by:

transmitting, to the user equipment, the unicast stream;

receiving an indication to end the unicast stream; and

in response to receiving the indication to end the unicast stream, ending the transmission of the unicast stream.

14. The system of claim 11 , wherein the control circuitry is further configured to provide the beginning portion of the content to the user equipment via the unicast stream by:

storing a timestamp indicating the current position of the multicast source in the content corresponding with when the user equipment began buffering the multicast source;

transmitting, to the user equipment, the unicast stream;

determining the unicast stream has reached a timepoint in the content corresponding with the timestamp;

transmitting, in response to determining the unicast stream reached the timepoint in the content corresponding with the timestamp, an instruction to the user equipment to switch from the unicast stream to a buffer of the multicast source; and

ending the transmission of the unicast stream.

15. The system of claim 11 , wherein:

the control circuitry is configured to identify a plurality of multicast sources by:

retrieving an identifier of the content;

transmitting a request to a media guidance data source for identities of the plurality of multicast sources, wherein the request to the media guidance data source comprises the identifier of the content; and

receiving a response from the media guidance data source, the response comprising a plurality of identities of the plurality of multicast sources and respective start times for the plurality of multicast sources; and

the control circuitry is configured to determine the multicast source from the plurality of multicast sources by:

comparing the respective start times for the plurality of multicast sources with one another; and

identifying, based on comparing the respective start times for the plurality of multicast sources with one another, one of the plurality of multicast sources, wherein the identified one of the plurality of multicast sources has a latest start time among the plurality of multicast sources that have already begun.

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

retrieve textual information related to advertisement content associated with the advertisement period; and

supplement the unicast stream with the textual information.

17. The system of claim 16 , wherein the control circuitry is further configured to:

identify a user profile associated with the user equipment; and

determine the advertisement content based on the user profile.

18. The system of claim 11 , wherein:

the advertisement content is associated with a plurality of advertisements; and

the control circuitry is configured to reduce the advertisement period by removing at least one advertisement of the plurality of advertisements from the advertisement period.

19. The system of claim 11 , wherein:

the control circuitry is configured to reduce the advertisement period by shortening a length of at least one advertisement associated with the advertisement period.

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

store, in the memory, a single copy of the content comprising:

the beginning portion of the content provided to the user equipment via the unicast stream; and

a remaining portion of the content provided via the multicast source.

Assignments (3)
CHANGE OF NAME Recorded Oct 3, 2024
From: ROVI GUIDES, INC.
To: ADEIA GUIDES INC.
Reel/Frame 069106/0164 →
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 Nov 2, 2022
From: PICHAIMURTHY, RAJENDRAN; SEETHARAM, MADHUSUDHAN; SREEKANTH, HARSHITH KUMAR GEJJEGONDANAHALLY
To: ROVI GUIDES, INC.
Reel/Frame 061628/0446 →
Continuity (3)
Continuation 17313355 · May 6, 2021
Continuation 16145390 · Sep 28, 2018
Related Publication 20230139636A1 · May 4, 2023
Cited By (1)
US 12,684,188