Systems and methods for estimating available bandwidth and performing initial stream selection when streaming content
First Claim
1. A method of selecting an initial stream of encoded media from a plurality of streams of encoded media that are encoded at different maximum bitrates rates, the method comprising:
- measuring network bandwidth using a playback device;
determining, prior to commencing streaming of encoded media, an initial network bandwidth estimate using the network bandwidth measurements, wherein the initial network bandwidth estimate is determined by filtering the network bandwidth measurements based upon at least one piece of information associated with the network bandwidth measurements selected from the group consisting of time of day, day of week, content distribution network, server, and maximum bitrate;
selecting an initial stream from said plurality of streams of encoded media that are encoded at different maximum bitrates rates using the playback device for commencing streaming of encoded media based upon the maximum bitrates of the plurality of streams and the initial network bandwidth estimate, where the initial stream is selected by initially allocating available bandwidth to streams which have no alternative and allocating the remaining bandwidth to the selection from the plurality of streams of encoded media that are encoded at different maximum bitrates; and
commencing streaming of encoded media by requesting portions of the encoded media from the streams which have no alternative and the selected initial stream using the playback device.
5 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods for determining available bandwidth and performing initial stream selection when commencing adaptive bitrate streaming using Hypertext Transfer Protocol (HTTP) in accordance with embodiments of the invention are disclosed. One embodiment of the invention includes measuring network bandwidth using a playback device, determining an initial network bandwidth estimate using the network bandwidth measurements, selecting an initial stream from said plurality of streams of encoded media that are encoded at different maximum bitrates rates using the playback device based upon the maximum bitrates of the plurality of streams and the initial bandwidth estimate; and commencing streaming of encoded media by requesting portions of the encoded media from the initial streams using the playback device.
-
Citations
38 Claims
-
1. A method of selecting an initial stream of encoded media from a plurality of streams of encoded media that are encoded at different maximum bitrates rates, the method comprising:
-
measuring network bandwidth using a playback device; determining, prior to commencing streaming of encoded media, an initial network bandwidth estimate using the network bandwidth measurements, wherein the initial network bandwidth estimate is determined by filtering the network bandwidth measurements based upon at least one piece of information associated with the network bandwidth measurements selected from the group consisting of time of day, day of week, content distribution network, server, and maximum bitrate; selecting an initial stream from said plurality of streams of encoded media that are encoded at different maximum bitrates rates using the playback device for commencing streaming of encoded media based upon the maximum bitrates of the plurality of streams and the initial network bandwidth estimate, where the initial stream is selected by initially allocating available bandwidth to streams which have no alternative and allocating the remaining bandwidth to the selection from the plurality of streams of encoded media that are encoded at different maximum bitrates; and commencing streaming of encoded media by requesting portions of the encoded media from the streams which have no alternative and the selected initial stream using the playback device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 32, 33, 34, 35, 36)
-
-
15. A playback device configured to select an initial stream from a plurality of streams of encoded media that are encoded at different maximum bitrates, the playback device comprising:
-
a processor configured, via a client application, to request portions of files from a remote server; wherein the client application further configures the processor to; measure network bandwidth using a playback device; obtain, prior to commencing streaming of encoded media, an initial network bandwidth estimate using the network bandwidth measurements, wherein the initial network bandwidth estimate is determined by filtering the network bandwidth measurements based upon at least one piece of information associated with the network bandwidth measurements selected from the group consisting of time of day, day of week, content distribution network, server and maximum bitrate; select an initial stream from said plurality of streams of encoded media that are encoded at different maximum bitrates rates for commencing streaming of encoded media based upon the maximum bitrates of the plurality of streams and the initial network bandwidth estimate, where the initial stream is selected by initially allocating available bandwidth to streams which have no alternative and allocating the remaining bandwidth to the selection from the plurality of streams of encoded media that are encoded at different maximum bitrates; and commence streaming of encoded media by requesting portions of the encoded media from the streams which have no alternative and the selected initial stream using the playback device. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 37)
-
-
29. A non-transitory machine readable medium containing processor instructions, where execution of the instructions by a processor causes the processor to perform a process comprising:
-
measuring network bandwidth using a playback device; obtaining, prior to commencing streaming of encoded media, an initial network bandwidth estimate using the network bandwidth measurements, wherein the initial network bandwidth estimate is determined by filtering the network bandwidth measurements based upon at least one piece of information associated with the network bandwidth measurements selected from the group consisting of time of day, day of week, content distribution network, server, and maximum bitrate; selecting an initial stream from said plurality of streams of encoded media that are encoded at different maximum bitrates rates for commencing streaming of encoded media based upon the maximum bitrates of the plurality of streams and the initial network bandwidth estimate, where the initial stream is selected by initially allocating available bandwidth to streams which have no alternative and allocating the remaining bandwidth to the selection from the plurality of streams of encoded media that are encoded at different maximum bitrates; and commencing streaming of encoded media by requesting portions of the encoded media from the streams which have no alternative and the selected initial stream using the playback device. - View Dependent Claims (30, 31, 38)
-
Specification