[go: nahoru, domu]

EP2302845B1 - Method and device for determining a jitter buffer level - Google Patents

Method and device for determining a jitter buffer level Download PDF

Info

Publication number
EP2302845B1
EP2302845B1 EP09171120A EP09171120A EP2302845B1 EP 2302845 B1 EP2302845 B1 EP 2302845B1 EP 09171120 A EP09171120 A EP 09171120A EP 09171120 A EP09171120 A EP 09171120A EP 2302845 B1 EP2302845 B1 EP 2302845B1
Authority
EP
European Patent Office
Prior art keywords
frame
payload size
basis
current frame
parameter
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
EP09171120A
Other languages
German (de)
French (fr)
Other versions
EP2302845A1 (en
Inventor
Henrik Fahlberg Lundin
Stefan Holmer
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
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
Application filed by Google LLC filed Critical Google LLC
Priority to EP09171120A priority Critical patent/EP2302845B1/en
Priority to PCT/EP2010/063818 priority patent/WO2011036123A1/en
Priority to US13/497,625 priority patent/US8665745B2/en
Publication of EP2302845A1 publication Critical patent/EP2302845A1/en
Application granted granted Critical
Publication of EP2302845B1 publication Critical patent/EP2302845B1/en
Priority to US14/174,916 priority patent/US9042261B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • H04L43/087Jitter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • H04L43/106Active monitoring, e.g. heartbeat, ping or trace-route using time related information in packets, e.g. by adding timestamps
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9005Buffering arrangements using dynamic buffer space allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9023Buffering arrangements for implementing a jitter-buffer

Definitions

  • the present invention generally relates to electrical telecommunication and more particularly to packet networks using the Internet protocol (IP).
  • IP Internet protocol
  • the present invention relates to data packet delivery in such networks.
  • each image, or frame may be encoded into one or several data packets that are sent with minimal delay ("back-to-back") to the IP network.
  • the frames are usually produced at a constant frame rate, wherefore the packet clusters are sent at the same constant rate.
  • the packets arrive with a variable delay. This delay is mainly due to the delays inflicted by the IP network and is often referred to as jitter.
  • the severity of the jitter can vary significantly depending on network type and current network conditions. For example, the variance of the packet delay can change with several orders of magnitude from one network type to another, or even from one time to another on the same network path.
  • the decoder In order to reproduce a video stream that is true to the original that was transmitted from the source(s), the decoder (or receiver) must be provided with data packet clusters at the same constant rate with which the data packet clusters were sent.
  • a device often referred to as a jitter buffer may be introduced in the receiver.
  • the jitter buffer may be capable of de-jittering the incoming stream of packets and providing a constant flow of data to the decoder. This is done by holding the packets in a buffer, thus introducing delay, so that also the packets that were subject to larger delays will have arrived before their respective time-of-use.
  • the system includes a plurality of network nodes.
  • a plurality of circuit emulation data flows are established between a first network node and at least a second network node.
  • Different data transmission rates are assigned to each circuit emulation data flow such that the frequency of communicated packets is different at least for each circuit emulation data flow used for timing recovery to make the plurality of circuit emulation data flows substantially independent of each other.
  • US6792047 relates to real time processing and streaming of spliced encoded MPEG video and associated audio.
  • the inventors have realized that it would be desirable to achieve a method for determining a buffer level of a jitter data buffer comprised in a receiver adapted to sequentially receive data packets from a communications network, wherein frames are encoded into the data packets, which method is capable of determining the appropriate buffer level in various network conditions. Furthermore, the inventors have realized that it would be desirable to determine the buffer level of a jitter data buffer on the basis of a first part of frame arrival delay related to payload size variation between frames and a second part related to the amount of cross-traffic in the communications network.
  • a method for determining a buffer level of a jitter data buffer comprised in a receiver adapted to sequentially receive data packets from a communications network, wherein frames are encoded into the data packets, each frame comprising timestamp information T and payload size information L .
  • the buffer level is determined on the basis of a first part of frame arrival delay related to payload size variation between frames and a second part related to the amount of crosstraffic in the communications network.
  • the method may comprise, for each frame, determining a frame payload size difference ⁇ L by comparing L of the current frame with L of a previous frame, determining a frame inter-arrival time ⁇ t by comparing the measured arrival time of the current frame with the measured arrival time of a previous frame, determining a temporal frame spacing ⁇ T by comparing T of the current frame with T of a previous frame, and/or determining a frame network transit delay d on the basis of the difference between ⁇ t and ⁇ T .
  • the method may comprise, for each frame, estimating a set of parameters of a linear relationship between ⁇ L and d on the basis of ⁇ L and d for the current frame and ⁇ L and d determined for at least one previous frame.
  • a first parameter and a second parameter comprised in the set may be adapted to be indicative of the first and second part, respectively.
  • the method may comprise, for each frame, estimating a maximum frame payload size and an average frame payload size on the basis of L of the current frame and L of at least one previous frame.
  • the buffer level may be determined on the basis of the maximum frame payload size, the average frame payload size and the parameters of the linear relationship.
  • Such a configuration enables to determine an appropriate buffer level of the jitter buffer in various network conditions, by determining the buffer level on the basis of statistical measures of current network conditions.
  • both frame arrival delay related to payload size variation between frames ('self-inflicted' frame arrival delay) and a frame arrival delay related to the amount of crosstraffic in the communications network may be taken into account in the determination of the buffer level. This is generally not the case in known devices and methods.
  • all of the frames encoded in the arriving packets in general contributes with information that may be utilized for estimating the set of parameters of a linear relationship between ⁇ L and d . In this manner, an improved accuracy and an increased adaptability with regards to varying network conditions may be achieved.
  • a receiver adapted to sequentially receive data packets from a communications network. Frames are encoded into the data packets, each frame comprising timestamp information T and payload size information L .
  • the receiver may comprise a jitter data buffer and a processing unit adapted to determine a buffer level of the jitter data buffer on the basis of a first part of frame arrival delay related to payload size variation between frames and a second part related to the amount of crosstraffic in the communications network.
  • the receiver may comprise a time measuring unit adapted to measure the arrival time of each frame.
  • the receiver may be adapted to, for each frame, determine a frame payload size difference ⁇ L by comparing L of the current frame with L of a previous frame, determine a frame inter-arrival time ⁇ t by comparing the measured arrival time of the current frame with the measured arrival time of a previous frame, determine a temporal frame spacing ⁇ T by comparing T of the current frame with T of a previous frame, and/or determine a frame network transit delay d on the basis of the difference between ⁇ t and ⁇ T .
  • the receiver, or the processing unit may be adapted to, for each frame, estimate a set of parameters of a linear relationship between ⁇ L and d on the basis of ⁇ L and d for the current frame and ⁇ L and d determined for at least one previous frame.
  • a first parameter and a second parameter comprised in the set are indicative of the first and second part, respectively.
  • the receiver, or the processing unit may be adapted to, for each frame, estimate a maximum frame payload size and an average frame payload size on the basis of L of the current frame and L of at least one previous frame.
  • the buffer level may be determined on the basis of the maximum frame payload size, the average frame payload size and the parameters of the linear relationship.
  • a receiver or decoder
  • a receiver or decoder adapted to sequentially receive data packets from a communications network, which receiver (or decoder) may achieve the same or similar advantages achieved by the method according to the first aspect of the present invention.
  • a computer program product adapted to, when executed in a processor unit, perform a method according to the first aspect of the present invention or any embodiment thereof.
  • a computer-readable storage medium on which there is stored a computer program product adapted to, when executed in a processor unit, perform a method according to the first aspect of the present invention or any embodiment thereof.
  • Such a processing unit, or microprocessor may for example be comprised in a receiver, or decoder, according to the second aspect of the present invention.
  • processing unit or microprocessor may be arranged externally in relation to the receiver or decoder, with the processing unit or microprocessor being electrically connected to the receiver or decoder.
  • the first and second parameters may for example comprise a slope and a variance.
  • the estimation of the parameters of a linear relationship between between ⁇ L and d may for example be performed by means of an adaptive filter algorithm, such as adaptive linear regression, recursive least-squares estimation, a Kalman filter, etc.
  • an adaptive filter algorithm such as adaptive linear regression, recursive least-squares estimation, a Kalman filter, etc.
  • Such adaptive filter algorithms may be used in different combinations.
  • the accuracy of the estimation of the linear relationship between between ⁇ L and d may be refined by the choice of the adaptive filter algorithm(s) and/or the model parameters of the respective adaptive filter algorithm.
  • the adaptive filter algorithm(s) may be selected and/or the parameters thereof may be modified on the basis of user, capacity and/or application requirements.
  • a so called “sanity” check, or extreme outlier identification can be made on the measurements (e.g. frame payload sizes, arrival time differences) prior to performing an estimation of a set of parameters of a linear relationship between ⁇ L and d . In this manner, the effect of undesired, spurious events in the data packet delivery in the communication network may be avoided or mitigated.
  • An indication of a discontinuous change in a parameter of the communications network may be sensed.
  • the parameter may be indicative of traffic conditions of the communications network.
  • so called change detection may be performed to assess whether a discontinuous, or abrupt, change has occurred in traffic conditions of the communications network.
  • Such change detection may be performed in various manners, for example in accordance with user, capacity and/or application requirements.
  • change detection may be performed by means of a CUSUM test.
  • At least one model parameter used in the estimation of the parameters of a linear relationship between ⁇ L and d may be reset. In this manner, re-convergence of the process of estimating a set of parameters of a linear relationship between ⁇ L and d for the new network conditions may be facilitated.
  • the at least one model parameter may for example comprise a Kalman covariance matrix, a noise estimate, etc., depending on implementation details.
  • T of the current frame and T of the previous frame There may be determined, on the basis of T of the current frame and T of the previous frame, whether the previous frame was transmitted earlier with regards to transmission order compared to the current frame. In other words, it may be checked whether the current frame has suffered from re-ordering. In this case, the processing of the current frame may be stopped and discarded. Subsequently, the receiver may await the arrival of the next frame for processing thereof.
  • the transmission delay of a packet or cluster of packets may be considered to be made up of two independent parts: self-inflicted delay and cross-traffic delay.
  • self-inflicted delay the payload size variations from one image (or frame) to the next generally give rise to a payload-size dependent delay variation, which is referred to in the context of some embodiments of the present invention as self-inflicted delay.
  • Any delays that arise because of other network traffic (cross-traffic) utilizing the links and queues of the network are referred to in the context of some embodiments of the present invention as the cross-traffic delay.
  • the cross-traffic delay may appear as quasi-random and independent of the (video) traffic.
  • the present invention is based on separating the packet delay contributions into self-inflicted and cross-traffic delays, estimating appropriate parameters describing the current conditions for the self-inflicted delay and the cross-traffic delay, and determining an appropriate jitter buffer level based on the estimates;
  • the encoder may operate on clusters of packets that make up each image.
  • a group of packets is referred to as a 'frame'.
  • the arrival time may be determined. Comparing the arrival time with the arrival time of a previously received frame provides a frame inter-arrival time ⁇ t .
  • each frame comprises some kind of timing information, or time-stamp information, that indicates the production time of the frame.
  • timing information may for example comprise the timestamp field in a real-time transport protocol (RTP) header.
  • RTP real-time transport protocol
  • Such timing information may provide a nominal temporal frame spacing between the present frame and a previously received frame, denoted ⁇ T .
  • the nominal temporal frame spacing ⁇ T may for example comprise the time between capturing the two frames from a camera.
  • d a deviation measure, or a frame network transit delay
  • each frame comprises payload size information L .
  • the difference ⁇ L between the payload size between the currently received frame and a previously received frame may be determined.
  • the self-inflicted delay and the cross-traffic delay described in the foregoing may be described as a part of d that can be attributed to ⁇ L and a part that generally cannot be attributed to ⁇ L .
  • the current frame is larger than the previous frame, and the current frame may generally be expected to be later than the previous frame. This would result in an increased ⁇ t , resulting in a larger value of d .
  • the cross-traffic related delay generally affects ⁇ t in ways that are difficult to correlate with ⁇ L .
  • d ( k ) and ⁇ L may be represented by a straight line with offset A and slope B, with a scattering around the line determined by ⁇ 2 .
  • Fig. 1 there is shown a schematic exemplifying straight line and scatter plot of the frame network transit delay d versus the frame payload size difference ⁇ L .
  • the quantities d and ⁇ L may for example be given in units of ms and bytes, respectively.
  • the worst case frame inter-arrival time may be estimated.
  • a size of the jitter buffer may be set that mitigates the jitter.
  • an embodiment of the present invention may comprise collecting measurements of d ( k ) and ⁇ L ( k ) for a number of frames k, estimating parameters A , B , and ⁇ 2 , storing or estimating the largest expected frame size difference ⁇ L , and determining a jitter buffer level based on the estimates.
  • FIG. 2A there is shown a schematic view of a receiver 200 according to an exemplifying embodiment of the present invention.
  • the receiver 200 is communicating in a wireless manner with a communications network 202 via an air interface 201.
  • the receiver comprises a data jitter buffer 203.
  • the receiver may comprise a time-measuring unit 204 and a processing unit 205.
  • the communication between the receiver 200 and the communications network 202 may be performed in a non-wired (e.g. by means of wireless radiowave communications) or a wired (e.g. by means of electrical conductors or optical fibers or the like) fashion.
  • the receiver 200 may be adapted to sequentially receive data packets from the communications network 202, wherein frames 206 are encoded into the data packets, each frame 206 comprising timestamp information T 206a and payload size information L 206b. Each frame 206 may alternatively or optionally comprise additional information.
  • the buffer level of the data jitter buffer 203 is determined on the basis of a first part of frame arrival delay related to payload size variation between frames and a second part related to the amount of crosstraffic in the communications network 202.
  • the receiver 200 may comprise a sensing unit 207, which may be adapted to sense an indication of a discontinuous change in a parameter of the communications network 202.
  • This parameter may for example be indicative of traffic conditions in the communications network 202.
  • a receiver 200 may be adapted to sequentially receive data packets from a communications network 202.
  • the data packets may be such that frames 206 are encoded in the data packets.
  • a frame payload size difference ⁇ L may be determined for each frame by comparing L of the current frame with L of a previous frame.
  • a frame inter-arrival time ⁇ t may be determined by comparing the measured arrival time of the current frame with the measured arrival time of a previous frame.
  • a temporal frame spacing ⁇ T may be determined by comparing T of the current frame with T of a previous frame.
  • a frame network transit delay d may be determined on the basis of the difference between ⁇ t and ⁇ T .
  • the method 300 may further comprise, for each frame, in step 305 estimating a set of parameters of a linear relationship between ⁇ L and d on the basis of ⁇ L and d for the current frame and ⁇ L and d determined for at least one previous frame.
  • a first parameter and a second parameter comprised in the set may be adapted to be indicative of a first part of frame arrival delay related to payload size variation between frames 206 and a second part related to the amount of crosstraffic in the communications network 202.
  • the method 300 may further comprise, for each frame, in step 306 estimating a maximum frame payload size and an average frame payload size on the basis of L of the current frame and L of at least one previous frame.
  • the method 300 may further comprise, for each frame, a step 307 of determining the buffer level on the basis of the maximum frame payload size, the average frame payload size and the parameters of the linear relationship.
  • the method 300 may comprise a step 308 comprising determining, on the basis of T of the current frame and T of the previous frame, whether the previous frame was transmitted earlier with regards to transmission order compared to the current frame.
  • the method 300 may comprise a step 309 comprising determining whether the absolute value of a difference between d for the current frame and at least one of the first part of frame arrival delay, related to payload size variation between frames, for respective previous frames exceeds a predetermined threshold value.
  • the method 300 may comprise a step 310 comprising sensing an indication of a discontinuous change in a parameter of the communications network.
  • the parameter may for example be indicative of traffic conditions in the communications network.
  • at least one model parameter used in the estimation of the parameters of a linear relationship between ⁇ L and d may be reset (step 311).
  • the method of the exemplifying embodiment can be described using three phases - inter-arrival delay calculation, parameter estimation and buffer level calculation - each phase being carried out at least once each time arrival of a frame is completed, i.e. when all the packets included in the frame have arrived at the receiver. Additionally, there may be a reset phase, carried out in the beginning of the method and also when otherwise found necessary.
  • the phases are described in the following.
  • the processing for the current frame may be stopped and the current frame may be discarded.
  • All of these times and time periods may be adjusted in order to use the same time scale, e.g., milliseconds or sample periods.
  • Another phase in the exemplifying method is to estimate the model parameters.
  • L avg k ⁇ ⁇ L avg ⁇ k - 1 + 1 - ⁇ ⁇ L .
  • L max k max ⁇ ⁇ L max ⁇ k - 1 ; L .
  • the current frame may be considered to be an extreme outlier.
  • Covariance matrix predictor update M ⁇ k
  • k - 1 M ⁇ k - 1
  • K k M ⁇ k
  • B k A k B ⁇ k - 1 A ⁇ k - 1 + K k ⁇ d - A ⁇ k - 1 + B ⁇ k - 1 ⁇ ⁇ ⁇ L .
  • m k ⁇ ⁇ m ⁇ k - 1 + 1 - ⁇ s ⁇ C 1 ⁇ ⁇ 2 ⁇ k - 1 .
  • change detection may be performed in order to assess whether an abrupt change has occurred in the network.
  • Change detection can be performed in many manners, for example by utilizing a CUSUM test.
  • a suitable set of variables may be reset.
  • k ) can be reset to its initial (large) value in order to facilitate a rapid re-convergence to the new communication network conditions.
  • the noise estimates ⁇ 2 ( k ) and/or m ( k ) can be reset.
  • FIG. 4 there are shown schematic views of computer readable digital storage mediums 400 according to exemplifying embodiments of the present invention, comprising a DVD 400a and a floppy disk 400b.
  • a computer program comprising computer code adapted to perform, when executed in a processor unit, a method according to the present invention or embodiments thereof, as has been described in the foregoing.
  • a non-volatile memory such as, but not limited to, a hard disk drive, a CD, a flash memory, magnetic tape, a USB stick, a Zip drive, etc.
  • the receiver may comprise one or more microprocessors (not shown) or some other device with computing capabilities, e.g. an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), a complex programmable logic device (CPLD), etc., in order to perform operations such as estimating a set of parameters of a linear relationship between ⁇ L and d .
  • ASIC application specific integrated circuit
  • FPGA field programmable gate array
  • CPLD complex programmable logic device
  • Such a microprocessor may alternatively or optionally be comprised in, integrated with, or be, the processing unit of the receiver.
  • the microprocessor When performing steps of different embodiments of the method of the present invention, the microprocessor typically executes appropriate software that is downloaded to the receiver and stored in a suitable storage area, such as, e.g., a Random Access Memory (RAM), a flash memory or a hard disk, or software that has been stored in a non-volatile memory, e.g., a Read Only Memory (ROM).
  • RAM Random Access Memory
  • ROM Read Only Memory
  • Such a microprocessor or processing unit may alternatively or optionally be located externally relatively to the receiver (and electrically connected to the receiver).
  • a computer program product comprising computer code adapted to perform, when executed in a processor unit, a method according to the present invention or any embodiment thereof may be stored on a computer (e.g. a server) adapted to be in communication with a receiver according to an exemplifying embodiment of the present invention.
  • the computer program may perform the method.
  • Such a configuration eliminates the need to store the computer program locally at the receiver.
  • the communication between the computer and the receiver may be implemented in a wired fashion (e.g. by means of Ethernet) or in a non-wired fashion (e.g. by means of wireless infra-red (IR) communications or other wireless optical communications, or by means of wireless radiowave communications.
  • IR wireless infra-red

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

    Technical field
  • The present invention generally relates to electrical telecommunication and more particularly to packet networks using the Internet protocol (IP). In particular, the present invention relates to data packet delivery in such networks.
  • Background
  • In a video-over-IP system, each image, or frame, may be encoded into one or several data packets that are sent with minimal delay ("back-to-back") to the IP network. The frames are usually produced at a constant frame rate, wherefore the packet clusters are sent at the same constant rate. On the receiver side the packets arrive with a variable delay. This delay is mainly due to the delays inflicted by the IP network and is often referred to as jitter. The severity of the jitter can vary significantly depending on network type and current network conditions. For example, the variance of the packet delay can change with several orders of magnitude from one network type to another, or even from one time to another on the same network path.
  • In order to reproduce a video stream that is true to the original that was transmitted from the source(s), the decoder (or receiver) must be provided with data packet clusters at the same constant rate with which the data packet clusters were sent. A device often referred to as a jitter buffer may be introduced in the receiver. The jitter buffer may be capable of de-jittering the incoming stream of packets and providing a constant flow of data to the decoder. This is done by holding the packets in a buffer, thus introducing delay, so that also the packets that were subject to larger delays will have arrived before their respective time-of-use.
  • There is an inevitable trade-off in jitter-buffers between buffer delay on the one hand and distortions due to late arrivals on the other hand. A lower buffer level, and thus a shorter delay, generally results in a larger portion of packets arriving late or even being discarded, as the packets may be considered as being too late, while a higher buffer level, and thus a longer delay, is generally detrimental in itself for two-way communication between, e.g., humans.
  • In US2007189164 , a system and a method for managing information communication in a network are described. The system includes a plurality of network nodes. A plurality of circuit emulation data flows are established between a first network node and at least a second network node. Different data transmission rates are assigned to each circuit emulation data flow such that the frequency of communicated packets is different at least for each circuit emulation data flow used for timing recovery to make the plurality of circuit emulation data flows substantially independent of each other.
  • As another example of prior art, US6792047 relates to real time processing and streaming of spliced encoded MPEG video and associated audio.
  • Summary
  • It is with respect to the above considerations and others that the present invention has been made. In particular, the inventors have realized that it would be desirable to achieve a method for determining a buffer level of a jitter data buffer comprised in a receiver adapted to sequentially receive data packets from a communications network, wherein frames are encoded into the data packets, which method is capable of determining the appropriate buffer level in various network conditions. Furthermore, the inventors have realized that it would be desirable to determine the buffer level of a jitter data buffer on the basis of a first part of frame arrival delay related to payload size variation between frames and a second part related to the amount of cross-traffic in the communications network.
  • To better address one or more of these concerns, a method and a receiver having the features defined in the independent claims are provided. Further advantageous embodiments of the present invention are defined in the dependent claims.
  • According to a first aspect of the present invention, there is provided a method for determining a buffer level of a jitter data buffer comprised in a receiver adapted to sequentially receive data packets from a communications network, wherein frames are encoded into the data packets, each frame comprising timestamp information T and payload size information L. The buffer level is determined on the basis of a first part of frame arrival delay related to payload size variation between frames and a second part related to the amount of crosstraffic in the communications network. The method may comprise, for each frame, determining a frame payload size difference ΔL by comparing L of the current frame with L of a previous frame, determining a frame inter-arrival time Δt by comparing the measured arrival time of the current frame with the measured arrival time of a previous frame, determining a temporal frame spacing ΔT by comparing T of the current frame with T of a previous frame, and/or determining a frame network transit delay d on the basis of the difference between Δt and ΔT. The method may comprise, for each frame, estimating a set of parameters of a linear relationship between ΔL and d on the basis of ΔL and d for the current frame and ΔL and d determined for at least one previous frame. A first parameter and a second parameter comprised in the set may be adapted to be indicative of the first and second part, respectively. The method may comprise, for each frame, estimating a maximum frame payload size and an average frame payload size on the basis of L of the current frame and L of at least one previous frame. For each frame, the buffer level may be determined on the basis of the maximum frame payload size, the average frame payload size and the parameters of the linear relationship.
  • Such a configuration enables to determine an appropriate buffer level of the jitter buffer in various network conditions, by determining the buffer level on the basis of statistical measures of current network conditions. In this manner, both frame arrival delay related to payload size variation between frames ('self-inflicted' frame arrival delay) and a frame arrival delay related to the amount of crosstraffic in the communications network may be taken into account in the determination of the buffer level. This is generally not the case in known devices and methods.
  • By the separation of the packet delay contributions into self-inflicted and cross-traffic delays, an improved adaptability to varying network conditions may be obtained. For instance, consider a typical situation where a majority of the frames are roughly equal in size (i.e. having a roughly equal payload size), while few frames are relatively large (e.g. in comparison with the majority of frames). Conventionally, only the frame inter-arrival time is considered in the procedure of setting the buffer level. In such a case, only the few packets that result in the largest inter-arrival time would provide any useful information for the procedure of setting the buffer level. In contrast, according to embodiments of the present invention, all of the frames encoded in the arriving packets in general contributes with information that may be utilized for estimating the set of parameters of a linear relationship between ΔL and d. In this manner, an improved accuracy and an increased adaptability with regards to varying network conditions may be achieved.
  • According to a second aspect of the present invention, there is provided a receiver adapted to sequentially receive data packets from a communications network. Frames are encoded into the data packets, each frame comprising timestamp information T and payload size information L. The receiver may comprise a jitter data buffer and a processing unit adapted to determine a buffer level of the jitter data buffer on the basis of a first part of frame arrival delay related to payload size variation between frames and a second part related to the amount of crosstraffic in the communications network. The receiver may comprise a time measuring unit adapted to measure the arrival time of each frame. The receiver, or the processing unit, may be adapted to, for each frame, determine a frame payload size difference ΔL by comparing L of the current frame with L of a previous frame, determine a frame inter-arrival time Δt by comparing the measured arrival time of the current frame with the measured arrival time of a previous frame, determine a temporal frame spacing ΔT by comparing T of the current frame with T of a previous frame, and/or determine a frame network transit delay d on the basis of the difference between Δt and ΔT. The receiver, or the processing unit, may be adapted to, for each frame, estimate a set of parameters of a linear relationship between ΔL and d on the basis of ΔL and d for the current frame and ΔL and d determined for at least one previous frame. A first parameter and a second parameter comprised in the set are indicative of the first and second part, respectively. The receiver, or the processing unit, may be adapted to, for each frame, estimate a maximum frame payload size and an average frame payload size on the basis of L of the current frame and L of at least one previous frame. For each frame, the buffer level may be determined on the basis of the maximum frame payload size, the average frame payload size and the parameters of the linear relationship.
  • By such a receiver, or decoder, there may be provided a receiver (or decoder) adapted to sequentially receive data packets from a communications network, which receiver (or decoder) may achieve the same or similar advantages achieved by the method according to the first aspect of the present invention.
  • According to a third aspect of the present invention, there is provided a computer program product adapted to, when executed in a processor unit, perform a method according to the first aspect of the present invention or any embodiment thereof.
  • According to a fourth aspect of the present invention, there is provided a computer-readable storage medium on which there is stored a computer program product adapted to, when executed in a processor unit, perform a method according to the first aspect of the present invention or any embodiment thereof.
  • Such a processing unit, or microprocessor, may for example be comprised in a receiver, or decoder, according to the second aspect of the present invention. Alternatively, or optionally, such processing unit or microprocessor may be arranged externally in relation to the receiver or decoder, with the processing unit or microprocessor being electrically connected to the receiver or decoder.
  • The first and second parameters may for example comprise a slope and a variance.
  • The estimation of the parameters of a linear relationship between between ΔL and d may for example be performed by means of an adaptive filter algorithm, such as adaptive linear regression, recursive least-squares estimation, a Kalman filter, etc. Such adaptive filter algorithms may be used in different combinations. By utilizing one or more adaptive filter algorithms, the accuracy of the estimation of the linear relationship between between ΔL and d may be refined by the choice of the adaptive filter algorithm(s) and/or the model parameters of the respective adaptive filter algorithm. For example, the adaptive filter algorithm(s) may be selected and/or the parameters thereof may be modified on the basis of user, capacity and/or application requirements.
  • There may be determined whether the absolute value of a difference between d for the current frame and at least one of the first part of frame arrival delay, related to payload size variation between frames, for respective previous frames exceeds a predetermined threshold value.
  • In other words, a so called "sanity" check, or extreme outlier identification, can be made on the measurements (e.g. frame payload sizes, arrival time differences) prior to performing an estimation of a set of parameters of a linear relationship between ΔL and d. In this manner, the effect of undesired, spurious events in the data packet delivery in the communication network may be avoided or mitigated.
  • An indication of a discontinuous change in a parameter of the communications network may be sensed. The parameter may be indicative of traffic conditions of the communications network.
  • In other words, so called change detection may be performed to assess whether a discontinuous, or abrupt, change has occurred in traffic conditions of the communications network. Such change detection may be performed in various manners, for example in accordance with user, capacity and/or application requirements. For example, change detection may be performed by means of a CUSUM test.
  • In case an indication of a discontinuous change in the parameter is sensed, at least one model parameter used in the estimation of the parameters of a linear relationship between ΔL and d may be reset. In this manner, re-convergence of the process of estimating a set of parameters of a linear relationship between ΔL and d for the new network conditions may be facilitated.
  • The at least one model parameter may for example comprise a Kalman covariance matrix, a noise estimate, etc., depending on implementation details.
  • There may be determined, on the basis of T of the current frame and T of the previous frame, whether the previous frame was transmitted earlier with regards to transmission order compared to the current frame. In other words, it may be checked whether the current frame has suffered from re-ordering. In this case, the processing of the current frame may be stopped and discarded. Subsequently, the receiver may await the arrival of the next frame for processing thereof.
  • Further objects and advantages of the present invention are described in the following by means of exemplifying embodiments.
  • Brief discussion of the drawings
  • Exemplifying embodiments of the present invention will be described in the following with reference to the other accompanying drawings, in which:
    • Fig. 1 is a schematic exemplifying graph of the frame network transit delay d versus the frame payload size difference ΔL;
    • Fig. 2A is a schematic view of a receiver according to an exemplifying embodiment of the present invention;
    • Fig. 2B is a schematic view of a frame in accordance with an exemplifying embodiment of the present-invention;
    • Fig. 3 is a schematic flow diagram of a method according to an exemplifying embodiment of the present invention;
    • Fig. 4 are schematic views of different exemplifying types of computer readable digital storage mediums according to embodiments of the present invention.
  • In the accompanying drawings, the same reference numerals denote the same or similar elements throughout the views.
  • Description of exemplifying embodiments
  • The present invention will now be described more fully hereinafter with reference to the accompanying drawings, in which exemplifying embodiments of the invention are shown. This invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided by way of example so that this disclosure will be thorough and complete, and fully convey the scope of the invention to those skilled in the art. Furthermore, like numbers refer to like or similar elements or components throughout. The steps of any method disclosed herein do not have to be performed in the exact order disclosed, unless explicitly stated.
  • According to the present invention, the transmission delay of a packet or cluster of packets may be considered to be made up of two independent parts: self-inflicted delay and cross-traffic delay. Because a large packet (i.e. having a large payload) generally takes a longer time to transmit over a network link with limited capacity compared to a smaller packet, the payload size variations from one image (or frame) to the next generally give rise to a payload-size dependent delay variation, which is referred to in the context of some embodiments of the present invention as self-inflicted delay. Any delays that arise because of other network traffic (cross-traffic) utilizing the links and queues of the network are referred to in the context of some embodiments of the present invention as the cross-traffic delay. To the receiver, the cross-traffic delay may appear as quasi-random and independent of the (video) traffic.
  • The present invention is based on separating the packet delay contributions into self-inflicted and cross-traffic delays, estimating appropriate parameters describing the current conditions for the self-inflicted delay and the cross-traffic delay, and determining an appropriate jitter buffer level based on the estimates;
  • In a video-over-IP system, the encoder may operate on clusters of packets that make up each image. In the context of some embodiments of the present invention, such a group of packets is referred to as a 'frame'. When the arrival of a frame is completed at the receiver, i.e. when all the packets included in the frame have arrived at the receiver, the arrival time may be determined. Comparing the arrival time with the arrival time of a previously received frame provides a frame inter-arrival time Δt.
  • In general, each frame comprises some kind of timing information, or time-stamp information, that indicates the production time of the frame. Such timing information may for example comprise the timestamp field in a real-time transport protocol (RTP) header. Such timing information may provide a nominal temporal frame spacing between the present frame and a previously received frame, denoted ΔT. The nominal temporal frame spacing ΔT may for example comprise the time between capturing the two frames from a camera. By determing a difference between the actual inter-arrival time Δt and the nominal temporal frame spacing ΔT a deviation measure, or a frame network transit delay, d for the currently received frame may be obtained. For example, d = Δt - ΔT.
  • In general, each frame comprises payload size information L. The difference ΔL between the payload size between the currently received frame and a previously received frame may be determined.
  • The self-inflicted delay and the cross-traffic delay described in the foregoing may be described as a part of d that can be attributed to ΔL and a part that generally cannot be attributed to ΔL. Namely, in case of a relatively large value of ΔL, the current frame is larger than the previous frame, and the current frame may generally be expected to be later than the previous frame. This would result in an increased Δt, resulting in a larger value of d. On the other hand, the cross-traffic related delay generally affects Δt in ways that are difficult to correlate with ΔL.
  • On receiving the complete frame with frame number k, the frame delay d(k) = Δt(k) - ΔT(k) = t(k) - t(k - 1) - (T(k) - T(k - 1)) may be calculated. The payload size difference is denoted ΔL(k) = L(k) - L(k - 1). The differential frame delay, or frame network transit delay, may be assumed to follow the model d k = A + B Δ L k + w k ,
    Figure imgb0001

    where w(k) represents the cross-traffic related delay. It may be assumed that w(k), k = 0, 1, 2, ... is a sequence of independent realizations of a zero-mean stochastic variable with variance σ2. Hence, the relation between d(k) and ΔL may be represented by a straight line with offset A and slope B, with a scattering around the line determined by σ2.
  • In view of the foregoing description and with reference to Fig. 1, in Fig. 1 there is shown a schematic exemplifying straight line and scatter plot of the frame network transit delay d versus the frame payload size difference ΔL. The quantities d and ΔL may for example be given in units of ms and bytes, respectively.
  • Given estimates of the parameters A, B and σ2, respectively, and knowledge of the largest expected ΔL, the worst case frame inter-arrival time may be estimated. On the basis of this worst case frame inter-arrival time a size of the jitter buffer may be set that mitigates the jitter.
  • In view of the above, an embodiment of the present invention may comprise collecting measurements of d(k) and ΔL(k) for a number of frames k, estimating parameters A, B, and σ2, storing or estimating the largest expected frame size difference ΔL, and determining a jitter buffer level based on the estimates.
  • Referring now to Fig. 2A, there is shown a schematic view of a receiver 200 according to an exemplifying embodiment of the present invention. The receiver 200 is communicating in a wireless manner with a communications network 202 via an air interface 201. The receiver comprises a data jitter buffer 203. The receiver may comprise a time-measuring unit 204 and a processing unit 205.
  • The communication between the receiver 200 and the communications network 202 may be performed in a non-wired (e.g. by means of wireless radiowave communications) or a wired (e.g. by means of electrical conductors or optical fibers or the like) fashion.
  • Referring now to Fig. 2B, the receiver 200 may be adapted to sequentially receive data packets from the communications network 202, wherein frames 206 are encoded into the data packets, each frame 206 comprising timestamp information T 206a and payload size information L 206b. Each frame 206 may alternatively or optionally comprise additional information. According to an embodiment of the present invention, the buffer level of the data jitter buffer 203 is determined on the basis of a first part of frame arrival delay related to payload size variation between frames and a second part related to the amount of crosstraffic in the communications network 202.
  • Optionally, or alternatively, the receiver 200 may comprise a sensing unit 207, which may be adapted to sense an indication of a discontinuous change in a parameter of the communications network 202. This parameter may for example be indicative of traffic conditions in the communications network 202.
  • Referring now to Fig. 3, there is shown a schematic flow diagram of a method 300 according to an exemplifying embodiment of the present invention. With reference to Figs. 2A and 2B, a receiver 200 may be adapted to sequentially receive data packets from a communications network 202. The data packets may be such that frames 206 are encoded in the data packets.
  • Referring now again to Fig. 3, at step 301 a frame payload size difference ΔL may be determined for each frame by comparing L of the current frame with L of a previous frame.
  • At step 302, a frame inter-arrival time Δt may be determined by comparing the measured arrival time of the current frame with the measured arrival time of a previous frame.
  • At step 303, a temporal frame spacing ΔT may be determined by comparing T of the current frame with T of a previous frame.
  • At step 304, a frame network transit delay d may be determined on the basis of the difference between Δt and ΔT.
  • The method 300 may further comprise, for each frame, in step 305 estimating a set of parameters of a linear relationship between ΔL and d on the basis of ΔL and d for the current frame and ΔL and d determined for at least one previous frame. With reference to Figs. 2A and 2B, a first parameter and a second parameter comprised in the set may be adapted to be indicative of a first part of frame arrival delay related to payload size variation between frames 206 and a second part related to the amount of crosstraffic in the communications network 202.
  • The method 300 may further comprise, for each frame, in step 306 estimating a maximum frame payload size and an average frame payload size on the basis of L of the current frame and L of at least one previous frame.
  • The method 300 may further comprise, for each frame, a step 307 of determining the buffer level on the basis of the maximum frame payload size, the average frame payload size and the parameters of the linear relationship.
  • Optionally, the method 300 may comprise a step 308 comprising determining, on the basis of T of the current frame and T of the previous frame, whether the previous frame was transmitted earlier with regards to transmission order compared to the current frame.
  • Optionally, the method 300 may comprise a step 309 comprising determining whether the absolute value of a difference between d for the current frame and at least one of the first part of frame arrival delay, related to payload size variation between frames, for respective previous frames exceeds a predetermined threshold value.
  • Optionally, the method 300 may comprise a step 310 comprising sensing an indication of a discontinuous change in a parameter of the communications network. The parameter may for example be indicative of traffic conditions in the communications network. Optionally, if an indication of a discontinuous change in such a parameter has been sensed, at least one model parameter used in the estimation of the parameters of a linear relationship between ΔL and d may be reset (step 311).
  • In the following, a method according to an exemplifying embodiment of the present invention is described in some detail.
  • The method of the exemplifying embodiment can be described using three phases - inter-arrival delay calculation, parameter estimation and buffer level calculation - each phase being carried out at least once each time arrival of a frame is completed, i.e. when all the packets included in the frame have arrived at the receiver. Additionally, there may be a reset phase, carried out in the beginning of the method and also when otherwise found necessary. The phases are described in the following.
  • The following notation is used in the description in the following:
    • F: The last received frame that is currently being processed.
    • Fp : A previously processed frame.
    • t: Arrival time for frame F (the time at which the arrival of the frame is completed at the receiver).
    • tp: Arrival time for frame Fp .
    • T: Timestamp for frame F.
    • Tp : Timestamp for frame Fp .
    • L: Payload size (in the communications network) for frame F.
    • Lp : Payload size (in the communications network) for frame Fp .
    • L avg (k): The k-th update of the estimated average payload size.
    • φ: Filter factor for estimate L avg; 0 ≤ φ ≤ 1.
    • L max (k): The k-th update of the estimated maximum payload size.
    • ψ: Filter factor for estimate Lmax; 0 ≤ ψ ≤ 1.
    • C 1: Design parameter; C 1 > 0.
    • C 2: Design parameter; C 2 > 0.
    • σ2(k): The k-th update of the estimated noise variance.
    • m(k): The k-th update of the estimated noise mean.
    • D(k): The k-th update of the desired buffer level.
    • A(k): The k-th update of the line offset.
    • B(k): The k-th update of the line slope.
    • M(k|k - 1) and M(k|k): Predictor and measurement updates, respectively, of the Kalman filter covariance matrix.
    • K(k): Kalman filter gain vector in the k-th iteration.
    • Q: Kalman filter process noise covariance matrix.
    • I: 2-by-2 identity matrix.
    Reset phase I
  • At time index k = 0, all parameters and variables may be reset to suitable initial values. What constitutes a suitable initialization may vary depending on current communications network conditions and application.
  • Inter-arrival delay calculation
  • In case the current frame has suffered from re-ordering (in other words, if the current frame is earlier in (transmission-order) sequence than the last processed frame), the processing for the current frame may be stopped and the current frame may be discarded.
  • In other case, a nominal inter-arrival time is calculated using the timestamps of the current frame and a previously received frame: Δ T = T - T p .
    Figure imgb0002
  • The actual inter-arrival time is calculated: Δ t = t - t p .
    Figure imgb0003
  • The frame network transit delay is calculated: d = Δ t - Δ T .
    Figure imgb0004
  • All of these times and time periods may be adjusted in order to use the same time scale, e.g., milliseconds or sample periods.
  • Parameter estimation
  • Another phase in the exemplifying method is to estimate the model parameters.
  • A frame size difference is calculated: Δ L = L - L p .
    Figure imgb0005
  • The average estimate for frame size is calculated: L avg k = φ L avg k - 1 + 1 - φ L .
    Figure imgb0006
  • The estimate of the maximum frame size is calculated: L max k = max ψ L max k - 1 ; L .
    Figure imgb0007
  • An extreme extreme outlier identification may then be performed. Let δ = d - A k - 1 + B k - 1 Δ L .
    Figure imgb0008
  • In case δ C 1 σ 2 k - 1 ,
    Figure imgb0009
    the current frame may be considered to be an extreme outlier.
  • Next, one one hand, if the current frame is not an extreme outlier: Update average noise : m k = am k - 1 + 1 - α δ .
    Figure imgb0010
    Update noise variance : σ 2 k = ασ 2 k - 1 + 1 - α ( δ - m k ) 2 .
    Figure imgb0011
  • Update the estimates of A and B using, e.g., a Kalman filter iteration:
  • Covariance matrix predictor update: M k | k - 1 = M k - 1 | k - 1 + Q .
    Figure imgb0012
  • Compute Kalman gain vector: K k = M k | k - 1 Δ L 1 f + Δ L 1 M k | k - 1 Δ L 1
    Figure imgb0013

    where the function f may be: f = 300 e - Δ L L max k + 1 σ 2 k .
    Figure imgb0014
  • Update estimates of A and B: B k A k = B k - 1 A k - 1 + K k d - A k - 1 + B k - 1 Δ L .
    Figure imgb0015
  • Calculate covariance matrix measurements: M k | k = I - K k Δ L 1 M k | k - 1 .
    Figure imgb0016
  • On the other hand, if the current frame is an extreme outlier:
    Let s δ be the sign function of δ, i.e., S δ = { - 1 , δ < 0 ; + 1 , δ 0.
    Figure imgb0017
  • Calculate average noise: m k = α m k - 1 + 1 - α s δ C 1 σ 2 k - 1 .
    Figure imgb0018

    Calculate noise variance: σ 2 k = α σ 2 k - 1 + 1 - α s δ C 1 σ 2 k - 1 - m k 2 .
    Figure imgb0019
  • Reset phase II
  • Next, change detection may be performed in order to assess whether an abrupt change has occurred in the network. Change detection can be performed in many manners, for example by utilizing a CUSUM test. In case an abrupt change is detected, a suitable set of variables may be reset. For instance, the Kalman covariance matrix M(k|k) can be reset to its initial (large) value in order to facilitate a rapid re-convergence to the new communication network conditions. Alternatively or optionally, the noise estimates σ2(k) and/or m(k) can be reset.
  • Buffer level calculation
  • The last phase in the exemplifying method comprises calculation of the desired buffer level: D k = B k L max - L avg + C 2 σ 2 k .
    Figure imgb0020
  • Referring now to Fig. 4, there are shown schematic views of computer readable digital storage mediums 400 according to exemplifying embodiments of the present invention, comprising a DVD 400a and a floppy disk 400b. On each of the DVD 400a and the floppy disk 400b there may be stored a computer program comprising computer code adapted to perform, when executed in a processor unit, a method according to the present invention or embodiments thereof, as has been described in the foregoing.
  • Although only two different types of computer-readable digital storage mediums have been described above with reference to Fig. 4, the present invention encompasses embodiments employing any other suitable type of computer-readable digital storage medium, such as, but not limited to, a non-volatile memory, a hard disk drive, a CD, a flash memory, magnetic tape, a USB stick, a Zip drive, etc.
  • The receiver may comprise one or more microprocessors (not shown) or some other device with computing capabilities, e.g. an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), a complex programmable logic device (CPLD), etc., in order to perform operations such as estimating a set of parameters of a linear relationship between ΔL and d. Such a microprocessor may alternatively or optionally be comprised in, integrated with, or be, the processing unit of the receiver.
  • When performing steps of different embodiments of the method of the present invention, the microprocessor typically executes appropriate software that is downloaded to the receiver and stored in a suitable storage area, such as, e.g., a Random Access Memory (RAM), a flash memory or a hard disk, or software that has been stored in a non-volatile memory, e.g., a Read Only Memory (ROM). Such a microprocessor or processing unit may alternatively or optionally be located externally relatively to the receiver (and electrically connected to the receiver).
  • A computer program product comprising computer code adapted to perform, when executed in a processor unit, a method according to the present invention or any embodiment thereof may be stored on a computer (e.g. a server) adapted to be in communication with a receiver according to an exemplifying embodiment of the present invention. In this manner, when loaded into and executed in a processor unit of the computer, the computer program may perform the method. Such a configuration eliminates the need to store the computer program locally at the receiver. The communication between the computer and the receiver may be implemented in a wired fashion (e.g. by means of Ethernet) or in a non-wired fashion (e.g. by means of wireless infra-red (IR) communications or other wireless optical communications, or by means of wireless radiowave communications.
  • While the invention has been illustrated and described in detail in the appended drawings and the foregoing description, such illustration and description are to be considered illustrative or exemplifying and not restrictive; the invention is not limited to the disclosed embodiments. Other variations to the disclosed embodiments can be understood and effected by those skilled in the art in practicing the claimed invention, from a study of the drawings, the disclosure, and the appended claims. The mere fact that certain measures are recited in mutually different dependent claims does not indicate that a combination of these measured cannot be used to advantage. Any reference signs in the claims should not be construed as limiting the scope.

Claims (15)

  1. A method (300) for determining a buffer level of a jitter data buffer comprised in a receiver adapted to sequentially receive data packets from a communications network, wherein frames are encoded into the data packets, each frame comprising timestamp information, T, and payload size information, L, wherein the buffer level is determined on the basis of a first part of frame arrival delay related to payload size variation between frames and a second part related to the amount of crosstraffic in the communications network, the method comprising, for each frame:
    - determining (301) a frame payload size difference, ΔL, by comparing L of the current frame with L of a previous frame;
    - determining (302) a frame inter-arrival time, Δt, by comparing the measured arrival time of the current frame with the measured arrival time of a previous frame;
    - determining (303) a temporal frame spacing, ΔT, by comparing T of the current frame with T of a previous frame;
    - determining (304) a frame network transit delay, d, on the basis of the difference between Δt and ΔT;
    - estimating (306) a set of parameters of a linear relationship between ΔL and d on the basis of ΔL and d for the current frame and ΔL and d determined for at least one previous frame, wherein a first parameter and a second parameter comprised in the set are indicative of the first and second part, respectively;
    - estimating (305) a maximum frame payload size and an average frame payload size on the basis of L of the current frame and L of at least one previous frame; and
    - determining (307) the buffer level on the basis of the maximum frame payload size, the average frame payload size and the parameters of the linear relationship.
  2. The method according to claim 1, wherein the first and second parameters comprise a slope and a variance.
  3. The method according to claim 1 or 2, wherein the estimation of the parameters of a linear relationship between ΔL and d is performed by means of an adaptive filter algorithm.
  4. The method according to any one of claims 1-3, further comprising:
    - determining (309) whether the absolute value of a difference between d for the current frame and at least one of the first part of frame arrival delay, related to payload size variation between frames, for respective previous frames exceeds a predetermined threshold value.
  5. The method according to any one of claims 1-4, further comprising:
    - sensing (310) an indication of a discontinuous change in a parameter of the communications network, the parameter being indicative of traffic conditions in the communications network.
  6. The method according to claim 5, further comprising:
    - if an indication of a discontinuous change in the parameter has been sensed, resetting (311) at least one model parameter used in the estimation of the parameters of a linear relationship between ΔL and d.
  7. The method according to any one of claims 1-6, further comprising:
    - determining (308), on the basis of T of the current frame and T of the previous frame, whether the previous frame was transmitted earlier with regards to transmission order compared to the current frame.
  8. A receiver (200) adapted to sequentially receive data packets from a communications network (201), wherein frames are encoded into the data packets, each frame comprising timestamp information, T, and payload size information, L, the receiver comprising:
    a jitter data buffer (203);
    a time measuring unit (204); and
    a processing unit (205) adapted to determine a buffer level of the jitter data buffer on the basis of a first part of frame arrival delay related to payload size variation between frames and a second part related to the amount of crosstraffic in the communications network;
    wherein the time measuring unit is adapted to measure the arrival time of each frame; and
    wherein the processing unit is adapted to, for each frame:
    determine a frame payload size difference, ΔL, by comparing L of the current frame with L of a previous frame;
    determine a frame inter-arrival time, Δt, by comparing the measured arrival time of the current frame with the measured arrival time of a previous frame;
    determine a temporal frame spacing, ΔT, by comparing T of the current frame with T of a previous frame;
    determine a frame network transit delay, d, on the basis of the difference between Δt and ΔT;
    estimate a set of parameters of a linear relationship between ΔL and d on the basis of ΔL and d for the current frame and ΔL and d determined for at least one previous frame, wherein a first parameter and a second parameter comprised in the set are indicative of the first and second part, respectively;
    estimate a maximum frame payload size and an average frame payload size on the basis of L of the current frame and L of at least one previous frame; and
    determine the buffer level on the basis of the maximum frame payload size, the average frame payload size and the parameters of the linear relationship.
  9. The receiver according to claim 8, wherein the first and second parameters comprise a slope and a variance.
  10. The receiver according to claim 8 or 9, wherein the processing unit is adapted to estimate the set of parameters of a linear relationship between ΔL and d by means of an adaptive filter algorithm.
  11. The receiver according to any one of claims 8-10, wherein the processing unit is further adapted to determine whether the absolute value of a difference between d for the current frame and at least one of the first part of frame arrival delay, related to payload size variation between frames, for respective previous frames exceeds a predetermined threshold value.
  12. The receiver according to any one of claims 8-11, further comprising a sensing unit (207) adapted to sense an indication of a discontinuous change in a parameter of the communications network, the parameter being indicative of traffic conditions of the communications network.
  13. The receiver according to any one of claims 8-12, wherein the processing unit is further adapted to determine, on the basis of T of the current frame and T of the previous frame, whether the previous frame was transmitted earlier with regards to transmission order compared to the current frame.
  14. A computer program product adapted to, when executed in a processor unit, perform a method according to any one of claims 1-7.
  15. A computer-readable storage medium (400) on which there is stored a computer program product adapted to, when executed in a processor unit, perform a method according to any one of claims 1-7.
EP09171120A 2009-09-23 2009-09-23 Method and device for determining a jitter buffer level Active EP2302845B1 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP09171120A EP2302845B1 (en) 2009-09-23 2009-09-23 Method and device for determining a jitter buffer level
PCT/EP2010/063818 WO2011036123A1 (en) 2009-09-23 2010-09-20 Method and device for determining a jitter buffer level
US13/497,625 US8665745B2 (en) 2009-09-23 2010-09-20 Method and device for determining a jitter buffer level
US14/174,916 US9042261B2 (en) 2009-09-23 2014-02-07 Method and device for determining a jitter buffer level

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP09171120A EP2302845B1 (en) 2009-09-23 2009-09-23 Method and device for determining a jitter buffer level

Publications (2)

Publication Number Publication Date
EP2302845A1 EP2302845A1 (en) 2011-03-30
EP2302845B1 true EP2302845B1 (en) 2012-06-20

Family

ID=41198517

Family Applications (1)

Application Number Title Priority Date Filing Date
EP09171120A Active EP2302845B1 (en) 2009-09-23 2009-09-23 Method and device for determining a jitter buffer level

Country Status (3)

Country Link
US (2) US8665745B2 (en)
EP (1) EP2302845B1 (en)
WO (1) WO2011036123A1 (en)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9615126B2 (en) * 2011-06-24 2017-04-04 Google Technology Holdings LLC Intelligent buffering of media streams delivered over internet
US9325640B2 (en) * 2012-07-27 2016-04-26 Hewlett-Packard Development Company, L.P. Wireless network device buffers
KR101468624B1 (en) * 2013-05-30 2014-12-04 삼성에스디에스 주식회사 Terminal, system and method for measuring network state using the same
KR101953613B1 (en) * 2013-06-21 2019-03-04 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. Jitter buffer control, audio decoder, method and computer program
CN105474313B (en) 2013-06-21 2019-09-06 弗劳恩霍夫应用研究促进协会 Time-scaling device, audio decoder, method and computer readable storage medium
US9948578B2 (en) * 2015-04-14 2018-04-17 Qualcomm Incorporated De-jitter buffer update
GB2540947B (en) 2015-07-31 2017-09-20 Imagination Tech Ltd Identifying network conditions
GB2535819B (en) 2015-07-31 2017-05-17 Imagination Tech Ltd Monitoring network conditions
GB2542984B (en) * 2015-07-31 2020-02-19 Imagination Tech Ltd Identifying network congestion based on a processor load and receiving delay
US20170187635A1 (en) * 2015-12-28 2017-06-29 Qualcomm Incorporated System and method of jitter buffer management
US11418367B2 (en) * 2017-12-14 2022-08-16 Telefonaktiebolaget Lm Ericsson (Publ) Channel estimation in a multi-layer system
GB2576760B (en) * 2018-08-31 2020-12-30 Jaguar Land Rover Ltd Network optimisation method
WO2020259808A1 (en) * 2019-06-25 2020-12-30 Siemens Aktiengesellschaft Computer-implemented method for adapting at least one predefined frame delay
CN110351595B (en) * 2019-07-17 2023-08-18 北京百度网讯科技有限公司 Buffer processing method, device, equipment and computer storage medium
CN113079421B (en) * 2020-01-03 2023-10-24 阿里巴巴集团控股有限公司 Information processing method, device, equipment and storage medium
CN111901678B (en) * 2020-07-31 2022-08-23 成都云格致力科技有限公司 Anti-jitter smoothing method and system for TCP real-time video stream

Family Cites Families (162)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5473326A (en) 1990-12-14 1995-12-05 Ceram Incorporated High speed lossless data compression method and apparatus using side-by-side sliding window dictionary and byte-matching adaptive dictionary
US5943065A (en) 1991-11-21 1999-08-24 Videologic Limited Video/graphics memory system
US6208805B1 (en) 1992-02-07 2001-03-27 Max Abecassis Inhibiting a control function from interfering with a playing of a video
US5434678A (en) 1993-01-11 1995-07-18 Abecassis; Max Seamless transmission of non-sequential video segments
US5432900A (en) 1992-06-19 1995-07-11 Intel Corporation Integrated graphics and video computer display system
EP0604230B1 (en) 1992-12-24 1999-03-10 Canon Kabushiki Kaisha Image signal reproducing apparatus
BE1007807A3 (en) 1993-11-30 1995-10-24 Philips Electronics Nv Apparatus for encoding a video signal.
US5550847A (en) 1994-10-11 1996-08-27 Motorola, Inc. Device and method of signal loss recovery for realtime and/or interactive communications
FI951278A0 (en) * 1995-03-17 1995-03-17 Finland Telecom Oy Foerfarande oc arrangemang Foer att behaerska en buffert i ett ATM-naet
US5930493A (en) 1995-06-07 1999-07-27 International Business Machines Corporation Multimedia server system and method for communicating multimedia information
US6119154A (en) 1995-07-14 2000-09-12 Oracle Corporation Method and apparatus for non-sequential access to an in-progress video feed
US5659539A (en) 1995-07-14 1997-08-19 Oracle Corporation Method and apparatus for frame accurate access of digital audio-visual information
US5793647A (en) 1995-08-15 1998-08-11 Diffracto, Ltd. System and method for graphical image data acquistion, storage, and retrieval
US6134352A (en) 1996-05-21 2000-10-17 Lucent Technologies Inc. Spatial error concealment for image processing
US5828370A (en) 1996-07-01 1998-10-27 Thompson Consumer Electronics Inc. Video delivery system and method for displaying indexing slider bar on the subscriber video screen
JPH1084284A (en) 1996-09-06 1998-03-31 Sony Corp Signal reproducing method and device
US5913038A (en) 1996-12-13 1999-06-15 Microsoft Corporation System and method for processing multimedia data streams using filter graphs
US5963203A (en) 1997-07-03 1999-10-05 Obvious Technology, Inc. Interactive video icon with designated viewing position
US6014706A (en) 1997-01-30 2000-01-11 Microsoft Corporation Methods and apparatus for implementing control functions in a streamed video display system
US5910827A (en) 1997-02-26 1999-06-08 Kwan; Katherine W. Video signal decoding arrangement and method for improved error concealment
US6115420A (en) 1997-03-14 2000-09-05 Microsoft Corporation Digital video signal encoder and encoding method
US6125229A (en) 1997-06-02 2000-09-26 Philips Electronics North America Corporation Visual indexing system
US6112234A (en) 1997-07-01 2000-08-29 Leiper; Thomas W. Method for transfer of radiographic images
AUPO918597A0 (en) 1997-09-12 1997-10-09 Commonwealth Scientific And Industrial Research Organisation Error concealment for video services
US6404817B1 (en) 1997-11-20 2002-06-11 Lsi Logic Corporation MPEG video decoder having robust error detection and concealment
US6047255A (en) 1997-12-04 2000-04-04 Nortel Networks Corporation Method and system for producing speech signals
US6061821A (en) 1998-01-09 2000-05-09 The United States Of America As Represented By The Secretary Of The Navy Context based error detection and correction for binary encoded text messages
DE69815159T2 (en) 1998-03-20 2004-04-08 Stmicroelectronics Asia Pacific Pte Ltd. CODING MOVING IMAGES WITH GLOBAL CONSTANT BITRATE
DE69932786T2 (en) 1998-05-11 2007-08-16 Koninklijke Philips Electronics N.V. PITCH DETECTION
WO1999059139A2 (en) 1998-05-11 1999-11-18 Koninklijke Philips Electronics N.V. Speech coding based on determining a noise contribution from a phase change
SE513520C2 (en) 1998-05-14 2000-09-25 Ericsson Telefon Ab L M Method and apparatus for masking delayed packages
US6642956B1 (en) 1998-05-29 2003-11-04 Agilent Technologies, Inc. Digital image processor for a digital camera
US6862278B1 (en) 1998-06-18 2005-03-01 Microsoft Corporation System and method using a packetized encoded bitstream for parallel compression and decompression
US6266337B1 (en) 1998-06-23 2001-07-24 Expand Network Ltd. Packet retransmission eliminator
US6253249B1 (en) 1998-08-31 2001-06-26 Nortel Networks Limited Method and devices for bridging data and telephone networks
JP2000078573A (en) 1998-09-03 2000-03-14 Hitachi Ltd Hierarchical encoded data distribution device
US6587985B1 (en) 1998-11-30 2003-07-01 Matsushita Electric Industrial Co., Ltd. Data transmission method, data transmission apparatus, data receiving apparatus, and packet data structure
US6452950B1 (en) 1999-01-14 2002-09-17 Telefonaktiebolaget Lm Ericsson (Publ) Adaptive jitter buffering
US6539124B2 (en) 1999-02-03 2003-03-25 Sarnoff Corporation Quantizer selection based on region complexities derived using a rate distortion model
US6996059B1 (en) * 1999-05-19 2006-02-07 Shoretel, Inc Increasing duration of information in a packet to reduce processing requirements
US6934258B1 (en) 1999-05-26 2005-08-23 Nortel Networks Limited Quality of service based transitioning between alternate transport paths
US6597812B1 (en) 1999-05-28 2003-07-22 Realtime Data, Llc System and method for lossless data compression and decompression
US6636561B1 (en) 1999-06-29 2003-10-21 Nortel Networks Limited Channel equalisers
US6510219B1 (en) 1999-09-30 2003-01-21 Nortel Networks Limited Alternate network fallback for IP telephony
US6859460B1 (en) 1999-10-22 2005-02-22 Cisco Technology, Inc. System and method for providing multimedia jitter buffer adjustment for packet-switched networks
US6665317B1 (en) 1999-10-29 2003-12-16 Array Telecom Corporation Method, system, and computer program product for managing jitter
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
US6747999B1 (en) 1999-11-15 2004-06-08 Siemens Information And Communication Networks, Inc. Jitter buffer adjustment algorithm
US6683889B1 (en) 1999-11-15 2004-01-27 Siemens Information & Communication Networks, Inc. Apparatus and method for adaptive jitter buffers
GB9929328D0 (en) 1999-12-10 2000-02-02 Nokia Mobile Phones Ltd Data processing
US6792047B1 (en) * 2000-01-04 2004-09-14 Emc Corporation Real time processing and streaming of spliced encoded MPEG video and associated audio
US7096481B1 (en) * 2000-01-04 2006-08-22 Emc Corporation Preparation of metadata for splicing of encoded MPEG video and audio
US20020056123A1 (en) 2000-03-09 2002-05-09 Gad Liwerant Sharing a streaming video
WO2001099355A1 (en) 2000-06-23 2001-12-27 Mitsubishi Denki Kabushiki Kaisha Method and system for packet retransmission
FI109394B (en) 2000-10-20 2002-07-15 Hantro Products Oy Method and apparatus for encoding and decoding a video image
US6778553B1 (en) 2000-11-10 2004-08-17 Microsoft Corp. System and method for media streaming
US6834390B2 (en) 2000-12-06 2004-12-21 Microsoft Corporation System and related interfaces supporting the processing of media content
US6784889B1 (en) 2000-12-13 2004-08-31 Micron Technology, Inc. Memory system and method for improved utilization of read and write bandwidth of a graphics processing system
FI109635B (en) 2001-02-01 2002-09-13 Hantro Products Oy Method and device for post-processing video image
FI109634B (en) 2001-02-16 2002-09-13 Hantro Products Oy Method and apparatus for encoding a video image
US20020157058A1 (en) 2001-02-20 2002-10-24 Cute Ltd. System and method for feedback-based unequal error protection coding
KR100425676B1 (en) 2001-03-15 2004-04-03 엘지전자 주식회사 Error recovery method for video transmission system
US20020172229A1 (en) * 2001-03-16 2002-11-21 Kenetec, Inc. Method and apparatus for transporting a synchronous or plesiochronous signal over a packet network
FI109395B (en) 2001-03-27 2002-07-15 Hantro Products Oy Stabilizing video images by filming a scene larger than the image and compensating camera motion by shifting the image within the film scene in a direction opposite to a predicted camera motion
US8107524B2 (en) 2001-03-30 2012-01-31 Vixs Systems, Inc. Adaptive bandwidth footprint matching for multiple compressed video streams in a fixed bandwidth network
US20040146113A1 (en) 2001-05-29 2004-07-29 Valente Stephane Edouard Error concealment method and device
WO2003003584A1 (en) 2001-06-29 2003-01-09 Netcontinuum, Inc. System and method for data compression using a hybrid coding scheme
US7003039B2 (en) 2001-07-18 2006-02-21 Avideh Zakhor Dictionary generation method for video and image compression
KR100431003B1 (en) 2001-10-31 2004-05-12 삼성전자주식회사 Data transmitting/receiving system and method thereof
FI110745B (en) 2001-11-13 2003-03-14 Hantro Products Oy Encoding successive images has reference image divided into parts which includes 4x4 pixels referred to with indexes and number is formed from the values of pixels in each part to describe pixel values in a given part
US7120308B2 (en) 2001-11-26 2006-10-10 Seiko Epson Corporation Iterated de-noising for image recovery
JP3757857B2 (en) 2001-12-12 2006-03-22 ソニー株式会社 Data communication system, data transmission apparatus, data reception apparatus and method, and computer program
JP3884012B2 (en) 2001-12-18 2007-02-21 三菱電機株式会社 Communication system, transmitting terminal and receiving terminal
KR100460970B1 (en) 2002-01-10 2004-12-09 삼성전자주식회사 Data transmitting/receiving system and method thereof
JP4116470B2 (en) 2002-03-06 2008-07-09 ヒューレット・パッカード・カンパニー Media streaming distribution system
US7219352B2 (en) 2002-04-15 2007-05-15 Microsoft Corporation Methods and apparatuses for facilitating processing of interlaced video images for progressive video displays
JP2003324644A (en) 2002-05-07 2003-11-14 Canon Inc Video signal processing apparatus, image display control method, storage medium and program
US20040017490A1 (en) 2002-07-25 2004-01-29 Chih-Chung Lin Image-capturing device controlled through internet and method for operating the same
US20040165585A1 (en) 2003-02-25 2004-08-26 Koji Imura Packet transmission apparatus and packet transmission method
US7406501B2 (en) 2003-03-24 2008-07-29 Yahoo! Inc. System and method for instant messaging using an e-mail protocol
JP4245139B2 (en) 2003-03-31 2009-03-25 株式会社メガチップス Image processing device
US7359004B2 (en) 2003-05-23 2008-04-15 Microsoft Corporation Bi-level and full-color video combination for video communication
CA2701501C (en) 2003-06-18 2016-01-26 Nippon Telegraph And Telephone Corporation Wireless packet communication method
US7158668B2 (en) 2003-08-01 2007-01-02 Microsoft Corporation Image processing using linear light values and other image processing improvements
US7643675B2 (en) 2003-08-01 2010-01-05 Microsoft Corporation Strategies for processing image information using a color information data structure
KR100985104B1 (en) 2003-09-03 2010-10-05 엘지전자 주식회사 Method for controlling power of retransmitting packet
US7324522B2 (en) * 2003-09-18 2008-01-29 Raytheon Company Encapsulating packets into a frame for a network
EP1671424B1 (en) 2003-10-08 2012-06-06 Digital Fountain, Inc. Fec-based reliability control protocols
JP4343657B2 (en) 2003-11-14 2009-10-14 富士通マイクロエレクトロニクス株式会社 Image recording device
US7394855B2 (en) 2003-11-20 2008-07-01 Mitsubishi Electric Research Laboratories, Inc. Error concealing decoding method of intra-frames of compressed videos
JP4328602B2 (en) 2003-11-20 2009-09-09 富士通株式会社 Packet error correction apparatus and method
JP4454320B2 (en) 2004-01-09 2010-04-21 富士通株式会社 Transmission apparatus, transmission control program, and transmission method
US7359324B1 (en) * 2004-03-09 2008-04-15 Nortel Networks Limited Adaptive jitter buffer control
JP2005293731A (en) 2004-03-31 2005-10-20 Toshiba Corp Content recording method, content recording system, and recording/reproducing apparatus
KR100643270B1 (en) 2004-04-02 2006-11-10 삼성전자주식회사 Client and method for playing video stream
US7359565B2 (en) 2004-05-03 2008-04-15 International Business Machines Corporation Method of filtering pixels in a video encoding process
CN102984133B (en) 2004-05-13 2016-11-23 高通股份有限公司 For distributing the information equipment to the channel of communication system
US7782787B2 (en) 2004-06-18 2010-08-24 Avaya Inc. Rapid fault detection and recovery for internet protocol telephony
EP1638238A1 (en) 2004-09-15 2006-03-22 Siemens Aktiengesellschaft Method for combining data packets by a telecommunication device
JP4568120B2 (en) 2005-01-04 2010-10-27 株式会社東芝 Playback device
US20060150055A1 (en) 2005-01-06 2006-07-06 Terayon Communication Systems, Inc. Adaptive information delivery system using FEC feedback
US7779326B2 (en) 2005-03-01 2010-08-17 The Texas A&M University System Multi-source data encoding, transmission and decoding using Slepian-Wolf codes based on channel code partitioning
US7295137B2 (en) 2005-03-01 2007-11-13 The Texas A&M University System Data encoding and decoding using Slepian-Wolf coded nested quantization to achieve Wyner-Ziv coding
US7653867B2 (en) 2005-03-01 2010-01-26 The Texas A&M University System Multi-source data encoding, transmission and decoding using Slepian-Wolf codes based on channel code partitioning
US7271747B2 (en) 2005-05-10 2007-09-18 Rice University Method and apparatus for distributed compressed sensing
JP4688566B2 (en) 2005-05-10 2011-05-25 富士通東芝モバイルコミュニケーションズ株式会社 Transmitter and receiver
JP2006319643A (en) 2005-05-12 2006-11-24 Fuji Photo Film Co Ltd Moving picture communication system
JP4728393B2 (en) 2005-05-23 2011-07-20 フリースケール セミコンダクター インコーポレイテッド Method and apparatus for processing image data stored in a frame buffer
US7719579B2 (en) 2005-05-24 2010-05-18 Zoran Corporation Digital camera architecture with improved performance
US8050446B2 (en) 2005-07-12 2011-11-01 The Board Of Trustees Of The University Of Arkansas Method and system for digital watermarking of multimedia signals
US8139642B2 (en) 2005-08-29 2012-03-20 Stmicroelectronics S.R.L. Method for encoding signals, related systems and program product therefor
US8300694B2 (en) 2005-09-20 2012-10-30 Mitsubishi Electric Corporation Image encoding method and image decoding method, image encoder and image decoder, and image encoded bit stream and recording medium
US8400911B2 (en) * 2006-02-13 2013-03-19 Belair Networks Inc. System and method for packet timing of circuit emulation services over networks
JP5266202B2 (en) 2006-03-28 2013-08-21 サムスン エレクトロニクス カンパニー リミテッド Image encoding / decoding method and apparatus
US9772981B2 (en) 2006-03-29 2017-09-26 EMC IP Holding Company LLC Combined content indexing and data reduction
US9300956B2 (en) 2006-04-20 2016-03-29 Thomson Licensing Method and apparatus for redundant video encoding
US8165221B2 (en) 2006-04-28 2012-04-24 Netapp, Inc. System and method for sampling based elimination of duplicate data
US7885469B2 (en) 2006-05-22 2011-02-08 Microsoft Corporation Encoded high dynamic range textures
US7921077B2 (en) 2006-06-29 2011-04-05 Netapp, Inc. System and method for managing data deduplication of storage systems utilizing persistent consistency point images
KR101261526B1 (en) 2006-07-04 2013-05-06 삼성전자주식회사 An video encoding/decoding method and apparatus
US8117545B2 (en) 2006-07-05 2012-02-14 Magnify Networks, Inc. Hosted video discovery and publishing platform
US7504969B2 (en) 2006-07-11 2009-03-17 Data Domain, Inc. Locality-based stream segmentation for data deduplication
KR101040160B1 (en) 2006-08-15 2011-06-09 브로드콤 코포레이션 Constrained and controlled decoding after packet loss
JP2008048182A (en) 2006-08-17 2008-02-28 Sony Corp Communication processing apparatus, communication control method, and computer program
US20080065633A1 (en) 2006-09-11 2008-03-13 Simply Hired, Inc. Job Search Engine and Methods of Use
US8954851B2 (en) 2006-09-15 2015-02-10 Microsoft Corporation Adding video effects for video enabled applications
US20080170793A1 (en) 2007-01-12 2008-07-17 Mitsubishi Electric Corporation Image encoding device and image encoding method
JP5109373B2 (en) 2007-01-19 2012-12-26 富士通セミコンダクター株式会社 Coating liquid coating method and semiconductor device manufacturing method
JP4301308B2 (en) 2007-03-02 2009-07-22 ソニー株式会社 Imaging apparatus and image processing method
US7957307B2 (en) 2007-03-14 2011-06-07 Microsoft Corporation Reducing effects of packet loss in video transmissions
US20080228700A1 (en) 2007-03-16 2008-09-18 Expanse Networks, Inc. Attribute Combination Discovery
EP2153641B2 (en) 2007-04-13 2021-10-27 Ari M. Presler Digital cinema camera system for recording, editing and visualizing images
US9398346B2 (en) 2007-05-04 2016-07-19 Time Warner Cable Enterprises Llc Methods and apparatus for predictive capacity allocation
US20080291209A1 (en) 2007-05-25 2008-11-27 Nvidia Corporation Encoding Multi-media Signals
US7733893B2 (en) * 2007-06-29 2010-06-08 Global Ip Solutions (Gips) Ab Method and receiver for determining a jitter buffer level
US8612643B2 (en) 2007-06-30 2013-12-17 Microsoft Corporation Interfaces for digital media processing
US7991904B2 (en) 2007-07-10 2011-08-02 Bytemobile, Inc. Adaptive bitrate management for streaming media over packet networks
US8325184B2 (en) 2007-09-14 2012-12-04 Qualcomm Incorporated Fragment shader bypass in a graphics processing unit, and apparatus and method thereof
US20090103606A1 (en) 2007-10-17 2009-04-23 Microsoft Corporation Progressive Distributed Video Coding
JP5100311B2 (en) 2007-10-29 2012-12-19 キヤノン株式会社 Moving image data transmission method, communication apparatus, and program
US8095680B2 (en) 2007-12-20 2012-01-10 Telefonaktiebolaget Lm Ericsson (Publ) Real-time network transport protocol interface method and apparatus
US8352737B2 (en) 2007-12-20 2013-01-08 Nokia Corporation Methods, apparatuses, and computer program products for authentication of fragments using hash trees
US7886014B2 (en) 2007-12-31 2011-02-08 International Business Machines Corporation Maintaining communication continuity
WO2009084927A1 (en) 2008-01-03 2009-07-09 Lg Electronics Inc. Method for packet retransmission employing feedback information
US8098957B2 (en) 2008-02-13 2012-01-17 Qualcomm Incorporated Shared block comparison architechture for image registration and video coding
US8265171B2 (en) 2008-02-26 2012-09-11 Richwave Technology Corp. Error resilient video transmission using instantaneous receiver feedback and channel quality adaptive packet retransmission
US8953673B2 (en) 2008-02-29 2015-02-10 Microsoft Corporation Scalable video coding and decoding with sample bit depth and chroma high-pass residual layers
EP2112828B1 (en) 2008-04-25 2012-01-04 Irdeto B.V. Method and system for activating a decoder device
US8326061B2 (en) 2008-05-12 2012-12-04 Google Inc. Fast visual degrading of images
US8526360B1 (en) 2008-07-11 2013-09-03 Sprint Communications Company L.P. Reverse buffering a stream of media content
US8171154B2 (en) 2009-09-29 2012-05-01 Net Power And Light, Inc. Method and system for low-latency transfer protocol
US8547287B2 (en) 2009-11-24 2013-10-01 City University Of Hong Kong Light transmissible resonators for circuit and antenna applications
US8503539B2 (en) 2010-02-26 2013-08-06 Bao Tran High definition personal computer (PC) cam
US8462654B1 (en) 2010-07-15 2013-06-11 Adtran, Inc. Communications system with bonding engine configured for maximum packet fragment size as adapted to communications line pairs and related method
US8392452B2 (en) 2010-09-03 2013-03-05 Hulu Llc Method and apparatus for callback supplementation of media program metadata
US8477050B1 (en) 2010-09-16 2013-07-02 Google Inc. Apparatus and method for encoding using signal fragments for redundant transmission of data
WO2012135297A1 (en) 2011-03-28 2012-10-04 Grid Logic Incorporated Flux pump
TW201242346A (en) 2011-04-12 2012-10-16 Altek Corp Image capturing device and image processing method thereof
US9607302B2 (en) 2011-06-08 2017-03-28 Comcast Cable Communications, Llc Remotely configuring content
TW201251458A (en) 2011-06-09 2012-12-16 Altek Corp Method for storing image
US20130039410A1 (en) 2011-08-08 2013-02-14 Wai-Tian Tan Methods and systems for adapting error correcting codes
US9137488B2 (en) 2012-10-26 2015-09-15 Google Inc. Video chat encoding pipeline

Also Published As

Publication number Publication date
WO2011036123A1 (en) 2011-03-31
US9042261B2 (en) 2015-05-26
EP2302845A1 (en) 2011-03-30
US20140153431A1 (en) 2014-06-05
US8665745B2 (en) 2014-03-04
US20120281572A1 (en) 2012-11-08

Similar Documents

Publication Publication Date Title
EP2302845B1 (en) Method and device for determining a jitter buffer level
CN112217686B (en) System, method and device for evaluating round trip delay
US7876791B2 (en) Synchronizing apparatus and method in packet network
EP2374245B1 (en) Controlling packet transmission using bandwidth estimation
US8929382B2 (en) Method, device, and computer program product for detecting and encoding states for accurate measurement
US7852766B2 (en) Detection method, detecting device, reference value calculating device and recording medium
US9559927B2 (en) Terminal, system and method for measuring network state using the same
US8345570B2 (en) Network impairment metrics for timing over packet
WO2017133014A1 (en) Method and system for network performance detection based on receiving end in tcp transmission stream
JP2004524782A (en) Method and apparatus for robust real-time estimation of bottleneck bandwidth in the Internet
CA2915487C (en) Method for performing a bandwidth test for comminications from a first network station to a second network station of a communication network and corresponding apparatuses for performing the method steps and corresponding computer program products
US11936930B2 (en) Data processing method, server, and data collection device
CN105591843A (en) Network performance detection method and system based on receiving end in TCP transmission stream
US8867350B2 (en) Method and apparatus for packet buffering measurement
JP4935635B2 (en) Network bandwidth estimation program, network bandwidth estimation device, network bandwidth estimation method, and measurement device
Liu et al. End-to-end available bandwidth estimation and time measurement adjustment for multimedia QoS
WO2008004616A1 (en) Estimation method, device, and program, and network measuring system
JP5485204B2 (en) Network quality measurement method, delay fluctuation estimation device, network monitoring system, and program
CN106487608B (en) The method and apparatus for measuring distal end timestamp unit
US10680756B2 (en) Packet classification apparatus, packet classification method and storage medium
CN113839840B (en) Bandwidth self-adaptive estimation method and system for bottleneck link of satellite network
WO2016103674A1 (en) Stream reception device, communication system, method for estimating timing of stream transmission, and recording medium
JP5528372B2 (en) Flow quality degradation identification device and method
JP2009171453A (en) Transmission node, method for specifying tight link, and program for specifying tight link
Chen et al. Dynamic Arrival Process for TCP Using a Novel Time-dependant Statistical Calculation Approach

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO SE SI SK SM TR

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: GLOBAL IP SOLUTIONS (GIPS) AB

Owner name: GLOBAL IP SOLUTIONS, INC.

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: GOOGLE INC.

17P Request for examination filed

Effective date: 20110927

17Q First examination report despatched

Effective date: 20111013

GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

GRAS Grant fee paid

Free format text: ORIGINAL CODE: EPIDOSNIGR3

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO SE SI SK SM TR

REG Reference to a national code

Ref country code: GB

Ref legal event code: FG4D

REG Reference to a national code

Ref country code: CH

Ref legal event code: EP

REG Reference to a national code

Ref country code: AT

Ref legal event code: REF

Ref document number: 563568

Country of ref document: AT

Kind code of ref document: T

Effective date: 20120715

REG Reference to a national code

Ref country code: IE

Ref legal event code: FG4D

REG Reference to a national code

Ref country code: DE

Ref legal event code: R096

Ref document number: 602009007655

Country of ref document: DE

Effective date: 20120816

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: SE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120620

Ref country code: LT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120620

Ref country code: FI

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120620

Ref country code: NO

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120920

REG Reference to a national code

Ref country code: NL

Ref legal event code: VDEP

Effective date: 20120620

REG Reference to a national code

Ref country code: AT

Ref legal event code: MK05

Ref document number: 563568

Country of ref document: AT

Kind code of ref document: T

Effective date: 20120620

REG Reference to a national code

Ref country code: LT

Ref legal event code: MG4D

Effective date: 20120620

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: HR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120620

Ref country code: GR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120921

Ref country code: LV

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120620

Ref country code: SI

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120620

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: CZ

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120620

Ref country code: BE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120620

Ref country code: AT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120620

Ref country code: EE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120620

Ref country code: RO

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120620

Ref country code: IS

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20121020

Ref country code: SK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120620

Ref country code: CY

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120620

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: PT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20121022

Ref country code: PL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120620

Ref country code: IT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120620

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: NL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120620

PLBE No opposition filed within time limit

Free format text: ORIGINAL CODE: 0009261

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: ES

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20121001

Ref country code: MC

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20120930

Ref country code: DK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120620

26N No opposition filed

Effective date: 20130321

REG Reference to a national code

Ref country code: IE

Ref legal event code: MM4A

REG Reference to a national code

Ref country code: DE

Ref legal event code: R097

Ref document number: 602009007655

Country of ref document: DE

Effective date: 20130321

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: BG

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120920

Ref country code: IE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20120923

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: MT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120620

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: TR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120620

REG Reference to a national code

Ref country code: CH

Ref legal event code: PL

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: SM

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120620

Ref country code: LU

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20120923

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: LI

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20130930

Ref country code: HU

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20090923

Ref country code: CH

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20130930

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: MK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120620

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 8

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 9

REG Reference to a national code

Ref country code: DE

Ref legal event code: R081

Ref document number: 602009007655

Country of ref document: DE

Owner name: GOOGLE LLC (N.D.GES.D. STAATES DELAWARE), MOUN, US

Free format text: FORMER OWNER: GOOGLE INC., MOUNTAIN VIEW, CALIF., US

REG Reference to a national code

Ref country code: FR

Ref legal event code: CD

Owner name: GOOGLE INC., US

Effective date: 20180213

Ref country code: FR

Ref legal event code: CJ

Effective date: 20180213

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 10

P01 Opt-out of the competence of the unified patent court (upc) registered

Effective date: 20230505

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: DE

Payment date: 20240927

Year of fee payment: 16

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: GB

Payment date: 20240927

Year of fee payment: 16

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: FR

Payment date: 20240925

Year of fee payment: 16