Patent ID: 8135852

Claim:
A data streaming system comprising: a server arranged to stream one of a plurality of encoded data streams to a client, each of the plurality of data streams being a representation of a common data source encoded at a different resolution from the other(s) of the plurality of data streams; the server comprising a transmitter and a first buffer, the transmitter being arranged to transmit data packets of the encoded data stream to the client via the first buffer and to remove a data packet from the first buffer upon acknowledgement by the client of receipt of the packet, wherein the transmitter includes means arranged to estimate the playing duration represented by the contents of data buffered at the client and switch to transmit another of the plurality of data streams in the event that the estimated playing duration meets predetermined criteria; wherein the transmitter monitors the content of the first buffer and the estimate of playing duration is determined in dependence on the contents of the first buffer and on an estimation, made by the transmitter, of the number of packets decoded by the client.