System and method for maintaining constant buffering time in internet streaming media delivery
First Claim
1. A system for buffering streaming media data in a client device, said client device capable of coupling to a plurality of media content servers through a global network of computers, said plurality of media content servers providing said streaming media data through said global network of computers at a plurality of transmission rates, said client device having a buffer for storing said streaming media data, said client device buffering said streaming media data into said buffer at a buffering duration, said client device having an output device for outputting said streaming media data, said system comprising:
- the buffer having a variable low water mark for triggering initial outputting of the streaming media data;
the client device having a constant buffering time;
the client device programmed to perform the following steps;
identifying the transmission rate of the media content server selectively connected to the client device; and
setting the variable low water mark to a level based upon the transmission rate so that the buffering duration is about the constant buffering time.
2 Assignments
0 Petitions
Accused Products
Abstract
A system and method for buffering streaming audio data or other media sources to client devices, where said system maintains a constant buffering time by adjusting the low water mark of the play buffer based on the bit rate of the stream to a level such that the time for the play buffer to fill to the low water mark is constant for all streams.
46 Citations
13 Claims
-
1. A system for buffering streaming media data in a client device, said client device capable of coupling to a plurality of media content servers through a global network of computers, said plurality of media content servers providing said streaming media data through said global network of computers at a plurality of transmission rates, said client device having a buffer for storing said streaming media data, said client device buffering said streaming media data into said buffer at a buffering duration, said client device having an output device for outputting said streaming media data, said system comprising:
-
the buffer having a variable low water mark for triggering initial outputting of the streaming media data;
the client device having a constant buffering time;
the client device programmed to perform the following steps;
identifying the transmission rate of the media content server selectively connected to the client device; and
setting the variable low water mark to a level based upon the transmission rate so that the buffering duration is about the constant buffering time.
-
-
2. A system for buffering streaming media data in a client device, said client device capable of coupling to a plurality of media content servers through a global network of computers, said plurality of media content servers providing said streaming media data through said global network of computers at a plurality of transmission rates, said client device having a buffer for storing said streaming media data, said client device buffering said streaming media data into said buffer at a buffering duration, said client device having an output device for outputting said streaming media data, said system comprising:
-
the buffer having a variable low water mark for triggering initial outputting of the streaming media data;
the client device programmed to perform the following steps;
identifying the transmission rate of the media content server selectively connected to the client device; and
setting the variable low water mark to a level based upon the transmission rate. - View Dependent Claims (3)
-
-
4. A method for buffering streaming media data from a selected media content server of a plurality of media content servers to a buffer residing in a client device, said selected media content server providing said streaming media data at a transmission rate, said client device having an output device for outputting said streaming media data, said method comprising the following steps:
-
providing the buffer with a variable low water mark for triggering initial output of the streaming media data to the output device, the client device buffering said streaming media data into said buffer to the low water mark at a buffering duration;
identifying the transmission rate of the selected media content server; and
setting the variable low water mark to a level based upon the transmission rate. - View Dependent Claims (5)
-
-
6. A method for buffering streaming media data from a selected media content server of a plurality of media content servers to a buffer residing in a client device, said selected media content server providing said streaming media data at a transmission rate, said client device having an output device for outputting said streaming media data, said method comprising the following steps:
-
providing the buffer with a variable low water mark for triggering initial output of the streaming media data to the output device, the client device buffering said streaming media data into said buffer to the low water mark at a buffering duration;
providing a constant buffering time;
identifying the transmission rate of the selected media content server; and
setting the variable low water mark to a level based upon the transmission rate so that the buffering duration is about the constant buffering time.
-
-
7. A system for receiving and playing streaming media data on a client device connected to a global network of computers, wherein a plurality of media servers are coupled to the global network of computers, said plurality of audio servers being capable of transmitting the streaming media data through the global network of computers at a plurality of transmission rates;
- and wherein the client device is capable of communicating with the media servers through the global network of computers, said client device having an output device for outputting the streaming media data, said client device having a buffer for storing the streaming media data, said system comprising;
the client device having memory, audiovisual outputs, and selectively operable streaming media input connections;
said client device programmed to selectively establish connection with media servers among the plurality of media servers; and
also programmed to establish a buffer within the client device for buffering streaming media data from a media server, and further establishing a low water mark within the buffer, said low water mark representing an amount of data which is to be received and stored in memory from the media server prior to initiating output of the streaming media data to an output device, said client device further programmed to vary the low water mark of the buffer depending on the transmission rate of the particular media server to which the client device is connected. - View Dependent Claims (8, 9, 10, 11, 12, 13)
- and wherein the client device is capable of communicating with the media servers through the global network of computers, said client device having an output device for outputting the streaming media data, said client device having a buffer for storing the streaming media data, said system comprising;
Specification