Data processing: measuring – calibrating – or testing – Testing system – Signal generation or waveform shaping
Reexamination Certificate
2003-06-16
2004-11-02
Wachsman, Hal (Department: 2857)
Data processing: measuring, calibrating, or testing
Testing system
Signal generation or waveform shaping
C702S076000, C702S178000, C702S187000, C709S217000, C709S231000
Reexamination Certificate
active
06813580
ABSTRACT:
FIELD OF THE INVENTION
The present invention is directed to the transmission of data between computers, and, more particularly, to a method of controlling the supply of streaming media sent from a server to a client over the Internet.
BACKGROUND OF THE INVENTION
With the continuing expansion of the Internet the transfer of data between different computers over the Internet is becoming ever more widespread. Computers today exchange data over the Internet using a variety of different types of connections. Connections such as T-1 and T-3 lines, cable modems, and DSL have high data transfer rates, typically on the order of 100-1000 Kbits/sec., and are referred to as high bandwidth or broadband connections. Connections such as telephony modems have lower data transfer rates, typically on the order of 15-56 Kbits/sec., and are characterized as low bandwidth connections. Bandwidth is important because it affects to the amount of data which can be passed between computers over the Internet. The term “data” is used broadly and, by way of example, refers to any type of information that can be transmitted over the Internet, such as numbers, text, images, sounds and computer programs.
FIG. 1
is a schematic view showing a number of client computers C
0
, C
1
, C
2
and C
3
and server computers S
0
, S
1
and S
2
all connected to the Internet. Client C
1
and server S
1
, it should be noted, are joined to the Internet by wireless connections.
Data sent over the Internet may vary in size greatly, depending upon the nature of the data which is sent. One particularly bulky type of data is streaming media data. The term “streaming media” refers to audio, video or audio-video data with or without text that has a chronological component and which is therefore played over time. Streaming media data is typically transferred from a content provider to a user. When this transfer takes place over a network, the content provider uses a server computer having the appropriate server software to respond to requests for data, and the user employs a computer having the appropriate client software to send requests for data and receive and process responses to those requests.
Users typically exchange data over the Internet using Internet browser software. Browsers are capable of displaying a wide variety of different file formats that are commonly sent over the Internet, such as TIFF, JPG, HTML, TXT, WAV and so forth. Examples of browsers include NETSCAPE NAVIGATOR® by Netscape Corporation and INTERNET EXPLORER® by Microsoft Corporation. Since the operation of browser software is generally known, such operation will not be described in detail.
In some instances, a browser may be unable to display the data sent by a content provider's server because that data is in an unsupported file format. In that case the browser may require a supplemental “plug-in” program to display the data. Such plug-in programs can be written as Java applets or ActiveX controls. A wide range of different types of plug-in programs are known.
One type of data that generally cannot be displayed by a browser is streaming media data. When receiving streaming media data a browser will call up a particular type of plug-in program known as a media player to process and display such data. The media player cooperates with the browser and displays the streaming media data as that data accumulates in a buffer in the user's client computer. Typically, the browser program calls up the media player plug-in, which in turn calls the objects that drive the media player, as downloading of the streaming media data from the content provider's server computer to the user's client computer begins.
Examples of media player programs include QUICKTIME® by APPLE COMPUTER, INC.®, REALPLAYER® by REALNETWORKS®, and Windows Media Player by Microsoft Corporation.
Streaming media can be sent over the Internet using UDP (User Datagram Protocol). According to UDP, packets of compressed audiovisual data are sent from the content provider to the user over the Internet without verification that all packets have been received. By avoiding such verification data transfer is speeded. The data packets are stored at the user's computer in a buffer until the buffer fills, at which point the media player program begins playing the media. Data packets continue to be delivered to the buffer as the media plays, hence the name “streaming”. In this way, the media player begins playback before all of the streaming media data is received, and can continue playback until the buffer runs out of data.
Preferably, the content provider's server sends the user streaming media data in a form which is optimal for the bandwidth of the user's Internet connection. If the bandwidth of the user's connection is high, the server can send detailed streaming media data, resulting in a large, lifelike and smooth display. If the bandwidth is low, less data should be sent, resulting in a smaller and lower-quality image.
Included with the streaming media data sent by the content provider's server to the user may be information instructing the user's computer how to configure the media player to display the streaming media data. That is, high resolution streaming media data may be accompanied by an instruction to the user's computer to display the streaming media in a large media player window. Low resolution streaming media data may be accompanied by an instruction to the user's computer to display the streaming media in a small media player window.
For good playback quality the streaming media data should be supplied to the media player at least as quickly as the media player can display that data. If the media player display the streaming media data faster than such data is received, the data buffer will empty, after which jerking, skipping and poor quality playback will occur. This is a particular problem for users having low bandwidth Internet connections; the low bandwidth connections mean users either will receive low-quality displays, or, since their computers may not receive fresh streaming media data fast enough for proper display, may experience jerking and skipping of the program being played. It is therefore very important that the content provider send to the user streaming media data of the appropriate type and at the correct rate. This can be done in a number of ways, for example, by reducing the size of the displayed image, decreasing the image's frame rate (frame rate refers to the number of times per second that the displayed image changes), and decreasing the quality of the accompanying audio playback.
Thus, when sending streaming media data from a content provider's server to a user's client, it is preferable that the server know the bandwidth of the user's Internet connection. This way the content provider can send data to the user at the appropriate rate, and in the appropriate format (i.e., resolutions and size).
Although this problem can to some extent be solved by having the content provider's server send streaming media data with the assumption all users have low bandwidth connections, this would disadvantageously reduce the quality of the playback for those users having high bandwidth connections.
Another solution to this problem is to control the quality of streaming media playback according to the known bandwidth of the user's Internet connection; users having high bandwidth Internet connections would receive higher resolution data than users having low bandwidth Internet connections. To do this, websites distributing streaming media content may wait to send streaming media data until the user has indicated the bandwidth of their Internet connection. This way, streaming media data appropriate for the bandwidth of the user's Internet connection can be sent. One way to accomplish this is to place on the appropriate web page at the content provider's website different hyperlinks corresponding to different possible Internet connection bandwidths. Each hyperlink, when activated (“
Stroock & Stroock & Lavan LLP
Wachsman Hal
Yahoo! Inc.
LandOfFree
Method and system of automatic bandwidth detection does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Method and system of automatic bandwidth detection, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method and system of automatic bandwidth detection will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-3289795