GB2274041A - Buffer Resynchronisation in a variable transmission rate coder - Google Patents

Buffer Resynchronisation in a variable transmission rate coder Download PDF

Info

Publication number
GB2274041A
GB2274041A GB9401783A GB9401783A GB2274041A GB 2274041 A GB2274041 A GB 2274041A GB 9401783 A GB9401783 A GB 9401783A GB 9401783 A GB9401783 A GB 9401783A GB 2274041 A GB2274041 A GB 2274041A
Authority
GB
United Kingdom
Prior art keywords
buffer
transmission rate
coder
decoder
decoder buffer
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.)
Granted
Application number
GB9401783A
Other versions
GB9401783D0 (en
GB2274041B (en
Inventor
Nicholas Dominic Wells
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.)
British Broadcasting Corp
Original Assignee
British Broadcasting Corp
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
Priority claimed from GB9001295A external-priority patent/GB9001295D0/en
Application filed by British Broadcasting Corp filed Critical British Broadcasting Corp
Publication of GB9401783D0 publication Critical patent/GB9401783D0/en
Publication of GB2274041A publication Critical patent/GB2274041A/en
Application granted granted Critical
Publication of GB2274041B publication Critical patent/GB2274041B/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/23406Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving management of server-side video buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/152Data rate or code amount at the encoder output by measuring the fullness of the transmission buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23614Multiplexing of additional data and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4348Demultiplexing of additional data and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/44004Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Communication Control (AREA)

Abstract

In order to regulate operation of a decoder buffer in a transmission system, e.g. an HDTV system, changes in the transmission rate R and in the coder buffer occupancy Bc are monitored at the coder. The transmission rate is adjusted in response to these changes to avoid underflow or overflow at the decoder buffer.

Description

BUFFER RECONSTRUCTION This application is divided out of United Kingdom Application 9100983.7 filed 16th January 1991.
The present invention relates to a buffer resynchronisation strategy for a bit-rate reduction codec in which the transmission bit-rate may vary, for example, and HDTV (high definition television) contribution codec.
An HDTV contribution codec has been proposed which consists of six 17 Mbit/s television codecs in parallel.
Using this arrangement, it is envisaged that the available bit rate of 120 Mbit/s is shared dynamically between the six codecs according to the needs of each picture area.
The dynamic allocation of bit rate between the codecs introduces complications in that it must be ensured that the delays through the buffer stores associated with each codex are synchronised, partIcularly in the presence of transmission errors.
In accordance with the invention, there is provided apparatus for and a method of regulating operation of a decoder buffer in a transmission system, in which changes in the transmission rate R and in the coder buffer occupancy Ec are monitored at the coder at the transmission rate is adjustable in response to the said changes to avoid underflow or overflow at the decoder buffer.
A method in accordance with the invention will now be described in detail, by way of example, with reference to the drawings, in which: Figures l(a) and 1(b) illustrate buffer addressing in a variable bit-rate coding system for a constant transmission rate; Figure 2 (a) is a redrawing of Figures 1 (a) and 1 (b) for the case in which the coder buffer read address and decoder buffer write address are the same; Figure 2(b) illustrates buffer addressing with a nonconstant transmission rate; and Figure 3 illustrates coder and decoder buffer addressing and shows regions of buffer underflow and overflow.
Synchronisation problems can arise for both fixed and variable transmission rates.
At the coder, with a fixed transmission rate, the data is written into the transmission buffer at a variable rate and read out at a constant rate. This is illustrated in Figure la. At the decoder, the data is written in to the buffer at a constant rate and read out at a variable bit rate as shown in Figure ib.
From the Figure, it can be seen that, if Bc(rJ is the coder buffer occupancy at the time when the picture point r is written into the coder buffer and Bd(t) is the decoder buffer occupancy at the time when the same point r is read from the decoder buffer, The.
BC(r) + Bd(r) = corist (1) and T = Tc +Td = (Bc(r) + Bd(r))/R = Const/R (2) where R is the transmission bit rate and T The delay through The buffers.
If The coder and decoder buffers are the same size, B, tenthe delay through the buffers is given by T = B/R, which is a constant dependent on the transmission rate.
In order to be able to set the correct buffer occupancy (and hence overall delay) in the decoder, for example, after loss of synchronisation because of errors, the coder burner occupancy is measured periodically at a known point in the picture and transmitted with that picture information. At the time when this picture information is read out from the decoder buffer, along with the corresponding decoder buffer occupancy, the decoder buffer occupancy is measured and compared with The expected value of (B-Bc(r)).If There is a discrepancy, the rate of reading from he buffer is increased or decreased as appropriate such That the buffers are synchronised at some later point in the picture when the buffer occupancy is again checked.
Since the overall delay T = B/R, it right be thought That, for a variable transmission rate R, changes in The transirission rate R might result in changes in the delay T Through the codec. This wc'Ad create obvious problems for the synchronisation of six codecs in parallel if the rate, R, for each codec is different and changing.
However, we have appreciated that this is not necessarily the case, as will be illustrated using Figure 2. Figure 2a is a redrawing of Figures la and Ib in which it is assumed, for convenience and without loss of generality, that the coder buffer read address and the decoder buffer write address are the same. It can clearly be seen that the overall delay through the buffer pair is a constant.
In Figure 2b, it is assumed that the transmission rate is increased by an amount A R for a time # T. It can be seen that the delay Through the buffer pair reruns unchanged as the shorter time that information is in the coder buffer is compensated by an increased delay in the decoder buffer.
However, a problem arises if it is necessary to resynchronise the decoder buffer. The coder buffer occupancy at the time of writing and the decoder occupancy at the time of reading are no longer related by the equation Bc(r) + Bd(r) = B.
If tl is the time at which the information at a particular point (e.g. the start of a stripe) is written into the coder buffer and t2 is the time that this information is read out from the decoder buffer, then Bc(r,tl) + Bd(r,t2) = B - Y1 t y2 = Y1 where
and
and where R(t) is the change in traflmnission rate from the default rate Thus, for the decoder to be able to reset or to check its buffer read address the values of yl(t1) and y2(t2) or y1' (t1) and y2'(t2) must be known at the decoder.
Assuming that the transmission rate is changed only at The time when a new stripe of blocks is written into the coder buffer (or at a time as close to this as allowed by the transmission mltiplex.), then y1(t1) (or yn'(tl)) can be calculated by accumulating The sum
AR(stripe n) tstripe (or
stripe n) tstripe)- where tstripe is one stripe interval. In order to avoid the problem of knowing when to reset this sum, the accumulation could use appropriate rtodiilo arithmetic.
With the assumption made above, the transmission rate at the indut to the decoder buffer is changing at tines corresponding closely to starts of stripes at the coder. Therefore, by monitoring the transmission rate changes at the input to the decoder buffer, the decoder can also calculate an accumalating sum of these changes.
The time t2 at which a 'start-of-stripe' is read from the decoder buffer is not necessarily co-timed with a st rt-of-s-ri?e at the coder and hence with a change in R. However, an appropriate correction in the calculation of y2(t2) or y2,(t2) could be made taking into account this timing difference. Alternatively, the overall delay could be fixed such that these events were co-timed.
At the decoder, The value of the accumulating sum will need to be synchronised with that at the coder. This can he achieved, for examDle, by sending periodically the value of the sum yl(tl) and setting Y2(tl)Yl(tl)- The value of yl(tl) must be sent occasionally, therefore, as part of the transmission MUX together with the change cf transmission rate information.
It is possible to make changes in the transmission rate R such that the decoder buffer can overflow or underflow. This is illustrated in Figure 3. Buffer overflow occurs when the transmission rate is increased such that the buffer write address starts to overwrite inform2tion which has not yet been read from the buffer. Similarly, decoder buffer underflow can occur when the transmission rate is reduced and the read address catches up with the write address.
Decoder buffer underflow and overflow can be avoided by performing appropriate calculations at the coder. For example, Figure 3 shows That to avoid decoder overflow the coder must ensure that at any time, t
i.e.
To avoid underflow, the coder must also ensure that at any time t
i.e.
Therefore, the coder must know the total delay, T, through the buffers and must record and store buffer occupancies and values of the integrated transmission rate change for a period equal to this delay. The coder can then perform the checks described in equations (3) and (4).
Thus, two problems caused by the dynamic allocation of the bit rate between individual codecs running in parallel in an HDTV codec have been addressed. These are (a) delay checking and synchronisation for the individual decoce~s, and (b) decoder buffer underflow and overflow.
obese can be overcome to a large extent by a method according to the invention, in which: 1) The integral of the transmission rate or change in transmission rate is transmitted in the video MUX along with the buffer occupancy at the start of each stripe. The integral can be calculated modulo 2N where N is suitably large.
2) The decoder calculates the integral of the transmission rate or of the change in transmission rate at the input to the decoder buffer. This result can then be sampled as each stripe is read out of the buffer and appropriate co=ections made for the exact output timing.
3) The accumulation of the transmission rate or transmission rate change is sent periodically as part of the transmission MUX in order to reset the corresponding accumulating sum in the decoder.
t) The coder records and stores past values of the buffer occupancy and the acc-zrulated transmission rate or transmission rate changes in order to check for and prevent decoder buffer overflow and underflow.

