Method and system for providing time-shifted delivery of live media programs
First Claim
Patent Images
1. A method for delivering media program content to users over a network, said method comprising:
- receiving media program content to be delivered to one or more users;
converting the media program content being received into data packets;
multicasting a plurality of streams of the data packets to those of the users desirous of viewing the media program content, wherein first one of the streams is a live broadcast of the media program content and remaining streams are predetermined time shifted duplicates of said live broadcast;
storing the plurality of streams of the data packets into a buffer storage device;
removing a particular user out of the users receiving said multicasting upon receiving a pause request from the particular user, the pause request including a number of pause attributes;
subsequently receiving a resume request from the particular user;
unicasting, in response to the resume request, one of the streams of the data packets to the particular user from the buffer storage device in accordance with the pause attributes associated therewith;
subsequently receiving a golive request from the particular user;
adding, in response to the golive request, the particular user to the users receiving said live broadcast; and
stopping, in response to the golive request, said unicasting one of the streams of the data packets to the particular user from the buffer storage device.
6 Assignments
0 Petitions
Accused Products
Abstract
Improved approaches for delivering media programs to viewers (e.g., subscribers) are disclosed. The media programs are typically broadcast in accordance with a schedule. The media program can be delivered to viewers through multicast or unicast. According to one aspect, the media programs are buffered (e.g., cached) in a data packet format such that producing unicasts for particular viewers requires less computation and resources such that more concurrent unicasts are able to be effectively supported.
151 Citations
22 Claims
-
1. A method for delivering media program content to users over a network, said method comprising:
-
receiving media program content to be delivered to one or more users; converting the media program content being received into data packets; multicasting a plurality of streams of the data packets to those of the users desirous of viewing the media program content, wherein first one of the streams is a live broadcast of the media program content and remaining streams are predetermined time shifted duplicates of said live broadcast; storing the plurality of streams of the data packets into a buffer storage device; removing a particular user out of the users receiving said multicasting upon receiving a pause request from the particular user, the pause request including a number of pause attributes; subsequently receiving a resume request from the particular user; unicasting, in response to the resume request, one of the streams of the data packets to the particular user from the buffer storage device in accordance with the pause attributes associated therewith; subsequently receiving a golive request from the particular user; adding, in response to the golive request, the particular user to the users receiving said live broadcast; and stopping, in response to the golive request, said unicasting one of the streams of the data packets to the particular user from the buffer storage device. - View Dependent Claims (2, 5, 6, 7)
-
- 3. A method as recited in claim 3, wherein the pause attributes include an IP address of a client machine being used the particular user.
-
8. A method for delivering media program content to subscribers in accordance with subscriber control, said method comprising:
-
receiving media program content to be delivered to one or more subscribers; converting the media program content being received into data packets; multicasting a plurality of streams of the data packets to those of the subscribers desirous of viewing the media program content, wherein first one of the streams is a live broadcast of the media program content and remaining streams are predetermined time shifted duplicates of said live broadcast; storing the plurality of streams of the data packets into a buffer storage device; receiving a pause request from a particular subscriber of the subscribers receiving said multicasting, the pause request including at least pause attributes; removing, in response to the pause request, the particular subscriber of the subscribers receiving said multicasting; subsequently receiving a resume request from the particular subscriber; unicasting, in response to the resume request, one of the streams of the data packets to the particular subscriber from the buffer storage device in accordance with the pause attributes associated therewith; subsequently receiving a golive request from the particular subscriber; adding, in response to the golive request, the particular subscriber to the subscribers receiving said live broadcast; and stopping, in response to the golive request, said unicasting one of the streams of the data packets to the particular user from the buffer storage device. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A media delivery center that couples to a network for delivery of media program contents to users, said media delivery center comprising:
-
a protocol conversion unit that receives a media stream of a media program and converts the media stream into data packets; a network interface that couples to a physical network; a multicast delivery unit, operatively connected to said protocol conversion unit and said network interface, that delivers the data packets for the media program to a plurality of users in a multicasting fashion; a buffer that stores the data packets for the media program; a unicast delivery unit, operatively connected to said buffer and said network interface, that delivers the data packets for the media program from said buffer to individual users in a unicasting fashion; and a media management unit that operatively interacts with said multicast delivery unit and said unicast delivery unit to deliver the data packets by performing operations of; receiving media program content to be delivered to one or more users; converting the media program content being received into data packets; multicasting a plurality of streams of the data packets to those of the users desirous of viewing the media program content, wherein first one of the streams is a live broadcast of the media program content and remaining streams are predetermined time shifted duplicates of said live broadcast; storing the plurality of streams of the data packets into a buffer storage device; receiving a pause request from a particular user of the users receiving said multicasting, the pause request including at least pause attributes; removing, in response to the pause request, the particular user of the users receiving said multicasting; subsequently receiving a resume request from the particular user; unicasting, in response to the resume request, one of the streams of the data packets to the particular user from the buffer storage device in accordance with the pause attributes associated therewith; subsequently receiving a golive request from the particular user; adding, in response to the golive request, the particular user to the users receiving said live broadcast; stopping, in response to the golive request, said unicasting one of the streams of the data packets to the particular user from the buffer storage device; receiving an instant replay request from the particular user receiving said multicasting; removing, in response to the instant replay request, the particular user from the users receiving said multicasting; and unicasting, in response to the instant replay request, one of the streams of the data packets to the particular user from the buffer storage device in accordance with a replay point. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22)
-
Specification