Data streaming through time-varying transport media
First Claim
1. A method of data streaming from an encoder to a decoder through a time-varying connection, comprising:
- employing at least one processor for;
associating an encoding coefficient with said time-varying connection, said encoding coefficient determining a flow rate at an output of said encoder;
defining a performance metric of said time-varying connection as a function of occupancy, during a time window, of a decoder buffer holding data received through said time-varying connection;
defining an acceptance interval of said performance metric having a lower bound and an upper bound;
acquiring a set of performance measurements of said time-varying connection over said time window at a current encoding coefficient;
determining a current value of said metric of said time-varying connection according to said set of measurements;
determining a preferred encoding coefficient according to said current value of said metric; and
multiplying said current encoding coefficient by a factor determined as a function of said lower bound, said upper bound, and said current value of said metric.
6 Assignments
0 Petitions
Accused Products
Abstract
A method of data streaming from an encoder to a decoder through a time-varying connection, is disclosed. The method includes associating an encoding coefficient with said time-varying connection, the encoding coefficient determining a flow rate at an output of said encoder; defining a performance metric of the time-varying connection; defining an acceptance interval of the performance metric having a lower bound and an upper bound; acquiring a set of performance measurements of the time-varying connection over a time window at a current encoding coefficient; determining a current value of the metric of the time-varying connection according to the set of measurements; determining a preferred encoding coefficient according to the current value of the metric; and modifying the current encoding coefficient based on the current value of the metric and the acceptance interval to attain the preferred encoding coefficient. A corresponding streaming server and system for data streaming are also provided.
-
Citations
20 Claims
-
1. A method of data streaming from an encoder to a decoder through a time-varying connection, comprising:
employing at least one processor for; associating an encoding coefficient with said time-varying connection, said encoding coefficient determining a flow rate at an output of said encoder; defining a performance metric of said time-varying connection as a function of occupancy, during a time window, of a decoder buffer holding data received through said time-varying connection; defining an acceptance interval of said performance metric having a lower bound and an upper bound; acquiring a set of performance measurements of said time-varying connection over said time window at a current encoding coefficient; determining a current value of said metric of said time-varying connection according to said set of measurements; determining a preferred encoding coefficient according to said current value of said metric; and multiplying said current encoding coefficient by a factor determined as a function of said lower bound, said upper bound, and said current value of said metric. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
10. A streaming server for data streaming from an encoder to a decoder through a time-varying connection, the streaming server comprising a hardware processor, and a memory device storing computer readable instructions causing said processor to:
-
associate an encoding coefficient with said time-varying connection, said encoding coefficient determining a flow rate at an output of said encoder; define a performance metric of said time-varying connection as a function of occupancy, during a time window, of a decoder buffer holding data received through said time-varying connection; define an acceptance interval of said performance metric having a lower bound and an upper bound; acquire a set of performance measurements of said time-varying connection over said time window at a current encoding coefficient; determine a current value of said metric of said time-varying connection according to said set of measurements; determine a preferred encoding coefficient according to said current value of said metric; and multiply the current encoding coefficient by a factor determined as a function of the lower bound, the upper bound, and the current value of said metric. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A system for data streaming, comprising:
-
a plurality of client devices, each client device having a client processor and a respective decoder; and a streaming server for data streaming from an encoder to a decoder through a time-varying connection, the streaming server comprising a hardware processor, and a memory device having storing computer readable instructions stored thereon, causing said processor to; associate an encoding coefficient with said time-varying connection, said encoding coefficient determining a flow rate at an output of said encoder; define a performance metric of said time-varying connection as a function of occupancy, during a time window, of a decoder buffer holding data received through said time-varying connection; define an acceptance interval of said performance metric having a lower bound and an upper bound; acquire a set of performance measurements of said time-varying connection over said time window at a current encoding coefficient; determine a current value of said metric of said time-varying connection according to said set of measurements; determine a preferred encoding coefficient according to said current value of said metric; and multiply the current encoding coefficient by a factor determined as a function of the lower bound, the upper bound, and the current value of said metric.
-
Specification