IP Library Granted Patent US 9,049,481
Granted Patent B2
US 9,049,481 · App. 13/115,727 · Granted Jun 2, 2015

Fine-tuning the time for leaving/joining a multicast session during channel changes

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 9,049,481
App. No.
13/115,727
Granted
Jun 2, 2015
Kind
B2
Abstract

In one embodiment, a method that receives at a client device a unicast content stream; receives from a network an indication of a future time corresponding to when to send a join message to acquire a multicast content stream; accesses historical information about transitions between unicast and multicast content streams; and sends a join message for the multicast content stream at a time corresponding to the indicated future time subject to a time offset determined by the client device, the time offset based on the historical information.

Claims (37)

1. A method, comprising:

receiving at a client device a unicast content stream;

receiving from a network an indication of a future time corresponding to when to send a join message to acquire a multicast content stream;

accessing historical information about transitions between unicast and multicast content streams; and

acquiring the multicast content stream at a time corresponding to the indicated future time subject to a time offset determined by the client device, the time offset based on the historical information, the historical information comprising information associated with prior join delays, leave times, peak and non-peak hour performance associated with join and/or leave times, and past stream transition performance, the time offset further based on current computational resources of the client device, congestion in the network, and the availability of information necessary to decode the multicast content stream, and wherein the time offset either subtracts from or adds to a join time signaled via the indication.

2. The method of claim 1 , wherein the unicast content stream comprises content associated with the multicast content stream.

3. The method of claim 1 , wherein acquiring comprises the client device sending a join message to the network according to a group management protocol.

4. The method of claim 1 , wherein the indication corresponds to an average join time.

5. The method of claim 1 , wherein the historical information comprises past join times associated with at least one of: the client device and the multicast content stream.

6. The method of claim 1 , wherein accessing comprises accessing a data structure residing in either memory or a storage device of the client device.

7. A client device, comprising:

a memory comprising executable instructions; and

a processor configured to execute the instructions to:

receive a unicast content stream, the unicast content stream received in two phases comprising a first phase associated with a first bitrate followed by a second phase associated with a second bitrate;

receive from a network an indication of a future time corresponding to when to send a join message to acquire a multicast content stream, the future time coinciding with the first phase, wherein the indication corresponds to an average join time;

determine whether the multicast content stream is sourced local to the client device; and

acquire the multicast content stream at a time coinciding to the second phase subject to a time offset determined by the client device, the time offset based on the historical information, the historical information comprising information associated with prior join delays, leave times, peak and non-peak hour performance associated with join and/or leave times, and past stream transition performance, the time offset further based on current computational resources of the client device, congestion in the network, and the availability of information necessary to decode the multicast content stream responsive to determining that the multicast content stream is sourced local to the client device, otherwise acquire the multicast stream at a time coinciding with the first phase.

8. The client device of claim 7 , wherein the multicast content stream is sourced from a master client device residing at the same customer premise as the client device.

9. The client device of claim 7 , wherein the unicast content stream comprises content associated with the multicast content stream.

10. The client device of claim 7 , wherein the processor is configured to execute the instructions to acquire by sending a join message to the network according to a group management protocol.

11. A non-transitory computer readable storage medium encoded with computer executable instructions, and when executed, operable to cause a processor to:

receive a unicast content stream from a network;

receive an indication of a future time corresponding to when to send a join message to acquire a multicast content stream; and

acquire the multicast content stream at the future time relative to receiving the unicast content stream or at the future time with a deterministic offset relative to receiving the unicast stream, the offset used depending on the time of day, the offset based on historical information associated with prior join delays, leave times, peak and non-peak hour performance associated with join and/or leave times, and past stream transition performance, the offset further based on information comprising current computational resources of the client device, congestion in the network, and the availability of information necessary to decode the multicast content stream.

12. The non-transitory computer readable storage medium of claim 11 , wherein the acquisition is at the future time for non-peak hours of the day and at a sum of a first time and the offset for peak hours of the day.

13. The non-transitory computer readable storage medium of claim 11 , wherein the unicast content stream comprises content associated with the multicast content stream.

14. The non-transitory computer readable storage medium of claim 11 , wherein the acquisition comprises sending a join message to the network according to a group management protocol.

15. A method, comprising:

receiving at a client device a first multicast content stream;

sending a leave request to a network for the first multicast content stream;

accessing historical information about user leave request times;

sending a request for rapid channel change for a second multicast content stream, the timing of sending the request relative to a leave time dependent on the historical information;

receiving a unicast content stream associated with the second multicast content stream; and

receiving from a network an indication of a future time corresponding to when to send a join message to acquire the second multicast content stream subject to a deterministic time offset based on historical information associated with prior join delays, leave times, peak and non-peak hour performance associated with join and/or leave times, and past stream transition performance, the time offset further based on information comprising current computational resources of the client device, congestion in the network, and the availability of information necessary to decode the multicast content stream wherein the time offset either subtracts from or adds to a join time signaled via the indication.

16. The method of claim 15 , further comprising accessing the historical information about transitions between unicast and multicast content streams.

17. The method of claim 15 , further comprising sending a join message for the second multicast content stream at a time corresponding to the indicated future time subject to a time offset determined by the client device, the time offset based on the historical information.

18. The method of claim 15 , further comprising sending a termination message for the unicast content stream at a time corresponding to the indicated future time subject to a time offset determined by the client device, the time offset based on the historical information.

Assignments (4)
CORRECTIVE ASSIGNMENT TO CORRECT THE 26 APPLICATION NUMBERS ERRONEOUSLY RECORDED AGAINST ON THE ATTACHED LIST PREVIOUSLY RECORDED AT REEL: 048513 FRAME: 0297. ASSIGNOR(S) HEREBY CONFIRMS THE CHANGE OF NAME. Recorded Mar 18, 2021
From: NDS LIMITED
To: SYNAMEDIA LIMITED
Reel/Frame 056623/0708 →
CHANGE OF NAME Recorded Mar 6, 2019
From: NDS LIMITED
To: SYNAMEDIA LIMITED
Reel/Frame 048513/0297 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 5, 2018
From: BEAUMARIS NETWORKS LLC; CISCO SYSTEMS INTERNATIONAL S.A.R.L.; CISCO TECHNOLOGY, INC.; CISCO VIDEO TECHNOLOGIES FRANCE
To: NDS LIMITED
Reel/Frame 047420/0600 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 20, 2011
From: BEGEN, ALI C.; VER STEEG, WILLIAM C.; ECKERT, TOERLESS
To: CISCO TECHNOLOGY, INC.
Reel/Frame 026479/0850 →