U.S. patent application number 09/829343 was filed with the patent office on 2001-09-06 for method of switching between video sequences and corresponding device.
This patent application is currently assigned to U. S. Philips Corporation. Invention is credited to Lemaguet, Yann.
Application Number | 20010019585 09/829343 |
Document ID | / |
Family ID | 26147860 |
Filed Date | 2001-09-06 |
United States Patent
Application |
20010019585 |
Kind Code |
A1 |
Lemaguet, Yann |
September 6, 2001 |
Method of switching between video sequences and corresponding
device
Abstract
The invention relates, in encoding/decoding systems, to an
improved method of switching from a first coded video sequence to a
second one. In order to avoid underflow or overflow of the decoder
buffer, a transcoding of the input streams IS1 and IS2 is used to
shift the temporal position of the switching point and to obtain at
the output of the provided transcoders (11, 12) streams TS1 and TS2
containing an identical entry point and the same decoder buffer
characteristics.
Inventors: |
Lemaguet, Yann; (Paris,
FR) |
Correspondence
Address: |
Corporate Patent Counsel
U.S. Philips Corporation
580 White Plains Road
Tarrytown
NY
10591
US
|
Assignee: |
U. S. Philips Corporation
|
Family ID: |
26147860 |
Appl. No.: |
09/829343 |
Filed: |
April 9, 2001 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
09829343 |
Apr 9, 2001 |
|
|
|
09120292 |
Jul 21, 1998 |
|
|
|
Current U.S.
Class: |
375/240.1 ;
348/385.1; 348/419.1; 375/240.14; 375/E7.014; 375/E7.023;
375/E7.198 |
Current CPC
Class: |
H04N 21/23406 20130101;
H04N 21/234354 20130101; H04N 19/40 20141101; H04N 21/234363
20130101 |
Class at
Publication: |
375/240.1 ;
348/385.1; 348/419.1; 375/240.14 |
International
Class: |
H04N 007/12 |
Foreign Application Data
Date |
Code |
Application Number |
Jul 22, 1997 |
EP |
97401764.2 |
Claims
1. A method of switching from a first coded video sequence to a
second one, said video sequences having been encoded by different
video encoders using regulation buffers, wherein the switching step
is preceded by a transcoding step of each of said coded sequences,
provided for shifting the temporal position of the switching
point.
2. A device for switching from a first coded video sequence to a
second one, said video sequences having been encoded by different
video encoders using regulation buffers and said device comprising
a switching circuit that receives on two inputs coded input
bistreams corresponding to said first and second video sequences
and yields an output stream corresponding to only one of said coded
input bitstreams, wherein each input of the switching circuit is
preceded by a transcoding circuit.
Description
[0001] The present invention relates to a method of switching from
a first coded video sequence to a second one, said video sequences
having been encoded by different video encoders using regulation
buffers, and to a corresponding switching device. This invention
may be used for instance in MPEG1 or MPEG2 encoding/decoding
systems.
[0002] Encoding systems such as those according to the MPEG2
standard produce data at variable rates (encoded pictures have
variable sizes in bits) and require an output data buffer in order
to feed the (constant bitrate) transmission channel. Similarly the
corresponding decoders require an input data buffer to enable them
to use data from said channel at the required variable rates. The
transmitted encoded pictures will therefore not spend the same time
in the decoder buffer. As a consequence, when switching from a
first video sequence to a second one, the respective decoder buffer
delays at the transition (or switching point) are not equal.
[0003] It is known indeed that, thanks to the abstract model of
decoding VBV (Video Buffer Verifier) defined in the MPEG standard,
it is possible to verify that an MPEG bitstream is decodable with
reasonable buffering and delay requirements (expressed in the
sequence header, in the fields "bitrate" and "buffer size"). This
model of VBV is that of a receiving buffer for the coded bitstream
and an associated instantaneous decoder so that all the data for a
picture are instantaneously removed from said receiving buffer.
Within the framework of this model, constraints on the bitstream
(by way of the buffer occupancy) have been defined so that decoding
can occur without buffer underflow or overflow. If said first and
second sequences to be switched have been separately encoded, such
a risk of overflow or underflow for the decoder buffer however
exists.
[0004] In order to prevent such a risk, the switching operation may
be performed in the decompressed domain where all the decoded
pictures are again described with the same number of bits and last
a same duration. Said pictures are then sent to a conventional
mixer for switching, and recoded before transmission. Such a
solution, described for example in the international patent
application WO 97/08898, is however rather complex. Moreover, a
decoding step followed by a re-encoding one damages the picture
quality.
[0005] It is therefore an object of the invention to propose
another switching method that overcomes these drawbacks.
[0006] To this end the invention relates to a switching method such
as described in the preamble of the description and wherein the
switching step is preceded by a transcoding step of each of said
coded sequences, provided for shifting the temporal position of the
switching point. The invention also relates to a corresponding
device.
[0007] The basic idea of this solution is to transcode the input
encoded streams such that they have at the switching point, now
chosen a posteriori, the same decoder buffer characteristics, and
particularly buffer delays that now are equal.
[0008] The particularities and advantages of the invention will now
become apparent from the following description and the accompanying
drawings, in which
[0009] FIG. 1 is an illustration of the method and device according
to the invention;
[0010] FIG. 2 shows a transmission chain including a transcoder
[0011] FIG. 3 shows an example of transcoder buffer boundaries
corresponding to measures taken during the transcoding step
[0012] FIG. 4 shows the transcoded bitstream
[0013] FIG. 5 shows an implementation of each transcoding circuit
of a device according to the invention.
[0014] The switching method and device according to the invention
are illustrated in FIG. 1, that shows transcoding devices 11 and 12
receiving input coded streams IS1 and IS2 (corresponding to first
and second original video sequences, for instance to a national
television programme and to a local one) and delivering
corresponding output transcoded streams TS1 and TS2. These streams
TS1 and TS2 now contain an identical entry point, as it will be
explained, and may be sent towards the switcher 15. At the output
of said switcher, an output stream OS is available that
corresponds, with respect to the input streams, to that one called
the second video sequence, the other input stream being then the
first one.
[0015] In a transcoding operation, a compressed sequence with a
first given format is converted into another one with another
format. The transcoding operation here proposed is used to shift
the temporal position of the switching point so that the input
coded streams will have the same decoder buffer characteristics
(which was not the case for separately encoded streams). This
shifting of the temporal position of the switching point is
obtained by modifying the number of bits allocated to the encoding
of the video parts preceding and following said switching point,
while the total number of bits used by each transcoded stream
remains equal to the one used by the corresponding input
stream.
[0016] A transmission chain is illustrated in FIG. 2: it includes a
transcoder 22 between an encoder 21 and a decoder 23, shown with
their buffers. According to the invention, the output bit rate of
each transcoder is equal to its input bit rate. There is indeed no
change in the bit rate, only the picture start positions are
changed (shifted) in order to create a seamless splicing point
keeping ensured the stability of the decoder buffer.
[0017] The transcoding operation has to ensure the decoder buffer
stability for the output stream, and must therefore avoid overflow
or underflow of said buffer. Critical times for the decoder buffer
overflow are the ones just before decoding a picture, i.e. the
times D(t(k))+t(k), the notations being the following ones
[0018] t(k) time at which the start code of the picture number k
enters the transcoder
[0019] D(t(k))=delay between transcoder buffer input and decoder
output (as seen for instance in FIG. 2)
[0020] By definition of D(t(k)), one has:
D(t(k)=VBV_delay_out(k)+F(t(k))/R (1)
[0021] and
D(t(k)+t(k)=D(t(k-1))+t(k-1)+1/P (2)
[0022] with:
[0023] P=frame rate (and 1/P=frame period).
[0024] R=video bit rate
[0025] F(.) =transcoder buffer fullness at concerned time (.).
[0026] VBV_delay_out(k)=VBV delay of picture number k at the
transcoder output/decoder input.
[0027] For defining the VBV delay, one must recall that the VBV
(Video Buffering Verifier), considered as connected to the output
of the encoder, has the same clock frequency and picture rate as
said encoder (they are operated synchronously). The VBV has a
decoding buffer of size S (where S is given in the so-called
vbv_buffer_size field of the sequence header) that is initially
empty and is filled by the bitstream for a time specified in the
so-called vbv_delay_field of the video bitstream. After each
picture interval, all of the data for the picture which, at that
time, has been in the buffer longest is instantaneously removed.
The VBV is examined immediately before removing any data and
immediately after each picture is removed, and its occupancy must
then lie between 0 and S bits.
[0028] In the present case, to avoid overflow and underflow of the
decoder buffer, the transcoder buffer fullness has therefore to be
bounded. The boundaries B(MIN) and B(MAX) are defined according to
the following relation:
B(MIN).ltoreq.F(t(k)).ltoreq.B(MAX) (3),
[0029] by considering the decoder at the most critical times.
[0030] For the decoder buffer overflow, said critical times are the
ones just before decoding a picture (i.e. the times t(k)+D(t(k)).
Just before such times, the decoder buffer fullness, at time
t(k)+D(t(k)), is given by FDEC(t(k)+D(t(k))): 1 FDEC ( t ( k ) + D
( t ( k ) ) = t ( j ) t ( k ) - D ( t ( k ) ) R indec ( t ) t - { F
( t ( j ) ) + i = j k - 1 sizepic ( i ) } 1
[0031] with:
[0032] tj=time at which the decoder buffer is considered as
empty;
[0033] R.sub.indec=bit rate at the decoder buffer input
(=R.sub.out);
[0034] R.sub.out32 bit rate at the transcoder buffer output;
[0035] sizepic(i)=size of the picture i.
[0036] As it is wanted that FDEC (t(k)+D(t(k)).ltoreq.S (S being,
as already said, the decoder buffer size), it can be deduced, after
some computations, that: 2 B ( MIN ) = MAX { 0 , t ( k ) t ( k ) +
D ( t ( K ) ) R cut ( t ) t - S } ( 4 ) 2
[0037] Similarly, for the decoder buffer underflow, the most
critical times are the ones just after decoding a picture (i.e. the
times t(k)+D(t)(K)), which allows to deduce, after some similar
computations, the relation giving B(MAX): 3 B ( MAX ) = t ( k ) t (
k ) + D ( t ( k ) ) - 1 / P R out ( t ) dt ( 5 ) 3
[0038] Moreover, the transcoding has to guarantee a specified
decoder buffer delay at the transition point, which leads to a
determined transcoder buffer fullness value at the transition
point. Two other boundaries converging toward this value have
therefore to be introduced. An illustration of all these transcoder
buffer boundaries is given in FIG. 3 (transcoder buffer fullness
TBF versus time t), with the following notations
[0039] B(MIN) and B(MAX), for the lower and upper boundaries
introduced by the decoder buffer stability constraints;
[0040] BFT, for the buffer fullness to be guaranteed at the
transition point TP;
[0041] BT(MIN) and BT(MAX), for the converging boundaries
introduced by the transition point constraints.
[0042] It must also be indicated that the transcoding operation is
only useful, and therefore only performed, within a temporal window
positioned around the transition point arrival time in the
transcoder. As shown in FIG. 4, this temporal window starts a
sufficient delay (transcoding start=TST) before the transition
point arrival time, so that the wanted decoder buffer constraints
are really obtained at this point, and also ends another sufficient
delay (transcoding end=TED) after said transition point arrival
time, so that the decoder buffer characteristics of the transcoded
stream become equal to the ones of the corresponding input stream.
Outside this temporal window, the transcoder is equivalent to a
delay line, said delay having no effect on the image quality.
[0043] The structure of each transcoding device of FIG. 1 is
therefore the following, as illustrated in FIG. 5: it comprises in
series a variable length decoder 51, an inverse quantizer 52, a
quantizer 53, a variable length encoder 54 (also designated by the
references VLD, Q.sup.-1, Q and VLC respectively), and a buffer 55.
A regulation circuit 56 provided at the output of said buffer
allows to modify the quantization stepsize in the quantizer 53. In
parallel with the first branch constituted by these elements 51 to
56, a delay line 57 forming a second branch is provided (the delay
it introduces is equal to the transcoding delay). A switching
circuit 58 receives on two inputs the outputs of said first and
second branches. As already seen, the input bit rate at the inputs
of said branches and the output bitrate at the output of the
switching circuit 58 have the same value.
* * * * *