GB2357674A - Compressed bitstreams - Google Patents

Compressed bitstreams Download PDF

Info

Publication number
GB2357674A
GB2357674A GB9925331A GB9925331A GB2357674A GB 2357674 A GB2357674 A GB 2357674A GB 9925331 A GB9925331 A GB 9925331A GB 9925331 A GB9925331 A GB 9925331A GB 2357674 A GB2357674 A GB 2357674A
Authority
GB
United Kingdom
Prior art keywords
audio
stream
streams
delay
video
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
GB9925331A
Other versions
GB2357674B (en
GB9925331D0 (en
Inventor
Fairbairn Bruce Devlin
Violet Snell
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.)
Snell Advanced Media Ltd
Original Assignee
Snell and Wilcox Ltd
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 Snell and Wilcox Ltd filed Critical Snell and Wilcox Ltd
Priority to GB9925331A priority Critical patent/GB2357674B/en
Publication of GB9925331D0 publication Critical patent/GB9925331D0/en
Priority to PCT/GB2000/004158 priority patent/WO2001031928A1/en
Priority to AU10440/01A priority patent/AU1044001A/en
Publication of GB2357674A publication Critical patent/GB2357674A/en
Application granted granted Critical
Publication of GB2357674B publication Critical patent/GB2357674B/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/04Synchronising
    • 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/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4307Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
    • H04N21/43072Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen of multiple content streams on the same device
    • 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/439Processing of audio elementary streams
    • H04N21/4392Processing of audio elementary streams involving audio buffer management
    • 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 or rendering scenes according to encoded video stream scene graphs
    • H04N21/44004Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer
    • 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/41Structure of client; Structure of client peripherals
    • H04N21/426Internal components of the client ; Characteristics thereof

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Television Systems (AREA)
  • Time-Division Multiplex Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

A multiplexed MPEG-2 stream having video and audio elementary streams is prepared for continuous looping by: estimating the differential buffer delay between the two streams; removing from the end of the audio stream a stream section approximately equal to said differential delay; and inserting that stream section at the beginning of the audio stream.

Description

2357674 COMPRESSED BITSTREAMS This invention relates to compressed
bit-streams and in the most important example to MPEG-2 bit-streams.
It is an important requirement for test and other purposes to produce MPEG-2 bit-streams which can be played in a loop, without discontinuities that would create difficulties for a downstream decoder. This problem is addressed by the invention of EP-A-0 893 030, to which reference is directed.
In the production of a looped transport stream, a further problem arises from the need to ensure synchronism between decoded video and audio, or indeed between other elementary streams having a time critical relationship.
It is important to realise that the video and audio signals are delayed as they pass through their respective encoders. There is also a corresponding delay in their decoders. The delay is caused by the compressed data bytes waiting in the encode 1 decode buffers so that the overall end-to-end delay is constant. This will be true regardless of the nature of the encoding.
Unfortunately, in a typical system, the delays in the video chain are different from the delays in the audio chain, because the buffers are of very different sizes as is shown in the diagram below.
Under normal circumstances, extra delay needs to be added to the audio so that the final decoded audio-video synchronisation is maintained. If the audio decoder buffer were big enough, it would be a simple task to instruct the decoder to "hold on" to the compressed data bytes for a longer time than usual and hence obtain synchronisation. Unfortunately, the audio buffer is not big enough to allow this to happen.
This situation becomes especially difficult when trying to create a seamlessly looped MPEG transport stream with perfectly synchronised audio and video components.
It is therefore an object of one form of the present invention to provide method and apparatus for looping a transport stream, which ensures synchronism between decoded elementary streams.
Accordingly, the present invention consists, in one aspect, in a method of producing a multiplexed stream comprising at least two elementary streams which have been compression coded in respective encoders which each have an encoder buffer, the elementary streams requiring to be synchronised when decoded, comprising the steps of determining the differential buffer delay between the two streams; cutting from one end of one elementary stream a stream section approximately equal to said differential delay; pasting said 5 stream section at the other end of said one elementary stream.
The invention will now be described by way of example with reference to the accompanying drawings, in which:
Figure 1 is a block diagram illustrating the different buffer sizes of typical video and audio encoderldecoder pairs (codecs); Figure 2 is a block diagram illustrating the use of a compensating delay at an audio encoder; Figure 3 is a block diagram illustrating the use of a compensating delay at an audio decoder; Figure 4 is a diagram illustrating the desired timing relationship between video and audio after decoding of the continuous stream which results from looping of a transport stream segment; Figure 5 is a diagram similar to Figure 4, illustrating the desired timing relationship between video and audio before decoding; Figure 6 is a diagram illustrating the consequential timing requirement on the video and audio streams of the transport stream segment which is to be looped; and Figure 7 is a diagram similar to Figure 6, illustrating one process according to the present invention.
The example will be taken of a single programme MPEG-2 transport stream, with a requirement for precise synchronism between video and audio.
As mentioned above, video and audio signals are typically delayed by different amounts as they pass through their respective encoders. This is illustrated in Figure 1, which also shows the corresponding delay in the respective decoders.
Under normal circumstances, extra delay needs to be added to the audio at the encoder, so that the final decoded audio-video synchronisation is maintained. This is shown in Figure 2. If the audio decoder buffer were big enough, it would be a simple task to instruct the decoder to "hold on" to the compressed data bytes for a longer time than usual and hence obtain synchronisation. Figure 3 illustrates this approach. Unfortunately, the audio buffer is not big enough to allow this to happen.
Figure 4 shows the desired relationship of the audio and video after decoding.:rhe loops start co-timed; end co-timed and remain co-timed every time the loops are decoded. If we now look at the timing relationships in the MPEG stream just prior to decoding, we need to shift the streams by the same amount as the delay in the respective decoder.
Figure 5 now shows the desired relationship of the audio and video prior to decoding. When the decoder delays are applied to the loops above, the desired synchronisation will be achieved. Notice that there is a differential delay 8 between the components, which under normal circumstances is greater than the delay through the audio decoder buffer and cannot be corrected by simple numerical manipulation of the compressed audio parameters.
In essence we cannot make a simple AV loop where each component starts at the same time T. When the components are multiplexed together for synchronisation at the output of the decoder, there will always be too great a delay in the audio (or other time critical component).
The essential feature of the invention is described in Figure 7 in which the problem is explained. If we can find a method for defining a value of the delay 3 then we can create the following simple multiplex:
the video starts at time T and has duration D the audio (or other co-timed stream) starts at time T + 8 and has duration D In effect we are pre-compensating for the differential delays in the decoders by cutting a portion of the audio from the end of the stream and pasting it onto the front of the stream. Provided that the value that is chosen for 8 is sufficiently close to the differential audio and video coder delays, the decoder buffer should be able to accommodate the residual offset between video and audio streams.
The problem is exacerbated by the properties of the associated component to be synchronised:
Audio is delivered in fixed size frames. This means that the value of 8 must be rounded so that the number of bytes chopped is an integer number of audio frames. Other content may have qualities which mean that large segments may have to be chopped. Subtitles for example may need to be split at whole page description boundaries, depending on the presentation model being used.
One starting point for 8 is the vbv-delay of the first 1 frame of the video image. In the case of video and audio streams, there will then be determined that integral number of audio frames which approximates most closely to this vbv-delay. Other, similar values could be used. Indeed, if the intent is to produce a stream which is looped continuously to exercise and test decoders, there might deliberately be chosen a number of audio frames which is not the closest approximation to the vbv-delay. This would exercise more strenuously the buffer management of the decoder. Thus, calculations could be performed to define a range of 3 values ranging from decoder buffer management terms from: "difficult to avoid underflow" through "easy" to "difficult to avoid overflow".
An alternative to the preparation of a multiplexed transport stream that can be looped, is the processing of an existing transport stream (if it conforms with certain constraints) to make it capable of being looped. The processes required to make each elementary stream "loopable" are discussed in the earlier mentioned reference. In this case, the section of - say the audio stream which is to be cut from the end and pasted at the beginning of the transport stream will effectively overwrite the beginning of the audio stream.
Similar considerations will apply to the concatenating, rather than looping of streams. If, for example, three existing transport streams are to be concatenated and then looped, the end section of the audio stream of the third transport stream will be pasted at the start of the audio stream of the first transport stream. The "breaks" in the video and the audio between the first and second transport streams (and between the second and third) will be offset from each other by a corresponding amount.

Claims (2)

1. A method of producing a multiplexed stream comprising at least two elementary streams which have been compression coded in respective encoders which each have an encoder buffer, the elementary streams requiring to be synchronised when decoded, comprising the steps of determining the differential buffer delay between the two streams; cutting from one end of one elementary stream a stream section approximately equal to said differential delay; pasting said stream section at the other end of said one elementary stream.
2. A method according to Claim 1, wherein the two elementary streams are respectively video and audio.
GB9925331A 1999-10-26 1999-10-26 Compressed bitstreams Expired - Fee Related GB2357674B (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
GB9925331A GB2357674B (en) 1999-10-26 1999-10-26 Compressed bitstreams
PCT/GB2000/004158 WO2001031928A1 (en) 1999-10-26 2000-10-26 Method for looping compressed bitstreams
AU10440/01A AU1044001A (en) 1999-10-26 2000-10-26 Method for looping compressed bitstreams

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB9925331A GB2357674B (en) 1999-10-26 1999-10-26 Compressed bitstreams

Publications (3)

Publication Number Publication Date
GB9925331D0 GB9925331D0 (en) 1999-12-29
GB2357674A true GB2357674A (en) 2001-06-27
GB2357674B GB2357674B (en) 2003-12-10

Family

ID=10863414

Family Applications (1)

Application Number Title Priority Date Filing Date
GB9925331A Expired - Fee Related GB2357674B (en) 1999-10-26 1999-10-26 Compressed bitstreams

Country Status (3)

Country Link
AU (1) AU1044001A (en)
GB (1) GB2357674B (en)
WO (1) WO2001031928A1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2242097A (en) * 1990-01-19 1991-09-18 British Broadcasting Corp Buffer synchronisation in a variable transmission rate codec
JPH08223131A (en) * 1995-02-14 1996-08-30 Oki Electric Ind Co Ltd Data multiplexer/demultiplexer
GB2301265A (en) * 1995-05-22 1996-11-27 Sony Electronics Inc Dynamically synchronising temporally related data streams such as video and audio
WO1997039587A1 (en) * 1996-04-12 1997-10-23 Snell & Wilcox Limited Method and apparatus for looping of compressed video bitstreams

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9424429D0 (en) * 1994-12-02 1995-01-18 Philips Electronics Uk Ltd Audio/video timing discrepancy management

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2242097A (en) * 1990-01-19 1991-09-18 British Broadcasting Corp Buffer synchronisation in a variable transmission rate codec
JPH08223131A (en) * 1995-02-14 1996-08-30 Oki Electric Ind Co Ltd Data multiplexer/demultiplexer
GB2301265A (en) * 1995-05-22 1996-11-27 Sony Electronics Inc Dynamically synchronising temporally related data streams such as video and audio
WO1997039587A1 (en) * 1996-04-12 1997-10-23 Snell & Wilcox Limited Method and apparatus for looping of compressed video bitstreams

Also Published As

Publication number Publication date
AU1044001A (en) 2001-05-08
GB2357674B (en) 2003-12-10
GB9925331D0 (en) 1999-12-29
WO2001031928A1 (en) 2001-05-03

Similar Documents

Publication Publication Date Title
US6252873B1 (en) Method of ensuring a smooth transition between MPEG-2 transport streams
EP1397918B1 (en) Splicing of digital video transport streams
AU751335B2 (en) Video and audio signal processing
WO1999052067A3 (en) Apparatus and method of splicing digital video streams
WO1999030503A3 (en) Method and apparatus for encoding and slicing digital video bit streams
JP2001513606A (en) Processing coded video
WO1996017490A3 (en) Audio/video timing discrepancy management
KR100294663B1 (en) Mpeg decoder and decoding control method
US8170401B2 (en) Optimizing ad insertion by removing low information frames
CA2303149C (en) Seamless splicing of compressed video programs
US8904426B2 (en) Preconditioning ad content for digital program insertion
US20060203853A1 (en) Apparatus and methods for video synchronization by parsing time stamps from buffered packets
AU766738B2 (en) Data compression unit control for alignment of output signal
US8837599B2 (en) System, method and apparatus for clean channel change
EP3360334B1 (en) Digital media splicing system and method
GB2357674A (en) Compressed bitstreams
US7139241B1 (en) Method for preventing buffer underflow during digital transport stream transmission, multiplexing and splicing
KR100240331B1 (en) Apparatus for synchronizing a video and an audio signals for a decoder system
KR20030082117A (en) Method for audio/video signal lip-sync controlling in digital broadcasting receiver
KR20010090514A (en) Demultiplexing a statistically multiplexed mpeg transport stream into cbr single program transport streams
KR100499519B1 (en) Method for Controlling Audio Lip-Synchronization
JP3573171B2 (en) Transmission method and transmission system for multiple variable rate signals
KR100978506B1 (en) Digital video player and the method for controlling buffer the player
Helms et al. Switching and Splicing of MPEG-2 Transport Streams
Knee et al. MPEG-2 CLONING USING MOLE TECHNOLOGY

Legal Events

Date Code Title Description
732E Amendments to the register in respect of changes of name or changes affecting rights (sect. 32/1977)

Free format text: REGISTERED BETWEEN 20090903 AND 20090909

PCNP Patent ceased through non-payment of renewal fee

Effective date: 20121026