GB2274041A - Buffer Resynchronisation in a variable transmission rate coder - Google Patents
Buffer Resynchronisation in a variable transmission rate coder Download PDFInfo
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
- H04N21/23406—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving management of server-side video buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/146—Data rate or code amount at the encoder output
- H04N19/152—Data rate or code amount at the encoder output by measuring the fullness of the transmission buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/236—Assembling 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/23614—Multiplexing of additional data and video streams
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/434—Disassembling 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/4348—Demultiplexing of additional data and video streams
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/44—Processing 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/44004—Processing 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods 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.
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)
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)
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 |
-
1994
- 1994-01-31 GB GB9401783A patent/GB2274041B/en not_active Expired - Fee Related
Patent Citations (4)
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)
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 |