Adaptive multicast delivery of media streams
First Claim
1. A method executable by a computer system to adaptively manage the multicast delivery of a live media program to a plurality of client devices, wherein the method comprises:
- encoding the live media program by the computer system in real time to create a number of encoded streams each representing the live media program, wherein each of the encoded streams has different encoding parameters than the other streams of the live media program, and wherein the number of encoded streams is at least two;
receiving feedback about the delivery of each of the encoded streams by the computer system; and
adapting, by the computer system, the number of streams encoded for at least one of the multiple media programs in response to the received feedback so that the encoding and delivery of at least one of the more popular encoded streams is continued while the encoding of at least one of the less popular encoded streams is terminated.
3 Assignments
0 Petitions
Accused Products
Abstract
Various systems, methods and devices adaptively manage the multicast delivery of multiple media programs. Each of the media programs is encoded into multiple media streams, each stream having a different bitrate, frame rate, resolution or other encoding parameter. A computer receives feedback about the delivery of the multiple streams and automatically adapts the number of streams available for at least one of the multiple media programs in response to the received feedback. This allows resources to be applied to those multicast streams having the greatest user demand.
91 Citations
20 Claims
-
1. A method executable by a computer system to adaptively manage the multicast delivery of a live media program to a plurality of client devices, wherein the method comprises:
-
encoding the live media program by the computer system in real time to create a number of encoded streams each representing the live media program, wherein each of the encoded streams has different encoding parameters than the other streams of the live media program, and wherein the number of encoded streams is at least two; receiving feedback about the delivery of each of the encoded streams by the computer system; and adapting, by the computer system, the number of streams encoded for at least one of the multiple media programs in response to the received feedback so that the encoding and delivery of at least one of the more popular encoded streams is continued while the encoding of at least one of the less popular encoded streams is terminated. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A computer system having a processor and a memory, wherein the processor is configured to adaptively manage the multicast delivery of a live media program that is encoded in real time into a plurality of streams, each stream made up of segments having different encoding parameters than the segments of the other streams of the live media program, and wherein the processor is further configured to adaptively manage the multicast delivery of the live media program to a plurality of client devices via a network by:
-
receiving requests from the plurality of client devices via the network, wherein each of the requests identify at least one of the plurality of streams; delivering the segments associated with each of the streams in response to the requests received from the plurality of client devices via the network; monitoring the number of requests received for each of the plurality of streams of the live media program; and adapting a number of the streams of the live media program that are encoded for delivery to the plurality of client devices in response to the monitored number of requests so that encoding and delivery of at least one of the more popular encoded streams of the live media program is continued while encoding and delivery of at least one of the less popular encoded streams of the live media program is terminated. - View Dependent Claims (15, 16, 17)
-
-
18. A data processing system comprising:
-
an encoding system configured to produce a plurality of streams of a live media program in real time as the live media program is received, wherein each of the plurality of encoded streams represents a copy of the same live media program encoded using a different encoding parameter; a multicast delivery system configured to provide multicast delivery of the plurality of encoded streams to each of a plurality of clients, to monitor the multicast delivery of the plurality of streams, and to provide feedback about the monitored delivery of the plurality of media streams; and a resource management system configured to receive the feedback about the monitored delivery of the plurality of media streams and, responsive to the feedback, to adapt a number of the plurality of media streams representing the media program that are encoded by the content delivery system so that delivery of at least one of the more popular encoded streams of the live media program is continued while encoding and delivery of at least one of the less popular encoded streams of the live media program is terminated. - View Dependent Claims (19, 20)
-
Specification