Claims (10)

1. A method of regulating operation of a decoder buffer in a transmission system, in which changes in the transmission rate R and in the coder buffer occupancy Bc are monitored at the coder and the transmission rate is adjustable in response to the said changes to avoid underflow or overflow at the decoder buffer.
2. A method according to claim 1 in which the transmission rate or changes AR in the transmission rate are monitored over a period T equal to the sum of the delays at the coder and decoder buffers.
3. A method according to claim 2 in which the transmission rate is adjusted to meet the condition
at time t, so as to avoid overflow at the decoder buffer.
4. A method according to claim 2 or 3 in which the transaission rate is adjusted to meet the condition
at time t so as to void the underflow at the decoder buffer.
5. In a transmission system, means for regulating operation of a decoder buffer including means for monitoring changes in the transmission rate R and in the coder buffer occupancy Bc at the coder1 and means for adjusting the transmission rate in response to the said changes to avoid underflow or overflow at the decoder buffer.
6. Apparatus according to claim 5 in which the transmission rat or.change AR in the transmission rate are monitored over a period T equal to the sum of the delays at the coder and decoder buffers.
7. Apparatus according to claim 6 in which the transmission rate is adjusted to meet the condition
at time t, so as to avoid overflow at the decoder buffer.
8. Apparatus according to claim 6 or 7 in which the transmission rate is adjusted to meet the condition
at time t, so as t avoid underflow at the decoder buffer.
9. Apparatus for regulating operation of a decoder buffer in a variable transmission rate codec, the apparatus being substantially as hereinbefore described.
10. A method of synchronising buffer delays between coder and decoder buffers in a variable transmission rate codec, the method being substantially as hereinbefore described.
GB9401783A 1990-01-19 1994-01-31 Buffer regulation Expired - Fee Related GB2274041B (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB9001295A GB9001295D0 (en) 1990-01-19 1990-01-19 Buffer resynchronisation
GB9100983A GB2242097B (en) 1990-01-19 1991-01-16 Buffer resynchronisation

Publications (3)

Publication Number Publication Date
GB9401783D0 GB9401783D0 (en) 1994-03-23
GB2274041A true GB2274041A (en) 1994-07-06
GB2274041B GB2274041B (en) 1994-09-14

Family

ID=26296530

Family Applications (1)

Application Number Title Priority Date Filing Date
GB9401783A Expired - Fee Related GB2274041B (en) 1990-01-19 1994-01-31 Buffer regulation

Country Status (1)

Country Link
GB (1) GB2274041B (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1996008115A1 (en) * 1994-09-07 1996-03-14 Philips Electronics N.V. Mpeg information signal conversion system
GB2307151A (en) * 1995-11-10 1997-05-14 British Broadcasting Corp Digital coding of video signals
EP0817488A2 (en) * 1996-07-01 1998-01-07 Sun Microsystems, Inc. Media server system and method for preventing FIFO buffer underflow during multiple channel startup
WO1998009442A1 (en) * 1996-08-30 1998-03-05 Philips Electronics N.V. Video transmission system
GB2347326A (en) * 1999-02-26 2000-08-30 Mitel Inc Text-to-speech converter
EP1695253A2 (en) * 2003-12-16 2006-08-30 Infocus Corporation System and method for controlling a transmission of image data to a display device

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2181926A (en) * 1985-09-17 1987-04-29 Codex Corp Network data flow control
EP0431319A2 (en) * 1989-11-06 1991-06-12 Fujitsu Limited Video signal coding apparatus, coding method and video signal coding transmission system
EP0515101A2 (en) * 1991-05-23 1992-11-25 AT&T Corp. Buffer control for variable bit-rate channel
EP0517273A2 (en) * 1991-06-07 1992-12-09 Alcatel Espacio S.A. Method and device to regulate the output bit rate in variable bit rate video coders

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2181926A (en) * 1985-09-17 1987-04-29 Codex Corp Network data flow control
EP0431319A2 (en) * 1989-11-06 1991-06-12 Fujitsu Limited Video signal coding apparatus, coding method and video signal coding transmission system
EP0515101A2 (en) * 1991-05-23 1992-11-25 AT&T Corp. Buffer control for variable bit-rate channel
EP0517273A2 (en) * 1991-06-07 1992-12-09 Alcatel Espacio S.A. Method and device to regulate the output bit rate in variable bit rate video coders

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5566174A (en) * 1994-04-08 1996-10-15 Philips Electronics North America Corporation MPEG information signal conversion system
EP0921690A2 (en) * 1994-09-07 1999-06-09 Koninklijke Philips Electronics N.V. MPEG information signal conversion system
EP0921690A3 (en) * 1994-09-07 1999-07-14 Koninklijke Philips Electronics N.V. MPEG information signal conversion system
WO1996008115A1 (en) * 1994-09-07 1996-03-14 Philips Electronics N.V. Mpeg information signal conversion system
WO1997017809A1 (en) * 1995-11-10 1997-05-15 British Broadcasting Corporation Digital coding
GB2307151A (en) * 1995-11-10 1997-05-14 British Broadcasting Corp Digital coding of video signals
EP0817488A2 (en) * 1996-07-01 1998-01-07 Sun Microsystems, Inc. Media server system and method for preventing FIFO buffer underflow during multiple channel startup
EP0817488A3 (en) * 1996-07-01 2003-04-16 Sun Microsystems, Inc. Media server system and method for preventing FIFO buffer underflow during multiple channel startup
WO1998009442A1 (en) * 1996-08-30 1998-03-05 Philips Electronics N.V. Video transmission system
GB2347326A (en) * 1999-02-26 2000-08-30 Mitel Inc Text-to-speech converter
US6546366B1 (en) 1999-02-26 2003-04-08 Mitel, Inc. Text-to-speech converter
GB2347326B (en) * 1999-02-26 2004-04-14 Mitel Inc Text-to-speech converter
EP1695253A2 (en) * 2003-12-16 2006-08-30 Infocus Corporation System and method for controlling a transmission of image data to a display device
EP1695253A4 (en) * 2003-12-16 2007-10-03 Infocus Corp System and method for controlling a transmission of image data to a display device
US7797369B2 (en) 2003-12-16 2010-09-14 Seiko Epson Corporation System and method for controlling a transmission of image data to a display device

Also Published As

Publication number Publication date
GB9401783D0 (en) 1994-03-23
GB2274041B (en) 1994-09-14

Similar Documents

Publication Publication Date Title
KR100382690B1 (en) Dynamic Allocation of Communication Channel Bandwidth Between Contending Applications
JP4066058B2 (en) Programmable audio-video synchronization method and apparatus for multimedia systems
JP3864346B2 (en) Method and apparatus for synchronizing audio and video in an MPEG playback system
US6031584A (en) Method for reducing digital video frame frequency while maintaining temporal smoothness
JP3402177B2 (en) Digital signal multiplexing apparatus and method, digital signal transmission method, digital signal recording method, and recording medium
US6212208B1 (en) Method for coding and multiplexing multimedia data, apparatus for coding and multiplexing multimedia data, record media containing program for coding and multiplexing multimedia data
JPH03148981A (en) Picture signal encoding control system
JPH04504040A (en) High Definition TV Encoder/Decoder
JPH09510069A (en) Buffering of Digital Video Signal Encoder with Combined Bit Rate Control
US6948185B1 (en) Process and device for synchronizing an MPEG decoder
US5742732A (en) Data stream multiplexing apparatus and method and record medium therefor
US6380981B1 (en) Frame synchronizer
US7394829B2 (en) Data multiplexing apparatus, data multiplexing method, and transmission apparatus
GB2274041A (en) Buffer Resynchronisation in a variable transmission rate coder
GB2242097A (en) Buffer synchronisation in a variable transmission rate codec
US20020131765A1 (en) Digital video recorder
JP3644995B2 (en) Time stamp value calculation method in coded transmission system
KR19990068138A (en) Digital signal multiplexing method and apparatus, digital signal transmission method and apparatus, digital signal recording method and apparatus and recording medium
US6122020A (en) Frame combining apparatus
JP3185863B2 (en) Data multiplexing method and apparatus
JP2872104B2 (en) Time stamp adding apparatus and method, and moving image compression / expansion transmission system and method using the same
JP3248669B2 (en) Multiplexing method and multiplexer
JPH0923289A (en) Multimedia data synchronization method
US7039825B2 (en) Clock reproducing method and receiving clock producing apparatus allowing for absorption of transmission channel jitter
JP3169350B2 (en) Packet transmission system and packet transmission method

Legal Events

Date Code Title Description
PCNP Patent ceased through non-payment of renewal fee

Effective date: 20100116