ADAPTIVE HYPERTEXT TRANSFER PROTOCOL ("HTTP") MEDIA STREAMING SYSTEMS AND METHODS
First Claim
1. A method comprising:
- receiving, by a Hypertext Transfer Protocol (“
HTTP”
) media streaming server subsystem from a client device during an adaptive HTTP media streaming session between the HTTP media streaming server subsystem and the client device and in which predefined segments of a media program are progressively downloaded from the HTTP media streaming server subsystem to the client device by way of a network connection, parameter information associated with the adaptive HTTP media streaming session;
selecting, by the HTTP media streaming server subsystem based at least in part on the parameter information received from the client device, a version of a next predefined segment of the media program from a plurality of versions of the next predefined segment of the media program; and
downloading, by the HTTP media streaming server subsystem during the adaptive HTTP media streaming session, the selected version of the next predefined segment of the media program to the client device.
1 Assignment
0 Petitions
Accused Products
Abstract
An exemplary adaptive Hypertext Transfer Protocol (“HTTP”) media streaming system may be configured to stream a media program from an HTTP media streaming server subsystem to a client device during an adaptive HTTP media streaming session in which predefined segments of the media program are progressively downloaded from the HTTP media streaming server subsystem to the client device by way of a network connection. For each next predefined segment of the media program to be downloaded, the server subsystem may dynamically select, based on one or more of the exemplary factors disclosed herein, a version of the next predefined segment of the media program from a plurality of versions of the next predefined segment of the media program and download the selected version of the next predefined segment of the media program to the client device. Corresponding methods and systems are also disclosed.
-
Citations
25 Claims
-
1. A method comprising:
-
receiving, by a Hypertext Transfer Protocol (“
HTTP”
) media streaming server subsystem from a client device during an adaptive HTTP media streaming session between the HTTP media streaming server subsystem and the client device and in which predefined segments of a media program are progressively downloaded from the HTTP media streaming server subsystem to the client device by way of a network connection, parameter information associated with the adaptive HTTP media streaming session;selecting, by the HTTP media streaming server subsystem based at least in part on the parameter information received from the client device, a version of a next predefined segment of the media program from a plurality of versions of the next predefined segment of the media program; and downloading, by the HTTP media streaming server subsystem during the adaptive HTTP media streaming session, the selected version of the next predefined segment of the media program to the client device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A method comprising:
-
predicting, by a Hypertext Transfer Protocol (“
HTTP”
) media streaming server subsystem during an adaptive HTTP media streaming session between the HTTP media streaming server subsystem and a client device and in which predefined segments of a media program are progressively downloaded from the HTTP media streaming server subsystem to the client device by way of a network connection, a transport layer throughput associated with the network connection;selecting, by the HTTP media streaming server subsystem based at least in part on the predicted transport layer throughput associated with the network connection, a version of a next predefined segment of the media program from a plurality of versions of the next predefined segment of the media program; and downloading, by the HTTP media streaming server subsystem during the adaptive HTTP media streaming session, the selected version of the next predefined segment of the media program to the client device. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21, 22, 23)
-
-
24. A method comprising:
-
sending, by a client device during an adaptive Hypertext Transfer Protocol (“
HTTP”
) media streaming session between the client device and an HTTP media streaming server subsystem and in which predefined segments of a media program are progressively downloaded from the HTTP media streaming server subsystem to the client device, parameter information associated with the adaptive HTTP media streaming session to the HTTP media streaming server subsystem for use by the HTTP media streaming server subsystem to select a version of a next predefined segment of the media program to download to the client device;wherein the parameter information indicates an amount of buffer memory between a download position and a playback position of a buffer used by the client device to buffer data representative of the predefined segments of the media program progressively downloaded to the client device during the adaptive HTTP media streaming session.
-
-
25. A system comprising:
-
a Hypertext Transfer Protocol (“
HTTP”
) media streaming server subsystem; anda client device that establishes an adaptive HTTP media streaming session with the HTTP media streaming server subsystem and in which predefined segments of a media program are progressively downloaded from the HTTP media streaming server subsystem to the client device by way of a network connection; wherein, during the HTTP adaptive HTTP media streaming, the session media streaming server subsystem; predicts a transport layer throughput associated with the network connection, receives, from the client device, parameter information associated with the adaptive HTTP media streaming session, selects, based at least in part on the parameter information received from the client device and on the predicted transport layer throughput associated with the network connection, a version of a next predefined segment of the media program from a plurality of versions of the next predefined segment of the media program, and downloads the selected version of the next predefined segment of the media program to the client device.
-
Specification