[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

WO2002045372A2 - Transmitting and receiving real-time data - Google Patents

Transmitting and receiving real-time data Download PDF

Info

Publication number
WO2002045372A2
WO2002045372A2 PCT/GB2001/005246 GB0105246W WO0245372A2 WO 2002045372 A2 WO2002045372 A2 WO 2002045372A2 GB 0105246 W GB0105246 W GB 0105246W WO 0245372 A2 WO0245372 A2 WO 0245372A2
Authority
WO
WIPO (PCT)
Prior art keywords
data
time
buffer
rate
client
Prior art date
Application number
PCT/GB2001/005246
Other languages
French (fr)
Other versions
WO2002045372A3 (en
Inventor
Matthew David Walker
Richard James Jacobs
Michael Erling Nilsson
Original Assignee
British Telecommunications Public Limited Company
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=8173418&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=WO2002045372(A2) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by British Telecommunications Public Limited Company filed Critical British Telecommunications Public Limited Company
Priority to JP2002546384A priority Critical patent/JP2004515163A/en
Priority to CA2428325A priority patent/CA2428325C/en
Priority to DE60139632T priority patent/DE60139632D1/en
Priority to AU2002222097A priority patent/AU2002222097A1/en
Priority to EP01999095A priority patent/EP1338131B1/en
Priority to US10/415,819 priority patent/US7974200B2/en
Priority to KR1020037007126A priority patent/KR100903457B1/en
Publication of WO2002045372A2 publication Critical patent/WO2002045372A2/en
Publication of WO2002045372A3 publication Critical patent/WO2002045372A3/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23406Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving management of server-side video buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1083In-session procedures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/752Media network packet handling adapting media to network capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/23439Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving encoded video stream packets from an IP network
    • H04N21/4383Accessing a communication channel
    • H04N21/4384Accessing a communication channel involving operations to reduce the access time, e.g. fast-tuning for reducing channel switching latency
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44209Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47202End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting content on demand, e.g. video on demand
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • H04N21/6373Control signals issued by the client directed to the server or network components for rate control, e.g. request to the server to modify its transmission rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • H04N21/6375Control signals issued by the client directed to the server or network components for requesting retransmission, e.g. of data packets lost or corrupted during transmission from server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • H04N21/64322IP

Definitions

  • the invention is in the field of handling of time-sensitive data over packet switched networks, and more particularly transmitting and receiving video data over the Internet.
  • the invention relates to a method of providing a streaming video service to a client across a packet network whilst reducing the start-up delay usually associated with preparing a buffer of data while maintaining the use of a buffer.
  • the invention also relates to a method of controlling the transmission rate of the streaming video to adapt to congestion in the network.
  • a method of operating a real-time communication apparatus comprising a real-time data sender, a real-time data display device having a store and a network connecting said sender and said display device, said method comprising the steps of:
  • a method of presenting time-sensitive data at a client while constructing a buffer of time-sensitive data comprising receiving time-sensitive data which has been transmitted to said client, passing said time-sensitive data to a data buffer; and, monitoring the quantity of time-sensitive data in the data buffer; reading said time dependent data out of the data buffer to be processed for viewing; wherein the method is characterised in that the rate at which the time-sensitive data is read out of the data buffer is lower than the rate at which the time-sensitive data is passed to the data buffer; and the time-sensitive data is read out of the data buffer when it arrives in the data buffer, such that there is substantially no delay between the client receiving the time-sensitive data and making the time-sensitive data available; and, presenting the time-sensitive data.
  • a method of presenting time-sensitive data at a client wherein, time-sensitive data encoded at a first bit-rate is received until a pre-determined quantity of data fills the data buffer, whereupon time-sensitive data encoded at a second bit-rate is received, wherein said second bit- rate is higher than the first bit-rate.
  • a still further aspect of the present invention provides a method of providing time- sensitive data to a client is taught, wherein time-sensitive data encoded at a first bit- rate is read from a first data buffer at a first transmission rate to be transmitted to the client; and, upon request, time-sensitive data encoded at a second bit-rate is read from a second data buffer at a second rate.
  • a variable transmission rate is said to be elastic and applications which are able to control the transmission rate of data in response to network conditions are said to be TCP-friendly. It is desirable to provide video data in a TCP-friendly way so that the as much of the bandwidth available at any particular time is utilised.
  • a further benefit of TCP-friendly data delivery is that congestion in the network is managed as individual applications themselves reduce data rates until each has a fair share of the bandwidth.
  • Standard compression technologies such as MPEG4 or H.263 can be managed to exhibit TCP-friendly behaviour, see for example the applicant's co-pending patent application number GB 9928023.2. This solution, however, requires a high-speed, dedicated PC per video stream.
  • Transcoding an encoded data stream from a high bit- rate to a low bit-rate when network congestion is detected also suffers from the problem of being computationally demanding.
  • Another approach is to use layering of video streams, whereby quality adaption is achieved by adding or dropping layers of the video stream.
  • the disadvantage of this method is that it is inefficient, as a certain proportion of the available bandwidth must be allocated to instructions for integrating the layers.
  • the present invention further provides a method wherein the rate at which time- sensitive data is read out from first and second buffers may be dynamically varied in dependence upon the condition of a link to the client, and further, time-sensitive data encoded at a first bit-rate is read from a first data buffer at a first transmission rate to be transmitted to the client; or, time-sensitive data encoded at a second bit-rate is read from a second data buffer at a second rate, in dependence upon the condition of a link to the client, wherein said first bit-rate is lower than the second bit-rate.
  • Figure 1 is a schematic overview of the relationship between encoder, video streamer and clients
  • Figure 2 shows the arrangement of the video streamer
  • Figure 3 shows the arrangement of a client
  • Figure 4 shows the stepwise operation of one embodiment of the present invention.
  • a first embodiment of the present invention consists of a source of compressed video data, encoder 1 , which encodes data both at a low bit- rate RL, which mav have a value of for example 500 kbits "1 , and a high_bit-rate RH, of for example 1 500 kbits "1 .
  • the compression codec used is H.263 but equally may be any other codec, such as MPEG4.
  • Encoder 1 takes 'live' video data as its input, for instance a broadcast of a sporting event.
  • the two encoded data streams are transmitted via separate logical connections to the video streamer 2 at a transmission rate TE.
  • the video streamer 2 may be on the same premises as the encoder 1 and linked via an intranet.
  • the video streamer 2 runs on a server computer, for instance one comprising a Pentium III 700 MHz, 256MB RAM which has access to the Internet.
  • a video viewer, hitherto referred to as the client, running on a PC (a,b,c etc in Figure 1 ) suitably configured to have access to the Internet, may connect to the video streamer 2 via the Internet and thus the client is able to access content.
  • a suitable PC terminal is a 266 MHz Pentium II laptop PC.
  • the video streamer 2 can support a large number of clients (typically up to 1000) viewing the same stream.
  • the encoder 1 will transmit at a transmission rate TE which is real-time.
  • the two streams of data RL and RH coded at different bit-rates offer different quality video reproduction, but each data stream has the same transmission rate, TE.
  • the data must be decoded at this rate for the program to play back in realtime.
  • Figure 2 shows the arrangement of the video streamer 2.
  • Low quality encoded video data encoded at a low bit-rate RL and high quality encoded video data encoded at a high bit-rate RH from the encoder 2 is received at the input connections 21 and 22 respectively and fed to buffers 23 and 24 respectively.
  • Encoded video data is read out from each buffer 23, 24 via a switch 26 which selects which encoded video data stream is to be sent to the output connection 27.
  • a buffer manager 25 which is capable of controlling the rate at which data is read out from each of the buffers 23, 24 and thus defines the transmission rate Ts of the video streamer 2.
  • the buffer manager is also in connection with the switch 26 and is further capable of receiving signals from connection 28. Ts is selected by varying the time delay between the transmission of each packet, such that Ts may be less than, equal to or greater than the encoder transmission rate TE.
  • the buffer manager is able to control the bit-rate which is output from the video streamer 2 on two scales; by adjusting the transmission rate Ts fine control of the bit-rate is achieved, and by switching between the two encoded data streams encoded at bit-rates RL and RH control of the bit-rate on a coarse scale may be achieved.
  • the buffer manager 25 makes adjustments to Ts or switches the output between buffers in response to signals received from connection 28.
  • Figure 3 shows the arrangement of the client running on a PC 3a, b, c etc.
  • the encoded video data that is sent from the video streamer 2 is received at the client via a connection 27 and checked for completeness by a packet loss detector 31 .
  • the data is then sent into a client buffer 32 which is of a size suitable to absorb fluctuations in network throughput.
  • the client buffer 32 is connected directly to a decoder 33 and from there decoded data is sent to be displayed at the client screen (not shown).
  • a client status monitor 34 is connected to the packet loss detector 31 and client buffer 32. The client status monitor 34 is able to send signals via connection 28.
  • the packet loss detector 31 monitors incoming packets. If packet loss is detected then a signal is sent to the client status monitor 34, which is informs the buffer manager at the video streamer 2 via connection 28. Missing packets can be retransmitted.
  • the buffer manager 25 steadily increases the transmission rate Ts until a consistent pattern of packet loss occurs, indicating that the maximum bandwidth is being utilised. In the interest of maintaining a congestion free network, the transmission rate Ts may then be exponentially reduced.
  • the client status monitor 34 monitors the volume of data in the client buffer 32 such that a signal is sent via connection 28 to the buffer manager 25 at the video streamer 2 when the client buffer 32 becomes sufficiently full of data.
  • the system of video streamer 2 and client 3 as described above allows user-friendly video streaming, i.e. the client buffer 32 enables the quality of the video to be despite variations in network conditions, which might otherwise have a detrimental effect on the overall perceived quality of the media.
  • the video streamer 2 is initialised, which involves filling the buffers 23, 24 with a quantity of data from the encoder 1 .
  • data is constantly fed into the buffers 23, 24 and is subsequently discarded after an amount of time defined by the size of the buffer and the quality of data being received.
  • a PC running browser software to browse web pages on the Internet may be used to select a link to, for example, a live broadcast on a site hosted by the entity providing streamed video. Being interested in viewing the particular clip or broadcast, the user clicks (selects) the link.
  • the browsing software detects that streamed video data has been requested and launches the video viewing client software which embodies the client 3.
  • the data is transmitted to the data connection 27 and thence to the client 3.
  • bit-rate cited above of 500 kbits "1 for RL
  • data flows into the network to the client at a rate of 1000 kbits "1 .
  • the client 3 receives the encoded video data and sends it via the packet loss detector 31 to the client buffer 32 which is supplied at the rate 2TE.
  • the encoded video data is promptly read out to the decoder 33 at a rate of TE. Therefore the buffer 32 fills at a rate TE while the decoded data from the decoder 33 is displayed.
  • the user is provided with video pictures without having to wait for the client buffer 32 to fill.
  • the client monitor 34 waits for the quantity of RL data in the client buffer 32 to reach a specified level, upon which a "switch buffer” command is sent to the buffer manager 25 at the video streamer 2 via the connection 28.
  • rate Ts TE.
  • data is transmitted on the network at 1 500 kbits "1 .
  • the client buffer 32 will then begin filling with high quality data which will be placed behind the low quality data. After a length of time the RH data will begin to be read into the decoder 33, whereupon the user will perceive an increase in the picture quality.
  • the video streamer 2 can support a number of clients (typically 1000). Each client is initially given a unique read-out point for the start-up phase, whereupon, after equilibrium of the client buffer 32 has been reached and the video streamer 2 is supplying high bit-rate data from the buffer 24, the read-out point can be amalgamated with other client read-out points. Read-out points may have to be devolved as discrepancies in network capacity demand increasing or decreasing the transmission rate for a particular client.
  • the low bit-rate data buffer 23 should be of a size which will allow data to be read from it at a rate 2TE for a period of time which is long enough to provide the client buffer 32 with a suitable quantity of data. For example, in order to buffer 5 seconds worth of 500 kbits "1 data at the client 3, the video streamer 2 must supply 1000 kbits of data for 5 seconds, 500 kbits of which will be consumed by the decoder 33 per second and 500 kbits will build up in the buffer per second until 5 seconds has elapsed. Therefore the low bit-rate data buffer must be able to hold at least 5Mbits of data (5x1000kbits), or just over 0.5Mb.
  • the skilled person will appreciate that there are problems associated with 'tapping into' a stream of encoded data when data is initially read out of a buffer.
  • the compression technology typically employed by the encoder 1 involved coding a frame of video data, termed an anchor frame or an l-frame and from this frame an estimate is made as to what the next frame will look like, this estimated frame being termed a B-frame. In this way the quantity of data representing a series of frames may be greatly reduced.
  • the first frame to be read from either of the data buffers 23, 24 is a B-frame then the first few frames of decoded data may be unintelligible as the decoder tries to reconstruct frames based on an estimate.
  • an extra buffer of data is supplied in parallel with the data buffers 23, 24 consisting solely of l-frames.
  • the first frame to be transmitted is read from the l-frame buffer and thus gives the decoder a reliable point from which to start decoding.
  • Data is then switched to be read from either of the data buffers 23, 24.
  • the system allows user-friendly video streaming, i.e. the quality of the video does not fluctuate rapidly as network conditions vary, which can have a detrimental affect on the overall perceived quality of the media. In the event of packet loss being reported by the client, the system can exponentially reduce its transmission rate. This need not result in an immediate switching of the video source, as there may be data buffered at the client.
  • the transmission rate is lower than the encoding rate, and the client is supplementing received data with buffered data in order to meet the demands of the video decoder, with the result that the client's buffer is emptying.
  • the system can again ramp up the transmission rate, initially slowing the rate at which the client's buffer is emptying before eventually returning to a state of filling it.
  • the ability to transmit data at variable rates for a period of time enables the streamed data to be elastic and allows TCP-friendly transmission.
  • Detection of sustained packet loss by the packet loss detector 31 is indicative of network congestion.
  • the buffer manager 25 at the video streamer 2 reacts to notification of packet loss by instructing a reduction in the transmission rate of data from the high bit-rate data buffer 24.
  • the high bit-rate data buffer 24 should be appropriately sized to cope with such an event. If packet loss persists at the reduced transmission rate for longer than the high bit-rate data buffer can sustain, then the buffer manager 25 will switch to supply data from the low bit-rate data buffer 23.
  • Effective management protocols are necessary to prevent rapid switching between data buffers 23 and 24 as the data capacity of the network fluctuates, because this will cause changes in the perceived quality of the played back video. While a user will tolerate low quality playback, rapid changes in quality can be irritating to a user.
  • the buffer manager 25 located at the video streamer 2 is enabled to decide how to adjust the transmission rate Ts and when to switch buffers. Equally, instructions may be sent from the client 3 to the video streamer 2 about transmission rate Ts and which buffer to feed data from.
  • the location of the buffer manager 25 in the embodiments described has been chosen because it is practical to situate the control centre close to the centre which is responsible for charging for the service, which in this case is the ISP.
  • video data is chosen as an example of multimedia data to illustrate the above embodiments.
  • the invention is equally suited to any other form of time- sensitive data, such as audio data or a multimedia presentation.
  • data is supplied by the encoder 1 .
  • compressed video data may be held in a library of program data files, for example a library of feature films, which may be accessed when required.
  • the video streamer 2 may be remote from the encoder 1 , such that the video streamer 2 and the encoder 1 are connected via the Internet. It is likely that the video streamer 2 would be operated by an Internet Service Provider (ISP) and remote connection of the video streamer 2 and encoder 1 , would allow the ISP to make content available to the client from many encoders.
  • ISP Internet Service Provider

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • General Business, Economics & Management (AREA)
  • Business, Economics & Management (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Communication Control (AREA)

Abstract

The invention concerns streaming real-time data (e.g. video) over packet networks (e.g. the Internet). Conventionally, in packet networks, in order to view streamed video data a reservoir of data is built up to reduce the effect of jitter, caused by variations in the inter-arrival times of packets of data. Consequently, a delay is experienced before the video material can be viewed as the reservoir is filled. The invention is concerned with providing streamed video without the start-up delay by transmitting data from a video streamer to the video viewer more rapidly than the video viewer consumes the data and using the excess data to build a buffer at the video viewer. When a suitable sized buffer is built the transmission rate of data to the buffer may be reduced. In order to deliver the best quality material for the available bandwidth, the supply of video data may be switched to a higher bit-rate source when the reservoir is filled. Fluctuations in network throughput may be accommodated during the transmission of data on a fine scale by adjusting the transmission rate of the data and on a coarse scale by switching between data streams encoded at different bit-rates. Fluctuations in network throughput are determined by counting the number of missing packets at the video viewer which information may then be fed back to the video streamer to adjust the flow of data accordingly.

Description

Transmitting and Receiving Real-Time Data
The invention is in the field of handling of time-sensitive data over packet switched networks, and more particularly transmitting and receiving video data over the Internet.
The invention relates to a method of providing a streaming video service to a client across a packet network whilst reducing the start-up delay usually associated with preparing a buffer of data while maintaining the use of a buffer. The invention also relates to a method of controlling the transmission rate of the streaming video to adapt to congestion in the network.
Traditionally the Internet has supported traffic such as FTP, e-mail and web-surfing, where the overall delay does not intrinsically detract from the final presentation of the media. The advent of faster processing multimedia PC's has driven the delivery of multimedia, including video, over the Internet. Time-sensitive applications however require continuous, quality of service guaranteed, high bandwidth data channels, which is seemingly at odds with the packet-based nature of the Internet and has the potential to disrupt transmissions with unacceptable packet jitter, i.e. the variation in the inter-arrival times of packets caused by variable routing and changeability of delivery rates owing to congestion. Currently, commercial streaming technologies overcome jitter by constructing a large buffer (5-30 seconds) before starting to playback video material. This start-up delay is non-optimal for a user, who may have to wait for this period, before realising that the content requested is incorrect; and generally detracts from the users experience of the multimedia presentation.
According to a first aspect of the present invention there is provided a method of operating a real-time communication apparatus comprising a real-time data sender, a real-time data display device having a store and a network connecting said sender and said display device, said method comprising the steps of:
operating said sender to transmit a plurality first-encoding-rate data packets representing a first part of a real-time presentation to said display device, said transmission rate being higher than said encoding rate; operating said display device to:
receive said first-encoding-rate data packets into said store;
remove first-encoding-rate data packets from said store at said first encoding rate for decoding to present said real-time presentation to said user at a first level of quality;
on said store being filled with said first-encoding-rate data to a predetermined level, sending an indication that said level has been reached to said sender;
operating said sender, on receipt of said indication, to send second-encoding-rate data packets representing subsequent parts of said real-time presentation to said display device, said second encoding rate being higher than said first encoding rate;
operating said display device to:
receive second-encoding-rate data packets representing a subsequent part of realtime presentation into said store;
remove second-encoding-rate data packets from said store at said second encoding rate for decoding to present said real-time presentation to said user at a second level of quality higher than said first level of quality.
According to another aspect of the present invention there is provided a method of presenting time-sensitive data at a client while constructing a buffer of time-sensitive data, said method comprising receiving time-sensitive data which has been transmitted to said client, passing said time-sensitive data to a data buffer; and, monitoring the quantity of time-sensitive data in the data buffer; reading said time dependent data out of the data buffer to be processed for viewing; wherein the method is characterised in that the rate at which the time-sensitive data is read out of the data buffer is lower than the rate at which the time-sensitive data is passed to the data buffer; and the time-sensitive data is read out of the data buffer when it arrives in the data buffer, such that there is substantially no delay between the client receiving the time-sensitive data and making the time-sensitive data available; and, presenting the time-sensitive data.
There will come a point when the data buffer becomes sufficiently full. The rate of transmission can then be reduced to equal the rate of consumption by the viewing means which will bring the quantity of data in the buffer to an equilibrium. However, in this situation the bandwidth of the connection may not be employed to full capacity. In a further aspect of the present invention there is provided a method of presenting time-sensitive data at a client, wherein, time-sensitive data encoded at a first bit-rate is received until a pre-determined quantity of data fills the data buffer, whereupon time-sensitive data encoded at a second bit-rate is received, wherein said second bit- rate is higher than the first bit-rate. A still further aspect of the present invention provides a method of providing time- sensitive data to a client is taught, wherein time-sensitive data encoded at a first bit- rate is read from a first data buffer at a first transmission rate to be transmitted to the client; and, upon request, time-sensitive data encoded at a second bit-rate is read from a second data buffer at a second rate.
It is desirable to use as much of the available bandwidth of a link as possible to transmit data because with a higher bit-rate of video data comes better quality reproduction. However, loss of data in the network causes severe degradation of service - far outstripping the benefits of increased bit-rate. For example, with predictive coding schemes such as H.263 and MPEG, receiving half of a 500 kbits"1 video stream is likely to give a much worse quality than all of a 250 kbits"1 stream. It is therefore important to reduce transmission rate in a controlled way, rather than letting data be lost to the network. The Internet protocol TCP has a built-in control mechanism whereby the data transmission rate is steadily increased until packet loss is detected, whereupon the data rate is reduced. The data rate is then increased again until packet loss reoccurs. A variable transmission rate is said to be elastic and applications which are able to control the transmission rate of data in response to network conditions are said to be TCP-friendly. It is desirable to provide video data in a TCP-friendly way so that the as much of the bandwidth available at any particular time is utilised. A further benefit of TCP-friendly data delivery is that congestion in the network is managed as individual applications themselves reduce data rates until each has a fair share of the bandwidth. Standard compression technologies, such as MPEG4 or H.263 can be managed to exhibit TCP-friendly behaviour, see for example the applicant's co-pending patent application number GB 9928023.2. This solution, however, requires a high-speed, dedicated PC per video stream. Transcoding an encoded data stream from a high bit- rate to a low bit-rate when network congestion is detected also suffers from the problem of being computationally demanding. Another approach is to use layering of video streams, whereby quality adaption is achieved by adding or dropping layers of the video stream. The disadvantage of this method is that it is inefficient, as a certain proportion of the available bandwidth must be allocated to instructions for integrating the layers. The present invention further provides a method wherein the rate at which time- sensitive data is read out from first and second buffers may be dynamically varied in dependence upon the condition of a link to the client, and further, time-sensitive data encoded at a first bit-rate is read from a first data buffer at a first transmission rate to be transmitted to the client; or, time-sensitive data encoded at a second bit-rate is read from a second data buffer at a second rate, in dependence upon the condition of a link to the client, wherein said first bit-rate is lower than the second bit-rate.
Embodiments of the invention will now be described, by way of example only, with reference to the figures, where: Figure 1 is a schematic overview of the relationship between encoder, video streamer and clients;
Figure 2 shows the arrangement of the video streamer; Figure 3 shows the arrangement of a client; and Figure 4 shows the stepwise operation of one embodiment of the present invention.
As shown in Figure 1 , a first embodiment of the present invention consists of a source of compressed video data, encoder 1 , which encodes data both at a low bit- rate RL, which mav have a value of for example 500 kbits"1 , and a high_bit-rate RH, of for example 1 500 kbits"1. The compression codec used is H.263 but equally may be any other codec, such as MPEG4. Encoder 1 takes 'live' video data as its input, for instance a broadcast of a sporting event.
The two encoded data streams are transmitted via separate logical connections to the video streamer 2 at a transmission rate TE. The video streamer 2 may be on the same premises as the encoder 1 and linked via an intranet. The video streamer 2 runs on a server computer, for instance one comprising a Pentium III 700 MHz, 256MB RAM which has access to the Internet. A video viewer, hitherto referred to as the client, running on a PC (a,b,c etc in Figure 1 ) suitably configured to have access to the Internet, may connect to the video streamer 2 via the Internet and thus the client is able to access content. A suitable PC terminal is a 266 MHz Pentium II laptop PC. The video streamer 2 can support a large number of clients (typically up to 1000) viewing the same stream. For a live broadcast, the encoder 1 will transmit at a transmission rate TE which is real-time. The two streams of data RL and RH coded at different bit-rates offer different quality video reproduction, but each data stream has the same transmission rate, TE. The data must be decoded at this rate for the program to play back in realtime. Figure 2 shows the arrangement of the video streamer 2. Low quality encoded video data encoded at a low bit-rate RL and high quality encoded video data encoded at a high bit-rate RH from the encoder 2 is received at the input connections 21 and 22 respectively and fed to buffers 23 and 24 respectively. It should be noted that there is provided one buffer per channel of encoded video data that is received by the video streamer 2. Encoded video data is read out from each buffer 23, 24 via a switch 26 which selects which encoded video data stream is to be sent to the output connection 27. There is provided a buffer manager 25 which is capable of controlling the rate at which data is read out from each of the buffers 23, 24 and thus defines the transmission rate Ts of the video streamer 2. The buffer manager is also in connection with the switch 26 and is further capable of receiving signals from connection 28. Ts is selected by varying the time delay between the transmission of each packet, such that Ts may be less than, equal to or greater than the encoder transmission rate TE. Those skilled in the art will realise that the limiting factor on the sustainability of transmission where Ts > TE is the size of the buffer 23, 24 such that a buffer of size S kbits will be able to sustain a transmission rate of TS = 2TE for twice as long as a buffer of size S/2 kbits. Through the control of both switch 26 and the transmission rate Ts the buffer manager is able to control the bit-rate which is output from the video streamer 2 on two scales; by adjusting the transmission rate Ts fine control of the bit-rate is achieved, and by switching between the two encoded data streams encoded at bit-rates RL and RH control of the bit-rate on a coarse scale may be achieved. The buffer manager 25 makes adjustments to Ts or switches the output between buffers in response to signals received from connection 28. Figure 3 shows the arrangement of the client running on a PC 3a, b, c etc. The encoded video data that is sent from the video streamer 2 is received at the client via a connection 27 and checked for completeness by a packet loss detector 31 . The data is then sent into a client buffer 32 which is of a size suitable to absorb fluctuations in network throughput. The client buffer 32 is connected directly to a decoder 33 and from there decoded data is sent to be displayed at the client screen (not shown). A client status monitor 34 is connected to the packet loss detector 31 and client buffer 32. The client status monitor 34 is able to send signals via connection 28.
The packet loss detector 31 monitors incoming packets. If packet loss is detected then a signal is sent to the client status monitor 34, which is informs the buffer manager at the video streamer 2 via connection 28. Missing packets can be retransmitted. The buffer manager 25 steadily increases the transmission rate Ts until a consistent pattern of packet loss occurs, indicating that the maximum bandwidth is being utilised. In the interest of maintaining a congestion free network, the transmission rate Ts may then be exponentially reduced. The client status monitor 34 monitors the volume of data in the client buffer 32 such that a signal is sent via connection 28 to the buffer manager 25 at the video streamer 2 when the client buffer 32 becomes sufficiently full of data.
The system of video streamer 2 and client 3 as described above allows user-friendly video streaming, i.e. the client buffer 32 enables the quality of the video to be despite variations in network conditions, which might otherwise have a detrimental effect on the overall perceived quality of the media.
The operation of the present embodiment of the invention will now be described with reference to Figure 4. The video streamer 2 is initialised, which involves filling the buffers 23, 24 with a quantity of data from the encoder 1 . For a live broadcast, data is constantly fed into the buffers 23, 24 and is subsequently discarded after an amount of time defined by the size of the buffer and the quality of data being received. A PC running browser software to browse web pages on the Internet may be used to select a link to, for example, a live broadcast on a site hosted by the entity providing streamed video. Being interested in viewing the particular clip or broadcast, the user clicks (selects) the link. The browsing software detects that streamed video data has been requested and launches the video viewing client software which embodies the client 3. The client 3 issues a "send data" command via connection 28 to the buffer manager 25, which sets switch 26 to read encoded video data from the low bit-rate data buffer 23 and requests a transmission rate of Ts = 2TE. The data is transmitted to the data connection 27 and thence to the client 3. Using the example encoding bit-rate cited above of 500 kbits"1 for RL , data flows into the network to the client at a rate of 1000 kbits"1.
The client 3 receives the encoded video data and sends it via the packet loss detector 31 to the client buffer 32 which is supplied at the rate 2TE. When data is detected in the buffer 32 the encoded video data is promptly read out to the decoder 33 at a rate of TE. Therefore the buffer 32 fills at a rate TE while the decoded data from the decoder 33 is displayed. Thus the user is provided with video pictures without having to wait for the client buffer 32 to fill.
The client monitor 34 waits for the quantity of RL data in the client buffer 32 to reach a specified level, upon which a "switch buffer" command is sent to the buffer manager 25 at the video streamer 2 via the connection 28. The buffer manager 25 then switches the flow of data from the low bit-rate data buffer 23 to the high bit- rate data buffer 24 and instructs transmission at a rate Ts = TE. Using the example encoding rate cited above, data is transmitted on the network at 1 500 kbits"1. The client buffer 32 will then begin filling with high quality data which will be placed behind the low quality data. After a length of time the RH data will begin to be read into the decoder 33, whereupon the user will perceive an increase in the picture quality. At this point, the client 3 has a full buffer and the user is watching images of a quality which is consistent with the capacity of the network link. The video streamer 2 can support a number of clients (typically 1000). Each client is initially given a unique read-out point for the start-up phase, whereupon, after equilibrium of the client buffer 32 has been reached and the video streamer 2 is supplying high bit-rate data from the buffer 24, the read-out point can be amalgamated with other client read-out points. Read-out points may have to be devolved as discrepancies in network capacity demand increasing or decreasing the transmission rate for a particular client.
The skilled person will appreciate that the low bit-rate data buffer 23 should be of a size which will allow data to be read from it at a rate 2TE for a period of time which is long enough to provide the client buffer 32 with a suitable quantity of data. For example, in order to buffer 5 seconds worth of 500 kbits"1 data at the client 3, the video streamer 2 must supply 1000 kbits of data for 5 seconds, 500 kbits of which will be consumed by the decoder 33 per second and 500 kbits will build up in the buffer per second until 5 seconds has elapsed. Therefore the low bit-rate data buffer must be able to hold at least 5Mbits of data (5x1000kbits), or just over 0.5Mb.
The skilled person will appreciate that there are problems associated with 'tapping into' a stream of encoded data when data is initially read out of a buffer. The compression technology typically employed by the encoder 1 involved coding a frame of video data, termed an anchor frame or an l-frame and from this frame an estimate is made as to what the next frame will look like, this estimated frame being termed a B-frame. In this way the quantity of data representing a series of frames may be greatly reduced. However, if the first frame to be read from either of the data buffers 23, 24 is a B-frame then the first few frames of decoded data may be unintelligible as the decoder tries to reconstruct frames based on an estimate. In a further embodiment of the invention, an extra buffer of data is supplied in parallel with the data buffers 23, 24 consisting solely of l-frames. The first frame to be transmitted is read from the l-frame buffer and thus gives the decoder a reliable point from which to start decoding. Data is then switched to be read from either of the data buffers 23, 24. The system allows user-friendly video streaming, i.e. the quality of the video does not fluctuate rapidly as network conditions vary, which can have a detrimental affect on the overall perceived quality of the media. In the event of packet loss being reported by the client, the system can exponentially reduce its transmission rate. This need not result in an immediate switching of the video source, as there may be data buffered at the client. Immediately after the packet loss it is possible that the transmission rate is lower than the encoding rate, and the client is supplementing received data with buffered data in order to meet the demands of the video decoder, with the result that the client's buffer is emptying. In the event of isolated packet loss, the system can again ramp up the transmission rate, initially slowing the rate at which the client's buffer is emptying before eventually returning to a state of filling it.
The skilled person will appreciate that the ability to transmit data at variable rates for a period of time enables the streamed data to be elastic and allows TCP-friendly transmission. Detection of sustained packet loss by the packet loss detector 31 is indicative of network congestion. The buffer manager 25 at the video streamer 2 reacts to notification of packet loss by instructing a reduction in the transmission rate of data from the high bit-rate data buffer 24. The high bit-rate data buffer 24 should be appropriately sized to cope with such an event. If packet loss persists at the reduced transmission rate for longer than the high bit-rate data buffer can sustain, then the buffer manager 25 will switch to supply data from the low bit-rate data buffer 23. Effective management protocols are necessary to prevent rapid switching between data buffers 23 and 24 as the data capacity of the network fluctuates, because this will cause changes in the perceived quality of the played back video. While a user will tolerate low quality playback, rapid changes in quality can be irritating to a user.
There is no limit to the number of encoded data streams that may be provided to the video streamer. Maximum bandwidth utilisation may be achieved thus: starting by reading data from a low bit-rate data buffer, the transmission rate is increased. Finding that no packets are lost at this transmission rate, the output is switched to a higher bit-rate data buffer, whereupon the transmission rate is increased. If this transmission rate encounters no obstacle then a higher still bit-rate data buffer can be switched in, and so on until the maximum bandwidth is employed. The buffer manager 25 located at the video streamer 2 is enabled to decide how to adjust the transmission rate Ts and when to switch buffers. Equally, instructions may be sent from the client 3 to the video streamer 2 about transmission rate Ts and which buffer to feed data from. The location of the buffer manager 25 in the embodiments described has been chosen because it is practical to situate the control centre close to the centre which is responsible for charging for the service, which in this case is the ISP.
The example of video data is chosen as an example of multimedia data to illustrate the above embodiments. The invention is equally suited to any other form of time- sensitive data, such as audio data or a multimedia presentation. In the embodiment described above, data is supplied by the encoder 1 . Equally, compressed video data may be held in a library of program data files, for example a library of feature films, which may be accessed when required. The video streamer 2 may be remote from the encoder 1 , such that the video streamer 2 and the encoder 1 are connected via the Internet. It is likely that the video streamer 2 would be operated by an Internet Service Provider (ISP) and remote connection of the video streamer 2 and encoder 1 , would allow the ISP to make content available to the client from many encoders.

Claims

1 . A method of operating a real-time communication apparatus comprising a real-time data sender, a real-time data display device having a store and a network connecting said sender and said display device, said method comprising the steps of:
operating said sender to transmit a plurality first-encoding-rate data packets representing a first part of a real-time presentation to said display device, said transmission rate being higher than said encoding rate;
operating said display device to:
receive said first-encoding-rate data packets into said store;
remove first-encoding-rate data packets from said store at said first encoding rate for decoding to present said real-time presentation to said user at a first level of quality;
on said store being filled with said first-encoding-rate data to a predetermined level, sending an indication that said level has been reached to said sender;
operating said sender, on receipt of said indication, to send second-encoding-rate data packets representing subsequent parts of said real-time presentation to said display device, said second encoding rate being higher than said first encoding rate;
operating said display device to:
receive second-encoding-rate data packets representing a subsequent part of realtime presentation into said store;
remove second-encoding-rate data packets from said store at said second encoding rate for decoding to present said real-time presentation to said user at a second level of quality higher than said first level of quality.
2. A method of presenting time-sensitive data and constructing a buffer of time- sensitive data, said method comprising receiving time-sensitive data; reading said time-sensitive data into a data buffer; and, reading said time-sensitive data out of the data buffer for presentation; and, presenting the time-sensitive data; wherein the method is characterised in that the rate at which the time-sensitive data is read out of the data buffer is lower than the rate at which the time-sensitive data is read into the data buffer; and, reading the time-sensitive data out of the data buffer is initiated when the time-sensitive data first arrives at the data buffer, such that there is substantially no delay between the client first receiving the time-sensitive data and making the time- sensitive data available for presentation.
3. A method of presenting time-sensitive data at a client according to claim 2, including the step of, monitoring the quantity of time-sensitive data in the data buffer; wherein the bit-rate of the received time-sensitive data is dependent on the quantity of data in the data buffer.
4. A method of presenting time-sensitive data at a client according to claim 3, wherein, time-sensitive data encoded at a first bit-rate is received until the quantity of data in the data buffer reaches an upper threshold, whereupon time-sensitive data encoded at a second bit-rate is received, wherein said first bit-rate is lower than the second bit-rate.
5. A method of presenting time-sensitive data at a client according to claim 4, wherein, time-sensitive data encoded at the second bit-rate is received until the quantity of data in the data buffer reaches a lower threshold, whereupon time- sensitive data encoded at the first bit-rate is received.
6. A method of presenting time-sensitive data at a client according to any one of the preceding claims, wherein, the rate at which the time-sensitive data is read into the data buffer is dependent on the quantity of data in the data buffer.
7. A method of providing time-sensitive data to a client, wherein time-sensitive data is encoded at a plurality of bit-rates; wherein data encoded at one of the plurality of bit-rates is selected for transmission to the client; transmitting the data to the client.
8. A method of providing time-sensitive data to a client according to claim 7, wherein, the rate at which time-sensitive data selected for transmission to the client is transmitted to the client may be dynamically varied.
9. A method of providing time-sensitive data to a client, according to claim 7, wherein, the time-sensitive data encoded at one of the plurality of bit-rates is selected in dependence upon a received signal.
10. A method of providing time-sensitive data to a client according to claim 8, wherein, the rate at which the time-sensitive data selected for transmission is transmitted is dependent upon a received signal.
1 1 . A method of providing time-sensitive data to a client according to claims 9 or 10, wherein, the received signal is representative of the condition of the link to the client.
1 2. A method of providing time-sensitive data to a client according to claims 9 or 10, wherein, the received signal is representative of the quantity of data in a data buffer at the client.
13. A method of providing time-sensitive data to a client according to claim 1 1 , wherein, the condition of the link to the client is determined by the quantity of data in a data buffer at the client.
14. A method of providing time-sensitive data to a client in accordance with any one of the preceding claims, wherein the time-sensitive data represents video data or may represent audio data.
1 5. Apparatus for receiving time-sensitive data, said apparatus comprising, buffer means for storing received time-sensitive data for a period of time, means for reading said time-sensitive data into the buffer means, means for reading said time dependent data out of said buffer means, monitoring means for monitoring the quantity of data held in the buffer means; and means for transmitting data relating to the quantity of time dependent data held in said buffer means, said apparatus being characterised in that means for initiating reading the time-sensitive data out of the data buffer when the monitoring means detects the arrival of time-sensitive data at the data buffer, such that there is substantially no delay between the client first receiving the time-sensitive data and the time-sensitive data being read out of the buffer.
16. Apparatus for supplying encoded video data to at least one client, said apparatus comprising, receiving means to receive a plurality of data streams, wherein each of the plurality of data streams comprises video data encoded from the same source with differing quantisation parameters, a plurality of buffer means for storing each stream of encoded video data for a period of time. at least one reading means for reading encoded video data from one of the plurality of buffer means, buffer management means arranged to control the at least one reading means, characterised in that, said reading means is arranged to read, under control of the buffer management means, encoded video data from any of the buffer means at a frame rate which may be less than, equal to or greater than the frame rate at which the video data is encoded.
17. Apparatus for supplying encoded video data to a client as claimed in claim 16, including, means for receiving data relating to the quantity of encoded video data in the buffer of the client, and means for determining the current capacity of the link to the client, wherein the buffer management means is arranged to control the reading means in dependence on the quantity of encoded video data in the buffer of the client and on the capacity of the link to the client.
PCT/GB2001/005246 2000-11-29 2001-11-28 Transmitting and receiving real-time data WO2002045372A2 (en)

Priority Applications (7)

Application Number Priority Date Filing Date Title
JP2002546384A JP2004515163A (en) 2000-11-29 2001-11-28 Transmission and reception of real-time data
CA2428325A CA2428325C (en) 2000-11-29 2001-11-28 Transmitting and receiving real-time data
DE60139632T DE60139632D1 (en) 2000-11-29 2001-11-28 TRANSFERRING AND RECEIVING REAL-TIME DATA
AU2002222097A AU2002222097A1 (en) 2000-11-29 2001-11-28 Transmitting and receiving real-time data
EP01999095A EP1338131B1 (en) 2000-11-29 2001-11-28 Transmitting and receiving real-time data
US10/415,819 US7974200B2 (en) 2000-11-29 2001-11-28 Transmitting and receiving real-time data
KR1020037007126A KR100903457B1 (en) 2000-11-29 2001-11-28 Transmitting and receiving real-time data

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP00310594.7 2000-11-29
EP00310594 2000-11-29

Publications (2)

Publication Number Publication Date
WO2002045372A2 true WO2002045372A2 (en) 2002-06-06
WO2002045372A3 WO2002045372A3 (en) 2002-09-06

Family

ID=8173418

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/GB2001/005246 WO2002045372A2 (en) 2000-11-29 2001-11-28 Transmitting and receiving real-time data

Country Status (11)

Country Link
US (1) US7974200B2 (en)
EP (1) EP1338131B1 (en)
JP (2) JP2004515163A (en)
KR (1) KR100903457B1 (en)
CN (1) CN100420250C (en)
AU (1) AU2002222097A1 (en)
CA (1) CA2428325C (en)
DE (1) DE60139632D1 (en)
ES (1) ES2331111T3 (en)
SG (1) SG146434A1 (en)
WO (1) WO2002045372A2 (en)

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004021668A1 (en) * 2002-08-28 2004-03-11 Koninklijke Philips Electronics N.V. Method of streaming multimedia data
JP2004080785A (en) * 2002-08-13 2004-03-11 Microsoft Corp Quick digital channel change
WO2004039034A1 (en) * 2002-10-24 2004-05-06 Telefonaktiebolaget Lm Ericsson (Publ) System and method for reducing initial buffering time for a streaming application
FR2853483A1 (en) * 2003-04-07 2004-10-08 Canon Kk Multimedia data e.g. video, packet transmission managing process, involves transmitting interruption message to client device, when size of data packet received from client device is greater than available memory space in server
WO2005025223A1 (en) * 2003-09-10 2005-03-17 Thales Uk Plc Video system
WO2005059711A2 (en) 2003-12-16 2005-06-30 Infocus Corporation Controlling a transmission of image data to a display device
EP1599016A1 (en) * 2004-05-20 2005-11-23 Mitsumi Electric Co., Ltd. Streaming content reproduction method and internet connection device using the same
EP1793555A1 (en) * 2005-12-02 2007-06-06 Alcatel Lucent Faster than real time streaming in a playlist context
EP1376299A3 (en) * 2002-06-24 2007-08-29 Microsoft Corporation Client-side caching of streaming media content
JP2007537640A (en) * 2004-05-13 2007-12-20 ノキア コーポレイション Cooperation between bit rate adaptation of packetized data and retransmission of data packets
WO2008019606A1 (en) * 2006-07-28 2008-02-21 Tencent Technology (Shenzhen) Company Limited A method and apparatus for adjusting the quality of video communication of instant messaging
FR2905221A1 (en) * 2006-08-28 2008-02-29 Canon Kk Multimedia content i.e. video, transmitting method for e.g. microcomputer, involves determining encoding rate higher than another encoding rate, where encoding part of content is based on former rate and transmission rate of encoded part
WO2009088341A1 (en) * 2008-01-08 2009-07-16 Axis Ab Network offloading with reduced packet loss
US7733830B2 (en) 2002-10-14 2010-06-08 Nokia Corporation Enhancing streaming media reception for a mobile device during cell reselection
WO2011156516A2 (en) * 2010-06-08 2011-12-15 Gibby Media Group Inc. Systems and methods for real-time and on-demand multimedia streaming
CN104135688A (en) * 2014-07-24 2014-11-05 广州金山网络科技有限公司 Method, user equipment and system for video playing
CN105451075A (en) * 2014-08-27 2016-03-30 北京大学 Video quality control method and video quality control device
EP3036911A4 (en) * 2013-08-23 2017-04-12 Samsung Electronics Co., Ltd. Method, terminal, and system for reproducing content
US11470138B2 (en) 2004-04-30 2022-10-11 DISH Technologies L.L.C. Apparatus, system, and method for multi-bitrate content streaming
EP3739584B1 (en) * 2014-01-29 2024-08-21 Google LLC Media application backgrounding

Families Citing this family (80)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5793980A (en) 1994-11-30 1998-08-11 Realnetworks, Inc. Audio-on-demand communication system
US7349976B1 (en) 1994-11-30 2008-03-25 Realnetworks, Inc. Audio-on-demand communication system
US6263503B1 (en) 1999-05-26 2001-07-17 Neal Margulis Method for effectively implementing a wireless television system
US8266657B2 (en) 2001-03-15 2012-09-11 Sling Media Inc. Method for effectively implementing a multi-room television system
CN1557072A (en) * 2001-09-21 2004-12-22 ���˹���Ѷ��� Data communications method and system using buffer size to calculate transmission rate for congestion control
CA2464508A1 (en) * 2001-11-30 2003-06-12 Rory Stewart Turnbull Method and apparatus for critical time multimedia data transmission
EP1359722A1 (en) * 2002-03-27 2003-11-05 BRITISH TELECOMMUNICATIONS public limited company Data streaming system and method
CA2479585A1 (en) * 2002-03-27 2003-10-09 Timothy Ralph Jebb Data structure for data streaming system
ATE490649T1 (en) * 2002-03-27 2010-12-15 British Telecomm VIDEO CODING AND TRANSMISSION
US8149810B1 (en) 2003-02-14 2012-04-03 Marvell International Ltd. Data rate adaptation in multiple-in-multiple-out systems
GB0306296D0 (en) * 2003-03-19 2003-04-23 British Telecomm Data transmission
US7274740B2 (en) * 2003-06-25 2007-09-25 Sharp Laboratories Of America, Inc. Wireless video transmission system
US7864678B1 (en) 2003-08-12 2011-01-04 Marvell International Ltd. Rate adaptation in wireless systems
US8862758B1 (en) * 2003-09-11 2014-10-14 Clearone Communications Hong Kong, Limited System and method for controlling one or more media stream characteristics
US9325998B2 (en) * 2003-09-30 2016-04-26 Sharp Laboratories Of America, Inc. Wireless video transmission system
US20050114474A1 (en) * 2003-11-20 2005-05-26 International Business Machines Corporation Automatic configuration of the network devices via connection to specific switch ports
US8018850B2 (en) 2004-02-23 2011-09-13 Sharp Laboratories Of America, Inc. Wireless video transmission system
US8020185B2 (en) * 2004-03-03 2011-09-13 Alcatel Lucent System and method for retrieving digital multimedia content from a network node
US20050198681A1 (en) * 2004-03-08 2005-09-08 Sharp Laboratories Of America, Inc. Playout buffer management to minimize startup delay
US7697449B1 (en) 2004-07-20 2010-04-13 Marvell International Ltd. Adaptively determining a data rate of packetized information transmission over a wireless channel
US8683535B2 (en) * 2004-03-26 2014-03-25 Broadcom Corporation Fast channel change
CN102857792B (en) * 2004-05-03 2017-03-01 汤姆森研发基金公司 The method and apparatus carrying out fast channel change of DSL system can be directed to
US8010652B2 (en) * 2004-05-07 2011-08-30 Nokia Corporation Refined quality feedback in streaming services
WO2005122025A2 (en) * 2004-06-07 2005-12-22 Sling Media, Inc. Personal media broadcasting system
US7917932B2 (en) 2005-06-07 2011-03-29 Sling Media, Inc. Personal video recorder functionality for placeshifting systems
US7769756B2 (en) 2004-06-07 2010-08-03 Sling Media, Inc. Selection and presentation of context-relevant supplemental content and advertising
US7975062B2 (en) 2004-06-07 2011-07-05 Sling Media, Inc. Capturing and sharing media content
US9998802B2 (en) 2004-06-07 2018-06-12 Sling Media LLC Systems and methods for creating variable length clips from a media stream
JPWO2006011270A1 (en) * 2004-07-27 2008-05-01 シャープ株式会社 Pseudo video on demand system, control method of pseudo video on demand system, and program and recording medium used therefor
US7870590B2 (en) * 2004-10-20 2011-01-11 Cisco Technology, Inc. System and method for fast start-up of live multicast streams transmitted over a packet network
US7797723B2 (en) * 2004-10-30 2010-09-14 Sharp Laboratories Of America, Inc. Packet scheduling for video transmission with sender queue control
US8356327B2 (en) * 2004-10-30 2013-01-15 Sharp Laboratories Of America, Inc. Wireless video transmission system
US7784076B2 (en) * 2004-10-30 2010-08-24 Sharp Laboratories Of America, Inc. Sender-side bandwidth estimation for video transmission with receiver packet buffer
US7675872B2 (en) * 2004-11-30 2010-03-09 Broadcom Corporation System, method, and apparatus for displaying pictures
JP4643330B2 (en) * 2005-03-28 2011-03-02 ソニー株式会社 COMMUNICATION PROCESSING DEVICE, DATA COMMUNICATION SYSTEM, COMMUNICATION PROCESSING METHOD, AND COMPUTER PROGRAM
US8606949B2 (en) * 2005-04-20 2013-12-10 Jupiter Systems Interconnection mechanism for multiple data streams
US20060277316A1 (en) * 2005-05-12 2006-12-07 Yunchuan Wang Internet protocol television
US20070067480A1 (en) * 2005-09-19 2007-03-22 Sharp Laboratories Of America, Inc. Adaptive media playout by server media processing for robust streaming
US7676591B2 (en) * 2005-09-22 2010-03-09 Packet Video Corporation System and method for transferring multiple data channels
US9544602B2 (en) * 2005-12-30 2017-01-10 Sharp Laboratories Of America, Inc. Wireless video transmission system
EP1806883A1 (en) * 2006-01-06 2007-07-11 Alcatel Lucent Method of transmitting data in a discontinuous coverage network
US7652994B2 (en) * 2006-03-31 2010-01-26 Sharp Laboratories Of America, Inc. Accelerated media coding for robust low-delay video streaming over time-varying and bandwidth limited channels
US8861597B2 (en) * 2006-09-18 2014-10-14 Sharp Laboratories Of America, Inc. Distributed channel time allocation for video streaming over wireless networks
US7652993B2 (en) 2006-11-03 2010-01-26 Sharp Laboratories Of America, Inc. Multi-stream pro-active rate adaptation for robust video transmission
US20080212599A1 (en) * 2007-03-01 2008-09-04 Qualcomm Incorporated Methods and systems for encoding data in a communication network
JP4398987B2 (en) * 2007-03-19 2010-01-13 株式会社東芝 Multi-decoder device and method
FR2916600B1 (en) * 2007-05-24 2013-11-22 Canon Kk METHOD AND DEVICE FOR DATA TRANSMISSION
US8554941B2 (en) * 2007-08-30 2013-10-08 At&T Intellectual Property I, Lp Systems and methods for distributing video on demand
US20090138614A1 (en) * 2007-11-28 2009-05-28 Motorola, Inc. Method and apparatus for streaming media in a communication network
EP2075935A1 (en) * 2007-12-31 2009-07-01 Motorola, Inc. A method and apparatus for providing uninterrupted media to a user
US8139607B2 (en) * 2008-01-21 2012-03-20 At&T Intellectual Property I, L.P. Subscriber controllable bandwidth allocation
US9047236B2 (en) * 2008-06-06 2015-06-02 Amazon Technologies, Inc. Client side stream switching
US9167007B2 (en) * 2008-06-06 2015-10-20 Amazon Technologies, Inc. Stream complexity mapping
CN101753973B (en) * 2008-12-12 2013-01-02 华为技术有限公司 Channel switching method, device and system
US8527647B2 (en) * 2009-10-06 2013-09-03 Unwired Planet, Inc. Managing network traffic using intermediate flow control
KR101268629B1 (en) 2009-11-05 2013-05-29 한국전자통신연구원 Channel sever, channel prediction server, terminal and method for the fast channel change system based on multiplicity multicast with program rating prediction
US9521178B1 (en) * 2009-12-21 2016-12-13 Amazon Technologies, Inc. Dynamic bandwidth thresholds
JP5553663B2 (en) * 2010-03-31 2014-07-16 日立コンシューマエレクトロニクス株式会社 Video transmission device, video reception device, video transmission system
US8312164B2 (en) * 2010-04-14 2012-11-13 Adobe Systems Incorporated Media quality enhancement among connected media communication devices
JP2012222530A (en) * 2011-04-06 2012-11-12 Sony Corp Receiving device and method, and program
JP2013058986A (en) * 2011-09-09 2013-03-28 Sony Corp Communication system, transmission device, reception device, transmission method, reception method, and program
US9037742B2 (en) * 2011-11-15 2015-05-19 International Business Machines Corporation Optimizing streaming of a group of videos
US9571827B2 (en) 2012-06-08 2017-02-14 Apple Inc. Techniques for adaptive video streaming
KR101952632B1 (en) * 2012-08-22 2019-02-27 삼성전자주식회사 User terminal device and contents streaming method using the same
TWI507022B (en) 2012-12-05 2015-11-01 Ind Tech Res Inst Buffer output method for multimedia stream and multimedia stream buffer module
EP2949123A2 (en) 2013-02-27 2015-12-02 Apple Inc. Adaptive streaming techniques
US9035992B1 (en) * 2013-04-08 2015-05-19 Google Inc. Bandwidth modulation system and method
CN104185285A (en) * 2013-05-28 2014-12-03 华为技术有限公司 Media data transmission method, device and system
US20150237398A1 (en) * 2014-02-18 2015-08-20 Kylintv, Inc. Internet protocol television
GB2519391B (en) 2014-04-02 2015-10-21 Imagination Tech Ltd Enhanced media quality management
WO2016183251A1 (en) 2015-05-11 2016-11-17 Mediamelon, Inc. Systems and methods for performing quality based streaming
US11076187B2 (en) 2015-05-11 2021-07-27 Mediamelon, Inc. Systems and methods for performing quality based streaming
US10496280B2 (en) * 2015-09-25 2019-12-03 Seagate Technology Llc Compression sampling in tiered storage
US11070249B2 (en) * 2017-09-28 2021-07-20 British Telecommunications Public Limited Company Controlling communications in respect of local area networks
WO2019072546A1 (en) 2017-10-10 2019-04-18 British Telecommunications Public Limited Company Identifying interfering links in local area networks
US10880353B2 (en) 2017-10-12 2020-12-29 Streaming Global, Inc. Systems and methods for cloud storage direct streaming
US11232686B2 (en) * 2019-12-30 2022-01-25 Axis Ab Real-time deviation in video monitoring
KR20220135009A (en) 2021-03-29 2022-10-06 주식회사 위시모바일 Computer programs and recording media to provide live communication control services
KR20220135007A (en) 2021-03-29 2022-10-06 주식회사 위시모바일 Live communication control apparatus and method
KR20220135010A (en) 2021-03-29 2022-10-06 주식회사 위시모바일 System of control communication for controlling streaming of multiple client terminals

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5822524A (en) 1995-07-21 1998-10-13 Infovalue Computing, Inc. System for just-in-time retrieval of multimedia files over computer networks by transmitting data packets at transmission rate determined by frame size
US5918020A (en) 1997-02-28 1999-06-29 International Business Machines Corporation Data processing system and method for pacing information transfers in a communications network

Family Cites Families (160)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US553529A (en) * 1896-01-28 Method of electrical propulsion for street or other cars
US4813044A (en) * 1987-01-30 1989-03-14 International Business Machines Corporation Method and apparatus for detecting transient errors
USRE34824E (en) * 1987-09-23 1995-01-10 British Telecommunications Public Limited Company Video coder
DE69032361T2 (en) 1989-03-16 1998-10-29 Fujitsu Ltd VIDEO / AUDIO MULTIPLEX TRANSMISSION SYSTEM
US5140417A (en) * 1989-06-20 1992-08-18 Matsushita Electric Co., Ltd. Fast packet transmission system of video data
US5159447A (en) * 1991-05-23 1992-10-27 At&T Bell Laboratories Buffer control for variable bit-rate channel
JP2802694B2 (en) * 1991-10-30 1998-09-24 富士写真フイルム株式会社 Image reproducing apparatus and method
US5506983A (en) * 1992-07-06 1996-04-09 Microsoft Corporation Method and system for transactioning of modifications to a tree structured file
US5675696A (en) * 1992-07-14 1997-10-07 Mitsubishi Denki Kabsuhiki Kaisha Digital video signal recording and reproducing apparatus
US5511054A (en) * 1993-03-31 1996-04-23 Sony Corporation Apparatus and method for multiplexing encoded data signals and recording medium having multiplexed signals recorded thereon
US5561466A (en) 1993-06-23 1996-10-01 Nec Corporation Video and audio data multiplexing into ATM cells with no dummy cell used and ATM cell demultiplexing
JPH07123172A (en) 1993-10-25 1995-05-12 Canon Inc Terminal equipment
US5748955A (en) * 1993-12-20 1998-05-05 Smith; Rodney J. Stream data compression system using dynamic connection groups
KR100334541B1 (en) * 1994-02-02 2002-10-12 소니 가부시끼 가이샤 Recording apparatus and reproducing apparatus
JPH07236136A (en) 1994-02-23 1995-09-05 Hitachi Ltd Transmission control system and display control system for moving image information
US5566208A (en) 1994-03-17 1996-10-15 Philips Electronics North America Corp. Encoder buffer having an effective size which varies automatically with the channel bit-rate
JPH07264580A (en) 1994-03-17 1995-10-13 Toshiba Corp Method for transmitting video signal and video signal transmitter and receiver
US5874997A (en) * 1994-08-29 1999-02-23 Futuretel, Inc. Measuring and regulating synchronization of merged video and audio data
US5956321A (en) * 1995-03-16 1999-09-21 Kabushiki Kaisha Toshiba Stream scheduling system for real time stream server
US5974223A (en) * 1995-04-08 1999-10-26 Sony Corporation Method of and apparatus for data recording, method of and apparatus for data reproduction, recording medium, and method of and apparatus for data transmission
US5535209A (en) * 1995-04-10 1996-07-09 Digital Equipment Corporation Method and apparatus for transporting timed program data using single transport schedule
WO1997010656A1 (en) * 1995-09-14 1997-03-20 Fujitsu Network Communications, Inc. Transmitter controlled flow control for buffer allocation in wide area atm networks
JP3068002B2 (en) 1995-09-18 2000-07-24 沖電気工業株式会社 Image encoding device, image decoding device, and image transmission system
JP3545110B2 (en) * 1995-09-26 2004-07-21 富士通株式会社 Communication service quality control method
JPH09116903A (en) * 1995-10-16 1997-05-02 Nippon Telegr & Teleph Corp <Ntt> Hierarchical encoder and hierarchical decoder
US6122668A (en) * 1995-11-02 2000-09-19 Starlight Networks Synchronization of audio and video signals in a live multicast in a LAN
US5754849A (en) * 1996-01-30 1998-05-19 Wayfarer Communications, Inc. Self-describing object providing dynamic manipulation of heterogeneous data values and semantic identity between memory and transmission representations
JPH09261613A (en) * 1996-03-26 1997-10-03 Mitsubishi Electric Corp Data reception/reproducing device
JPH09298734A (en) * 1996-04-30 1997-11-18 Matsushita Electric Ind Co Ltd Video on-demand system
US5864678A (en) 1996-05-08 1999-01-26 Apple Computer, Inc. System for detecting and reporting data flow imbalance between computers using grab rate outflow rate arrival rate and play rate
US6678311B2 (en) * 1996-05-28 2004-01-13 Qualcomm Incorporated High data CDMA wireless communication system using variable sized channel codes
US6396804B2 (en) * 1996-05-28 2002-05-28 Qualcomm Incorporated High data rate CDMA wireless communication system
US5909434A (en) * 1996-05-31 1999-06-01 Qualcomm Incorporated Bright and burst mode signaling data transmission in an adjustable rate wireless communication system
JP3668556B2 (en) * 1996-06-13 2005-07-06 ソニー株式会社 Digital signal encoding method
KR0169248B1 (en) * 1996-07-24 1999-02-01 양승택 Message sending apparatus and message sending controlling method in packet internetwork
KR0178766B1 (en) * 1996-09-02 1999-05-15 삼성전자주식회사 Apparatus for digital interface with transmission function of a non-compression digital data
US5928330A (en) * 1996-09-06 1999-07-27 Motorola, Inc. System, device, and method for streaming a multimedia file
US5751741A (en) * 1996-11-20 1998-05-12 Motorola, Inc. Rate-adapted communication system and method for efficient buffer utilization thereof
US6480541B1 (en) * 1996-11-27 2002-11-12 Realnetworks, Inc. Method and apparatus for providing scalable pre-compressed digital video with reduced quantization based artifacts
US6124878A (en) * 1996-12-20 2000-09-26 Time Warner Cable, A Division Of Time Warner Enterainment Company, L.P. Optimum bandwidth utilization in a shared cable system data channel
US5960452A (en) * 1996-12-23 1999-09-28 Symantec Corporation Optimizing access to multiplexed data streams on a computer system with limited memory
US6011779A (en) * 1996-12-30 2000-01-04 Hyundai Electronics America ATM switch queuing system
US6014706A (en) * 1997-01-30 2000-01-11 Microsoft Corporation Methods and apparatus for implementing control functions in a streamed video display system
JPH10215342A (en) 1997-01-31 1998-08-11 Canon Inc Image display method and device
US6092115A (en) * 1997-02-07 2000-07-18 Lucent Technologies Inc. Method for supporting per-connection queuing for feedback-controlled traffic
JP3003618B2 (en) * 1997-03-19 2000-01-31 日本電気株式会社 Video transmission / reception device
US6081843A (en) * 1997-03-20 2000-06-27 Nokia Telecommunications System using simulation cell and simulation buffer for regulating cell transfer rate according to occupancy level of the simulation buffer
US6240103B1 (en) * 1997-03-21 2001-05-29 Scientific-Atlanta, Inc. Method and apparatus for detecting and preventing bandwidth overflow in a statistical multiplexer
JP4203140B2 (en) * 1997-03-25 2008-12-24 パナソニック株式会社 Stream data transfer method and system
KR100302263B1 (en) * 1997-03-25 2001-09-22 모리시타 요이찌 Stream data transmission method and system
US6269078B1 (en) 1997-04-04 2001-07-31 T. V. Lakshman Method and apparatus for supporting compressed video with explicit rate congestion control
JPH10294939A (en) * 1997-04-22 1998-11-04 Canon Inc System and device for image transmission
US6181821B1 (en) * 1997-04-30 2001-01-30 Massachusetts Institute Of Technology Predictive source encoding and multiplexing
DE69810250T2 (en) * 1997-05-26 2003-10-09 Koninklijke Philips Electronics N.V., Eindhoven SYSTEM FOR PLAYING BACK DATA IN A DATA FLOW SERVER
JPH10336626A (en) * 1997-05-30 1998-12-18 Nec Software Ltd Transfer method and transfer device for video data
US6310857B1 (en) * 1997-06-16 2001-10-30 At&T Corp. Method and apparatus for smoothing and multiplexing video data flows
US6014694A (en) * 1997-06-26 2000-01-11 Citrix Systems, Inc. System for adaptive video/audio transport over a network
US6573907B1 (en) * 1997-07-03 2003-06-03 Obvious Technology Network distribution and management of interactive video and multi-media containers
JP3547944B2 (en) * 1997-07-17 2004-07-28 Kddi株式会社 Dubbing data transmission device for digital VTR
US6065104A (en) * 1997-07-23 2000-05-16 S3 Incorporated Method of embedding page address translation entries within a sequentially accessed digital audio data stream
JPH11308271A (en) * 1998-04-21 1999-11-05 Canon Inc Data communication system, receiver, control method, storage medium and data communication system
US6701372B2 (en) * 1997-08-22 2004-03-02 Canon Kabushiki Kaisha Data communication apparatus and method
US6324165B1 (en) * 1997-09-05 2001-11-27 Nec Usa, Inc. Large capacity, multiclass core ATM switch architecture
JP3472115B2 (en) * 1997-11-25 2003-12-02 Kddi株式会社 Video data transmission method and apparatus using multi-channel
JP3478100B2 (en) * 1997-12-09 2003-12-10 三菱電機株式会社 Radio channel allocation apparatus and radio channel allocation method
JPH11187367A (en) * 1997-12-19 1999-07-09 Nec Corp Video transmitter, video receiver and video transmitting system using these
US6285661B1 (en) * 1998-01-28 2001-09-04 Picturetel Corporation Low delay real time digital video mixing for multipoint video conferencing
US6216173B1 (en) * 1998-02-03 2001-04-10 Redbox Technologies Limited Method and apparatus for content processing and routing
JPH11313301A (en) * 1998-02-27 1999-11-09 Hitachi Ltd Program distribution system, program distributor, program quality converter and program receiver
EP0939545A2 (en) 1998-02-27 1999-09-01 Hitachi, Ltd. Video service system
US6373855B1 (en) 1998-03-05 2002-04-16 Intel Corporation System and method for using audio performance to control video bandwidth
JPH11261589A (en) * 1998-03-13 1999-09-24 Fujitsu Ltd Atm network system
US6895048B2 (en) * 1998-03-20 2005-05-17 International Business Machines Corporation Adaptive encoding of a sequence of still frames or partially still frames within motion video
IL123906A0 (en) * 1998-03-31 1998-10-30 Optibase Ltd Method for synchronizing audio and video streams
JP4366725B2 (en) 1998-04-01 2009-11-18 ソニー株式会社 Image signal processing apparatus and method, and image signal recording apparatus and method
US6104441A (en) * 1998-04-29 2000-08-15 Hewlett Packard Company System for editing compressed image sequences
JPH11341477A (en) * 1998-05-25 1999-12-10 Niles Parts Co Ltd Image storage processing unit
DE69926689T2 (en) 1998-06-18 2006-06-08 Sony Corp. Apparatus and method for transmitting information, apparatus and method for receiving information, apparatus for providing a computer-readable program and television transmission system
US6584509B2 (en) * 1998-06-23 2003-06-24 Intel Corporation Recognizing audio and video streams over PPP links in the absence of an announcement protocol
US6850564B1 (en) * 1998-06-26 2005-02-01 Sarnoff Corporation Apparatus and method for dynamically controlling the frame rate of video streams
EP1095520A2 (en) * 1998-06-29 2001-05-02 Limt Technology AB Method and apparatus for splicing data streams
US6097697A (en) * 1998-07-17 2000-08-01 Sitara Networks, Inc. Congestion control
JP3841246B2 (en) * 1998-07-24 2006-11-01 Kddi株式会社 Video hierarchical encoding device
JP2000067450A (en) * 1998-08-20 2000-03-03 Pioneer Electronic Corp Disk player
JP2000078573A (en) * 1998-09-03 2000-03-14 Hitachi Ltd Hierarchical encoded data distribution device
US6622171B2 (en) * 1998-09-15 2003-09-16 Microsoft Corporation Multimedia timeline modification in networked client/server systems
GB9821792D0 (en) * 1998-10-06 1998-12-02 Sgs Thomson Microelectronics Data transfer
US6445701B1 (en) * 1998-10-09 2002-09-03 Microsoft Corporation Channel access scheme for use in network communications
US6618363B1 (en) * 1998-10-09 2003-09-09 Microsoft Corporation Method for adapting video packet generation and transmission rates to available resources in a communications network
FR2784844B1 (en) * 1998-10-14 2002-03-29 France Telecom METHOD FOR SWITCHING OVER THE VIDEO COMPONENT (S) OF A FIRST DIGITAL AUDIOVISUAL PROGRAM ONTO THE COMPONENT (S) OF A SECOND DIGITAL AUDIOVISUAL PROGRAM
KR100310055B1 (en) * 1998-10-28 2001-12-17 구자홍 Device and method for changing recording speed of optical disc recorder / player
JP2000151705A (en) 1998-11-16 2000-05-30 Dainippon Printing Co Ltd Information distribution system and server therefor
US6637031B1 (en) 1998-12-04 2003-10-21 Microsoft Corporation Multimedia presentation latency minimization
JP2000183958A (en) 1998-12-10 2000-06-30 Canon Inc Communication controller and its method and storage medium and system
EP1021044A1 (en) * 1999-01-12 2000-07-19 Deutsche Thomson-Brandt Gmbh Method and apparatus for encoding or decoding audio or video frame data
JP2000228669A (en) 1999-02-08 2000-08-15 Hitachi Ltd Stream data delivery method in stream delivery system
US6600737B1 (en) * 1999-02-11 2003-07-29 Mediaring Ltd. Bandwidth protection for voice over IP
EP1033846A1 (en) * 1999-03-01 2000-09-06 Alcatel Process for controlling uplink packet transmission in a wireless communication network
US6625119B1 (en) * 1999-03-17 2003-09-23 3Com Corporation Method and system for facilitating increased call traffic by switching to a low bandwidth encoder in a public emergency mode
WO2000055854A1 (en) * 1999-03-17 2000-09-21 Kabushiki Kaisha Toshiba Method for recording stream data and its data structure
US6470378B1 (en) 1999-03-31 2002-10-22 Intel Corporation Dynamic content customization in a clientserver environment
US7086077B2 (en) 1999-04-01 2006-08-01 Sedna Patent Services, Llc Service rate change method and apparatus
US6754189B1 (en) * 1999-04-08 2004-06-22 Lucent Technologies Inc. Method of queue length based burst management in wireless communication systems
EP1045555A3 (en) 1999-04-09 2003-04-23 Sun Microsystems, Inc. Method and apparatus for management of communications over media of finite bandwidth
US6614843B1 (en) * 1999-04-15 2003-09-02 Diva Systems Corporation Stream indexing for delivery of interactive program guide
US6778499B1 (en) * 1999-06-18 2004-08-17 Nortel Networks Limited Method and apparatus for enabling the smooth transmission of bursty data in a wireless communications system
US6501797B1 (en) 1999-07-06 2002-12-31 Koninklijke Phillips Electronics N.V. System and method for improved fine granular scalable video using base layer coding information
IT246858Y1 (en) * 1999-07-16 2002-04-10 Italtinto Srl DISPENSING-DOSING MACHINE FOR PAINT OR SIMILAR DYES WITH CENTRAL SIMULTANEOUS DISPENSING GROUP OF DYES AND CLEANING SYSTEM
US7380015B1 (en) * 1999-09-10 2008-05-27 Kdd Corporation Apparatus and method for compression-transmitting and decoding picture information and storage medium stored its control programs
US6697369B1 (en) * 1999-09-28 2004-02-24 Lucent Technologies Inc Admission control adjustment in data networks using maximum cell count
US7522631B1 (en) * 1999-10-26 2009-04-21 Qualcomm, Incorporated Method and apparatus for efficient data transmission control in a wireless voice-over-data communication system
US7206580B2 (en) * 1999-11-04 2007-04-17 Qualcomm Incorporated Method and apparatus for performing handoff in a high speed communication system
JP2001144802A (en) 1999-11-11 2001-05-25 Canon Inc Apparatus, method and system for data communication and storag medium
US7203732B2 (en) * 1999-11-11 2007-04-10 Miralink Corporation Flexible remote data mirroring
US6700893B1 (en) * 1999-11-15 2004-03-02 Koninklijke Philips Electronics N.V. System and method for controlling the delay budget of a decoder buffer in a streaming data receiver
GB9928023D0 (en) 1999-11-26 2000-01-26 British Telecomm Video transmission
CA2291835A1 (en) 1999-12-06 2001-06-06 Nortel Networks Corporation Load adaptive buffer management in packet networks
US6593930B1 (en) * 1999-12-16 2003-07-15 Intel Corporation Method and apparatus to execute a memory maintenance operation during a screen blanking interval
KR100677083B1 (en) 2000-01-27 2007-02-01 삼성전자주식회사 Transmission/receipt data processing method for inhibiting error propagation in digital image data communication system and computer-readable medium therefor
DE60017356T2 (en) 2000-03-02 2005-06-02 Matsushita Electric Industrial Co., Ltd., Kadoma Data transmission over an unreliable network
US7106906B2 (en) 2000-03-06 2006-09-12 Canon Kabushiki Kaisha Moving image generation apparatus, moving image playback apparatus, their control method, and storage medium
JP2001257715A (en) * 2000-03-09 2001-09-21 Nippon Hoso Kyokai <Nhk> Storage transmission terminal
US7058723B2 (en) * 2000-03-14 2006-06-06 Adaptec, Inc. Congestion control for internet protocol storage
US6493388B1 (en) 2000-04-19 2002-12-10 General Instrument Corporation Rate control and buffer protection for variable bit rate video programs over a constant rate channel
US6813275B1 (en) 2000-04-21 2004-11-02 Hewlett-Packard Development Company, L.P. Method and apparatus for preventing underflow and overflow across an asynchronous channel
US6738386B1 (en) * 2000-05-11 2004-05-18 Agere Systems Inc. Controlled latency with dynamically limited queue depth based on history and latency estimation
GB2362532B (en) 2000-05-15 2004-05-05 Nokia Mobile Phones Ltd Video coding
US7260826B2 (en) * 2000-05-31 2007-08-21 Microsoft Corporation Resource allocation in multi-stream IP network for optimized quality of service
US6973501B1 (en) * 2000-06-21 2005-12-06 Adc Telecommunications, Inc. Reducing loss in transmission quality under changing network conditions
US7003794B2 (en) 2000-06-27 2006-02-21 Bamboo Mediacasting, Inc. Multicasting transmission of multimedia information
GB2366464A (en) 2000-08-14 2002-03-06 Nokia Mobile Phones Ltd Video coding using intra and inter coding on the same data
US6909693B1 (en) * 2000-08-21 2005-06-21 Nortel Networks Limited Performance evaluation and traffic engineering in IP networks
GB2367219A (en) 2000-09-20 2002-03-27 Vintage Global Streaming of media file data over a dynamically variable bandwidth channel
US6993604B2 (en) * 2000-11-15 2006-01-31 Seagate Technology Llc Dynamic buffer size allocation for multiplexed streaming
US7277955B2 (en) * 2000-12-22 2007-10-02 Verizon Corporate Services Group Inc. Streaming content
US6920175B2 (en) 2001-01-03 2005-07-19 Nokia Corporation Video coding architecture and methods for using same
US20020122491A1 (en) * 2001-01-03 2002-09-05 Marta Karczewicz Video decoder architecture and method for using same
US20020131496A1 (en) * 2001-01-18 2002-09-19 Vinod Vasudevan System and method for adjusting bit rate and cost of delivery of digital data
JP2004532540A (en) * 2001-03-05 2004-10-21 インタービデオインコーポレイテッド System and method for error resilient coding
EP1241891A1 (en) 2001-03-13 2002-09-18 eJay AG Apparatus and method for transmitting audio and/or video data
US7626999B2 (en) * 2001-03-16 2009-12-01 Tellabs San Jose, Inc. Apparatus and methods for circuit emulation of a point-to-point protocol operating over a multi-packet label switching network
US20020167942A1 (en) 2001-05-04 2002-11-14 Cathy Fulton Server-site response time computation for arbitrary applications
TW511365B (en) 2001-05-15 2002-11-21 Corbett Wall Method allowing individual user to record song and forward to others for listening by connecting to a service provider with telecommunication device signal
AU2002314309A1 (en) * 2001-06-11 2002-12-23 C-Burn Systems Ltd Selecting tracks from a jukebox via a wireless communications device
US7191246B2 (en) * 2001-07-18 2007-03-13 Sharp Laboratories Of America, Inc. Transmission rate selection for a network of receivers having heterogenous reception bandwidth
US7106758B2 (en) * 2001-08-03 2006-09-12 Adc Telecommunications, Inc. Circuit and method for service clock recovery
US7142509B1 (en) 2001-09-12 2006-11-28 Extreme Networks Method and apparatus providing for delivery of streaming media
CN1557072A (en) * 2001-09-21 2004-12-22 ���˹���Ѷ��� Data communications method and system using buffer size to calculate transmission rate for congestion control
US20030076858A1 (en) * 2001-10-19 2003-04-24 Sharp Laboratories Of America, Inc. Multi-layer data transmission system
US6898313B2 (en) * 2002-03-06 2005-05-24 Sharp Laboratories Of America, Inc. Scalable layered coding in a multi-layer, compound-image data transmission system
ATE490649T1 (en) * 2002-03-27 2010-12-15 British Telecomm VIDEO CODING AND TRANSMISSION
EP1359722A1 (en) * 2002-03-27 2003-11-05 BRITISH TELECOMMUNICATIONS public limited company Data streaming system and method
CA2479585A1 (en) * 2002-03-27 2003-10-09 Timothy Ralph Jebb Data structure for data streaming system
US7039712B2 (en) * 2002-10-16 2006-05-02 Microsoft Corporation Network connection setup procedure for traffic admission control and implicit network bandwidth reservation
US20050010697A1 (en) * 2002-12-30 2005-01-13 Husam Kinawi System for bandwidth detection and content switching
US20040181817A1 (en) * 2003-03-12 2004-09-16 Larner Joel B. Media control system and method
GB0306296D0 (en) * 2003-03-19 2003-04-23 British Telecomm Data transmission
US7444419B2 (en) 2003-10-10 2008-10-28 Microsoft Corporation Media stream scheduling for hiccup-free fast-channel-change in the presence of network chokepoints
US7542435B2 (en) * 2004-05-12 2009-06-02 Nokia Corporation Buffer level signaling for rate adaptation in multimedia streaming
KR20060088303A (en) * 2005-02-01 2006-08-04 엘지전자 주식회사 Apparatus and method recording/playing moving picture in digital broadcasting receiver

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5822524A (en) 1995-07-21 1998-10-13 Infovalue Computing, Inc. System for just-in-time retrieval of multimedia files over computer networks by transmitting data packets at transmission rate determined by frame size
US5918020A (en) 1997-02-28 1999-06-29 International Business Machines Corporation Data processing system and method for pacing information transfers in a communications network

Cited By (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1376299A3 (en) * 2002-06-24 2007-08-29 Microsoft Corporation Client-side caching of streaming media content
US7725557B2 (en) 2002-06-24 2010-05-25 Microsoft Corporation Client-side caching of streaming media content
JP2004080785A (en) * 2002-08-13 2004-03-11 Microsoft Corp Quick digital channel change
WO2004021668A1 (en) * 2002-08-28 2004-03-11 Koninklijke Philips Electronics N.V. Method of streaming multimedia data
US7733830B2 (en) 2002-10-14 2010-06-08 Nokia Corporation Enhancing streaming media reception for a mobile device during cell reselection
WO2004039034A1 (en) * 2002-10-24 2004-05-06 Telefonaktiebolaget Lm Ericsson (Publ) System and method for reducing initial buffering time for a streaming application
FR2853483A1 (en) * 2003-04-07 2004-10-08 Canon Kk Multimedia data e.g. video, packet transmission managing process, involves transmitting interruption message to client device, when size of data packet received from client device is greater than available memory space in server
WO2005025223A1 (en) * 2003-09-10 2005-03-17 Thales Uk Plc Video system
US7619972B2 (en) 2003-09-10 2009-11-17 Thales Uk Plc Video system
WO2005059711A2 (en) 2003-12-16 2005-06-30 Infocus Corporation Controlling a transmission of image data to a display device
EP1695253A4 (en) * 2003-12-16 2007-10-03 Infocus Corp System and method for controlling a transmission of image data to a display device
EP1695253A2 (en) * 2003-12-16 2006-08-30 Infocus Corporation System and method for controlling a transmission of image data to a display device
US7797369B2 (en) 2003-12-16 2010-09-14 Seiko Epson Corporation System and method for controlling a transmission of image data to a display device
US11470138B2 (en) 2004-04-30 2022-10-11 DISH Technologies L.L.C. Apparatus, system, and method for multi-bitrate content streaming
US11991234B2 (en) 2004-04-30 2024-05-21 DISH Technologies L.L.C. Apparatus, system, and method for multi-bitrate content streaming
US11677798B2 (en) 2004-04-30 2023-06-13 DISH Technologies L.L.C. Apparatus, system, and method for multi-bitrate content streaming
JP2007537640A (en) * 2004-05-13 2007-12-20 ノキア コーポレイション Cooperation between bit rate adaptation of packetized data and retransmission of data packets
EP1599016A1 (en) * 2004-05-20 2005-11-23 Mitsumi Electric Co., Ltd. Streaming content reproduction method and internet connection device using the same
EP1793555A1 (en) * 2005-12-02 2007-06-06 Alcatel Lucent Faster than real time streaming in a playlist context
WO2008019606A1 (en) * 2006-07-28 2008-02-21 Tencent Technology (Shenzhen) Company Limited A method and apparatus for adjusting the quality of video communication of instant messaging
FR2905221A1 (en) * 2006-08-28 2008-02-29 Canon Kk Multimedia content i.e. video, transmitting method for e.g. microcomputer, involves determining encoding rate higher than another encoding rate, where encoding part of content is based on former rate and transmission rate of encoded part
WO2009088341A1 (en) * 2008-01-08 2009-07-16 Axis Ab Network offloading with reduced packet loss
US8761164B2 (en) 2008-01-08 2014-06-24 Axis Ab Network offloading with reduced packet loss
WO2011156516A3 (en) * 2010-06-08 2012-03-29 Gibby Media Group Inc. Systems and methods for real-time and on-demand multimedia streaming
WO2011156516A2 (en) * 2010-06-08 2011-12-15 Gibby Media Group Inc. Systems and methods for real-time and on-demand multimedia streaming
EP3036911A4 (en) * 2013-08-23 2017-04-12 Samsung Electronics Co., Ltd. Method, terminal, and system for reproducing content
US9807140B2 (en) 2013-08-23 2017-10-31 Samsung Electronics Co., Ltd. Method, terminal, and system for reproducing content
US10135898B2 (en) 2013-08-23 2018-11-20 Samsung Electronics Co., Ltd. Method, terminal, and system for reproducing content
EP3739584B1 (en) * 2014-01-29 2024-08-21 Google LLC Media application backgrounding
CN104135688A (en) * 2014-07-24 2014-11-05 广州金山网络科技有限公司 Method, user equipment and system for video playing
CN105451075A (en) * 2014-08-27 2016-03-30 北京大学 Video quality control method and video quality control device

Also Published As

Publication number Publication date
EP1338131A2 (en) 2003-08-27
AU2002222097A1 (en) 2002-06-11
ES2331111T3 (en) 2009-12-22
WO2002045372A3 (en) 2002-09-06
CN100420250C (en) 2008-09-17
US20040153951A1 (en) 2004-08-05
EP1338131B1 (en) 2009-08-19
JP2004515163A (en) 2004-05-20
CN1478349A (en) 2004-02-25
DE60139632D1 (en) 2009-10-01
JP5373131B2 (en) 2013-12-18
SG146434A1 (en) 2008-10-30
JP2012142956A (en) 2012-07-26
US7974200B2 (en) 2011-07-05
KR100903457B1 (en) 2009-06-18
KR20030055323A (en) 2003-07-02
CA2428325A1 (en) 2002-06-06
CA2428325C (en) 2011-08-30

Similar Documents

Publication Publication Date Title
CA2428325C (en) Transmitting and receiving real-time data
EP2919453B1 (en) Video stream switching
JP6016778B2 (en) How to recover content streamed in chunks
EP2360924A1 (en) A digital multimedia data transmission device and method
US20080133766A1 (en) Method and apparatus for streaming media to a plurality of adaptive client devices
US20080133744A1 (en) Multimedia data streaming server and method for dynamically changing amount of transmitting data in response to network bandwidth
KR20030071815A (en) Method and system for buffering streamed data
EP2437458A1 (en) Content delivery
WO2004015550A2 (en) Data streaming system and method
EP1623553B1 (en) Data transmission over a network having initiallly undetermined transmission capacity
CN101771865A (en) Video and audio control response and bandwidth adapting method, server and storage medium
EP3371978B1 (en) Contiguous streaming of media stream
US11622135B2 (en) Bandwidth allocation for low latency content and buffered content

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ OM PH PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG US UZ VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
WWE Wipo information: entry into national phase

Ref document number: 10415819

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 2428325

Country of ref document: CA

WWE Wipo information: entry into national phase

Ref document number: 2001999095

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2002546384

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 818/CHENP/2003

Country of ref document: IN

WWE Wipo information: entry into national phase

Ref document number: 1020037007126

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 018197523

Country of ref document: CN

WWP Wipo information: published in national office

Ref document number: 1020037007126

Country of ref document: KR

WWP Wipo information: published in national office

Ref document number: 2001999095

Country of ref document: EP

REG Reference to national code

Ref country code: DE

Ref legal event code: 8642