WO1999052238A2 - Method and apparatus for gap coverage in streaming protocols - Google Patents
Method and apparatus for gap coverage in streaming protocols Download PDFInfo
- Publication number
- WO1999052238A2 WO1999052238A2 PCT/US1999/004928 US9904928W WO9952238A2 WO 1999052238 A2 WO1999052238 A2 WO 1999052238A2 US 9904928 W US9904928 W US 9904928W WO 9952238 A2 WO9952238 A2 WO 9952238A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- client
- appropriate gap
- buffer
- requested
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/80—Responding to QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/612—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/70—Media network packetisation
Definitions
- the present invention is directed to a communication protocol, and more particularly to a communication device and method capable of providing data content to a client during gaps in presenting data streaming protocols.
- the data streaming protocol initially used on the internet's World Wide Web (WWW) for communicating audio, video, or similar information provided for a server to pass a file containing the data to the client. After receiving the entire file, the client would play or display the file. This mechanism was very slow, often involving many minutes of delay until the file was received by the client. Once the files were received, however, they could be played in real time with few pauses or gaps. "Data streaming” was created to address this excessive delay experienced, particularly when receiving multimedia content. Basically, data streaming works by dividing the real time data into packets, which are sent from the server to the client.
- the client buffers a number of the packets, (the number based on expected delays in the delivery of subsequent packets) and then starts to play the data before it has received the entire data set (video, audio or like file). While the data is playing or being presented, the remainder of the data is received. This mechanism drastically reduces the initial delay experienced by the user of the system.
- This streaming mechanism does however create a new problem. Namely, that the subsequent packets may not arrive in a timely fashion as expected, resulting in gaps in the resulting presentation to the user. In other words, the client did not buffer enough data prior to beginning the presentation causing the client to run out of data to present to the user because the client failed to receive the rest of the data soon enough.
- Existing streaming mechanisms simply stop and leave the user waiting until there is enough data to proceed with the presentation.
- Existing data streaming mechanisms such as Real-Time Streaming Protocol (RTSP) used by RealAudio and the Real-Time Transport Protocol (RTP) IETF standard which it sits atop work roughly in the same fashion as just described. Thus, a need exists to make effective use of these gaps in the delivery of streaming data.
- RTSP Real-Time Streaming Protocol
- RTP Real-Time Transport Protocol
- FIG. 1 is a block diagram of a system providing gap coverage for internet streaming protocols in accordance with the present invention.
- FIG. 2 is a flow chart illustrating a method for providing gap coverage at a data streaming server in accordance with the present invention.
- FIG. 3 is a flow chart illustrating a method for receiving gap coverage data at a data streaming client receiver in accordance with the present invention.
- FIG. 4 is a flow chart illustrating a method for presenting gap coverage data at a data streaming client receiver unit in accordance with the present invention.
- the data streaming protocol used to communicate the real-time data 12 (such as a video source) from the server to the client is enhanced to identify and carry a new type of content.
- This new content is the "coverage content" 14 or gap data which is likely an advertisement of some sort.
- the details of the enhancements required would depend upon the streaming protocol to be used and the exact nature of the coverage content.
- the system 10 comprises a data streaming server 16 that has a memory 15 for storing requested data requested by a client and for storing gap data and a processor 17.
- the processor 17 is programmed to receive a request from a client 20 to stream requested data to the client.
- the processor 17 would also be programmed to set up and initiate a streaming protocol.
- the processor 17 may also select appropriate gap data that can be streamed at a predetermined time during the data streaming protocol. The predetermined time is preferably at the beginning of the data stream.
- the processor 17 formats the appropriate gap data. Once this is done, the appropriate gap data can be sent during the predetermined time.
- the processor 17 would preferably be programmed to send and complete the requested data to the client after the gap data has been sent. The transmission of data between the server
- a data network 18 such as the internet.
- the server would insert the identified coverage content (i.e., ads), possibly several instances thereof, into the data stream at various points.
- the very beginning of the stream would be a good place, as well as after significant amounts of data had been streamed.
- the nature of the coverage content could be simple pure text messages, still graphic images, audio files, short video clips or the like.
- the type of coverage would be selected to be compatible with the data being streamed. For example, video clips would not be suitable coverage content for streamed audio, but they might be for streamed full length movies.
- a data streaming client 20 preferably comprises a memory 24 for storing requested data requested by the data streaming client and a memory 28 for storing gap data.
- the client would replace the normal streamed output with an appropriate representation of the coverage content (extracted from the client's local coverage content buffer), until such time as the streaming buffers refilled to the point where reliable normal streaming delivery could be continued.
- the client's local coverage content buffer (the second buffer 28) can be filled with appropriate gap data that may come from the server or alternatively locally provided at the client when insufficient or no gap data is streamed from the server to the client.
- the coverage content might consist of one or several graphics which were ads for some product (other movies perhaps).
- the processor 26 can be programmed to convert the contents of the second buffer to a format compatible with the format of the contents of the first buffer. If the streaming buffers became very low, due to delays in the delivery of the streamed data, the client would stop presenting the movie and present the coverage content graphics (in appropriate video format) to the user. The streaming data would (hopefully) continue to arrive and begin to refill the local streaming buffers. When these buffers had refilled to the point where it was appropriate to continue the movie, the client would replace the coverage content with the movie again and go back to normal data streaming processing.
- a client capable of the gap coverage mechanism in the present invention could include canned coverage content such as an ad for the client if no suitable coverage content was received from the server. Typically, this canned coverage content would be generated locally at the client.
- the data stream may include different coverage content items which could be used by the client based upon various algorithms including last received, cycle through, or some other mechanism coordinated with the server.
- the data streaming protocol could include "markers" of good locations where to include ads if their buffers were low, which would allow the ad insertion to happen at possibly more acceptable points in the program (an intermission in a movie for instance).
- Advertisements could be presented during the initial delay while waiting for a client's local streaming buffer to fill to the point where presentation of the real signal can start.
- Another feature within the scope of the present invention would allow coverage content material represented as text to be converted to either or both audio and video signals by the client as needed.
- coverage content or gap data could be filtered by the client based on location, user preferences, remaining battery life, or other considerations.
- the processor at the client can be programmed to filter the contents of the second buffer based on criteria such as location of the client, user preferences, and remaining battery life (particularly if the client was a portable device).
- FIG. 2 illustrates a method 50 at a server for providing gap coverage in data streaming protocols.
- the method 50 preferably begins at step 52 where the server receives a request from a client to stream requested data to the client.
- the server at step 54 sets up and initiates a data stream. Setting up and initiating the streaming the data could include providing markers where the appropriate gap data can be placed within the data stream.
- the server selects appropriate gap data that can be streamed at predetermined times during the data stream.
- the appropriate gap data could include canned coverage data that is programmed to be sent with particular kinds of data requests.
- the server formats and sends the appropriate gap data at step 58 during the predetermined times which preferably is at the beginning of the data stream or after large amounts of data had already been sent.
- the server continues to send and complete the requested data to the client at step 60.
- FIGs. 3 and 4 illustrate a method 70 for receiving and a method for presenting 90 appropriate gap data in data streaming protocols at a client.
- the method 70 comprises the step of requesting from a server to stream requested data to the client at step 72 and then setting up and initiating the data stream as would typically be done for normal streaming mechanisms at step 74.
- the client at step 76 would then receive the requested data and appropriate gap data from the server.
- decision block 78 the client would need to distinguish between the requested data and the appropriate gap data. If the data received at decision block 78 was the requested data, then the requested data would be stored at a first buffer at step 80. If the data received at decision block 78 was the appropriate gap data, then the appropriate gap data would be stored at a second buffer at step 82.
- the method 70 would continue to look for more data at step 84 until no more data was received.
- a method 90 for presenting the appropriate gap data is shown.
- the client waits for a request for streaming data to be sent to a server.
- a server would receive the request and stream data back to the client as previously explained above.
- the client would wait for the first buffer or local streaming buffer to fill up to the point where there is enough data to begin a presentation to the user of the client.
- the method would continue by removing a block of data from the local streaming buffer and format it for presentation to the user at step 96.
- decision block 98 a determination is made whether the presentation is completed. If completed, then the process stops at step 106.
- step 102 by obtaining the coverage content (appropriate gap data) from the local coverage content buffer (the second buffer) and formatting and presenting such coverage content. It should be understood that formatting the coverage content may include converting the contents of the second buffer to a format compatible with the format of the contents of the first buffer.
- decision block 104 an inquiry is made at decision block 104 to determine whether contents of the first buffer was above or below the cutoff level. If sufficient data is found in the local streaming buffer, then the method returns to step 96. If insufficient data is found in the local streaming buffer, then the method obtains further coverage content at step 102.
Abstract
Description
Claims
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
AU28985/99A AU2898599A (en) | 1998-04-02 | 1999-03-05 | Method and apparatus for gap coverage in streaming protocols |
EP99909881A EP1057116A4 (en) | 1998-04-02 | 1999-03-05 | Method and apparatus for gap coverage in streaming protocols |
CA002291269A CA2291269A1 (en) | 1998-04-02 | 1999-03-05 | Method and apparatus for gap coverage in streaming protocols |
JP55046499A JP2002510419A (en) | 1998-04-02 | 1999-03-05 | Method and apparatus for gap coverage in a streaming protocol |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US5385198A | 1998-04-02 | 1998-04-02 | |
US09/053,851 | 1998-04-02 |
Publications (2)
Publication Number | Publication Date |
---|---|
WO1999052238A2 true WO1999052238A2 (en) | 1999-10-14 |
WO1999052238A3 WO1999052238A3 (en) | 2000-10-05 |
Family
ID=21986977
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US1999/004928 WO1999052238A2 (en) | 1998-04-02 | 1999-03-05 | Method and apparatus for gap coverage in streaming protocols |
Country Status (5)
Country | Link |
---|---|
EP (1) | EP1057116A4 (en) |
JP (1) | JP2002510419A (en) |
AU (1) | AU2898599A (en) |
CA (1) | CA2291269A1 (en) |
WO (1) | WO1999052238A2 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001306437A (en) * | 2000-03-09 | 2001-11-02 | Ateon Networks | Adaptive medium streaming server for reproducing live and streaming medium contents on demand through browser of web client without using additional software or plug-in |
JP2005537707A (en) * | 2002-08-17 | 2005-12-08 | ディズニー エンタープライゼス インコーポレイテッド | A system for sending and dynamic presentation of multimedia assets on networks with limited line capacity |
US10346878B1 (en) | 2000-11-03 | 2019-07-09 | At&T Intellectual Property Ii, L.P. | System and method of marketing using a multi-media communication system |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1519529B1 (en) * | 2003-09-25 | 2012-06-27 | RealNetworks, Inc. | Content output device providing personalized media content |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5737619A (en) * | 1995-10-19 | 1998-04-07 | Judson; David Hugh | World wide web browsing with content delivery over an idle connection and interstitial content display |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5913040A (en) * | 1995-08-22 | 1999-06-15 | Backweb Ltd. | Method and apparatus for transmitting and displaying information between a remote network and a local computer |
US5745642A (en) * | 1996-03-15 | 1998-04-28 | Broderbund Software, Inc. | System to add selectivley persistent resource data to unused bandwidth of digital movie |
-
1999
- 1999-03-05 CA CA002291269A patent/CA2291269A1/en not_active Abandoned
- 1999-03-05 AU AU28985/99A patent/AU2898599A/en not_active Abandoned
- 1999-03-05 JP JP55046499A patent/JP2002510419A/en active Pending
- 1999-03-05 EP EP99909881A patent/EP1057116A4/en not_active Withdrawn
- 1999-03-05 WO PCT/US1999/004928 patent/WO1999052238A2/en not_active Application Discontinuation
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5737619A (en) * | 1995-10-19 | 1998-04-07 | Judson; David Hugh | World wide web browsing with content delivery over an idle connection and interstitial content display |
Non-Patent Citations (1)
Title |
---|
See also references of EP1057116A2 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001306437A (en) * | 2000-03-09 | 2001-11-02 | Ateon Networks | Adaptive medium streaming server for reproducing live and streaming medium contents on demand through browser of web client without using additional software or plug-in |
US10346878B1 (en) | 2000-11-03 | 2019-07-09 | At&T Intellectual Property Ii, L.P. | System and method of marketing using a multi-media communication system |
JP2005537707A (en) * | 2002-08-17 | 2005-12-08 | ディズニー エンタープライゼス インコーポレイテッド | A system for sending and dynamic presentation of multimedia assets on networks with limited line capacity |
Also Published As
Publication number | Publication date |
---|---|
EP1057116A4 (en) | 2003-08-06 |
WO1999052238A3 (en) | 2000-10-05 |
EP1057116A2 (en) | 2000-12-06 |
CA2291269A1 (en) | 1999-10-14 |
AU2898599A (en) | 1999-10-25 |
JP2002510419A (en) | 2002-04-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6349286B2 (en) | System and method for automatic synchronization for multimedia presentations | |
JP4028469B2 (en) | Multimedia broadcast transmitting / receiving apparatus and method | |
JP5559544B2 (en) | Video distribution system including progressive playback | |
US7941554B2 (en) | Sparse caching for streaming media | |
US9860582B2 (en) | Method and apparatus for controlling time-scale modification during multi-media broadcasts | |
US7516235B2 (en) | Application server and streaming server streaming multimedia file in a client specified format | |
US6415326B1 (en) | Timeline correlation between multiple timeline-altered media streams | |
CN1248121C (en) | System and method for one-touch E-mail reply | |
JP4813001B2 (en) | Media resynchronization during streaming | |
CN104363483B (en) | A kind of advertisement sending method and device based on video pictures | |
US20020040403A1 (en) | Method and apparatus for providing continuous playback or distribution of audio and audio-visual streamed multimedia received over networks having non-deterministic delays | |
AU2001251215B2 (en) | Insertion of asynchronous data into a synchronous stream | |
CN102238139A (en) | Method, device and system for inserting advertisement | |
CN109600437A (en) | A kind of method for down loading and cache server of streaming media resource | |
EP1213926A3 (en) | Data reproduction method, data receiving terminal and data receiving method | |
WO2000057645A1 (en) | Selectively caching video to improve on-demand response time | |
JPH09185570A (en) | Method and system for acquiring and reproducing multimedia data | |
EP1193965B1 (en) | Apparatus and method for picture transmission and display | |
WO1999052238A2 (en) | Method and apparatus for gap coverage in streaming protocols | |
WO2001086456A1 (en) | Scheduling and delivering low bandwidth media upon detecting high bandwidth media | |
EP2085894A1 (en) | Method, system and server for generating data with which a search for information complementary to the content can be made | |
JP3489448B2 (en) | Multimedia presentation method and system, and storage medium storing multimedia presentation program | |
EP1307048A4 (en) | Digital video information apparatus | |
MXPA99011113A (en) | Method and apparatus for gap coverage in streaming protocols | |
KR20020073626A (en) | System and method for inserting Real-time rich media advertisement into multimedia content |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 99800456.1 Country of ref document: CN |
|
AK | Designated states |
Kind code of ref document: A2 Designated state(s): AU CA CN JP MX |
|
AL | Designated countries for regional patents |
Kind code of ref document: A2 Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE |
|
ENP | Entry into the national phase |
Ref document number: 2291269 Country of ref document: CA Ref document number: 2291269 Country of ref document: CA Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 28985/99 Country of ref document: AU |
|
WWE | Wipo information: entry into national phase |
Ref document number: PA/a/1999/011113 Country of ref document: MX Ref document number: 1999909881 Country of ref document: EP |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
AK | Designated states |
Kind code of ref document: A3 Designated state(s): AU CA CN JP MX |
|
AL | Designated countries for regional patents |
Kind code of ref document: A3 Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE |
|
WWP | Wipo information: published in national office |
Ref document number: 1999909881 Country of ref document: EP |
|
WWW | Wipo information: withdrawn in national office |
Ref document number: 1999909881 Country of ref document: EP |