Professional Documents
Culture Documents
0-7803-6514-3/00/$10.0002000IEEE 54
Authorized licensed use limited to: Qualcomm. Downloaded on June 25,2010 at 20:50:26 UTC from IEEE Xplore. Restrictions apply.
the bitstream buffer memory but also the MB decoding 3 MPEG-4 video buffering verifier analysis
capacity and the MB picture memory.
The MPEG-4 Video Buffering Verifier mechanism Although the Video Buffering Verifier mechanism is
consists of three different models, each one defining a set essentially described in terms of decoder operation, it is a
of rules and limits to Verify if a specific Of de~oder task of the encoder to implement it and to guarantee that it
resources is Within the VdUeS allowed by the is not violated. For this, the encoder has to “shape” the
corresponding profile and level definition: encoded data in a way that it does not violate the
Video Reference Memory Verifier (VMV) - This constraints imposed by this mechanism. If any of the
model is used to verify if the picture memory required Video Buffering Verifier models tends to be violated, the
at the decoder for the decoding of a given scene does encoder has to take appropriate countermeasures to avoid
not exceed the values specified for the corresponding it. Such task is mainly dealt with by the rate control
profile and level. The model is defined in terms of the mechanism that takes into account the scene
VMV buffer size, which is the maximum number of characteristics, the encoding results, and the status of the
decoded MBs that the decoder can store during the several Video Buffering Verifier buffers for the best
decoding process (maximum in the sense that it is there control of the encoder [2].
for sure). This buffer accumulates all the decoded MBs
of all VOPs and stores them until they are no longer 3.1 Analysis of the VMV model
needed for the prediction of other VOPs.
Video Complexity Verifier (VCV) - This model is The VMV occupancy due to a given VOP depends on
used to verify if the computational power, defined in its size in MB units and on the time interval during which
terms of MB/s, required at the decoder does not exceed the VOP stays in the VMV buffer. It is possible to
the values specified for the corresponding profile and identify, at least, two major types of picture memory
level. The model is defined in terms of the VCV MB/s required by any receiving terminal:
decoding rate and VCV buffer size and is applied to all Decoding memory to store the decoded VOPs and the
MBs in the scene. If arbitrarily shaped VOs exist in the corresponding predictions (reference VOPs), during the
scene, an additional VCV buffer and VCV decoding
rate is also defined, to be applied only to the boundary
MBs. The ratio between the VCV buffer size and the
. decoding urocess.
- I
55
Authorized licensed use limited to: Qualcomm. Downloaded on June 25,2010 at 20:50:26 UTC from IEEE Xplore. Restrictions apply.
plus the VCV latency, i.e. at the time corresponding to 0 Signal the impossibility to encode the given scene with
the maximum decoding duration of the B-VOP. Thus, the amount of picture memory provided by the chosen
B-VOPs are released from the VMV buffer before the profile0level combination (this may lead to the choice
following VOP (in composition order) starts being of a more powerful profile@level).
composed. This approach is neither a decoding memory An overflow of the W buffer may lead to a situation
approach, otherwise B-VOPs should be released where the decoder is not able to correctly decode part or
immediately after their decoding has finished, or a all MBs in one or more VOPs (due to the lack of picture
global memory approach since B-VOPs are released memory to store the decoded VOPs) and thus to a coding
from the VMV buffer before their presentation has desynchronization between encoder and decoder.
finished.
The adopted MPEG-4 VMV solution underestimates 3.3 Analysis of the VCV model
the total picture memory needed at the decoder, notably
the memory needed for the composition and presentation In MPEG-4 the load on the decoder is measured by the
of B-VOPs, but overestimates the picture memory needed occupancy of the VCV buffer. There are several ways to
only for the decoding process. Since VOP composition is measure the complexity of the encoded data, which can be
not normative in MPEG-4, it would cause no surprise if defined by any of the following parameters:
the decoding memory approach had been adopted. 0 Number of MBs per second.
56
Authorized licensed use limited to: Qualcomm. Downloaded on June 25,2010 at 20:50:26 UTC from IEEE Xplore. Restrictions apply.
0 With MB weights - The MBs are divided into A VCV model where the three different types of
classes, e.g. according to its coding type, and each MB MBs (transparent, opaque, and boundary) could be
class has an associated decoding complexity weight. discriminated in terms of decoding complexity would
The VCV occupancy due to a given VOP is a weighted be more adequate than the current MPEG-4 VCV
sum of its MBs. As in the preceding case, the VCV model. In this context, the single buffer with single
buffer is emptied at a fixed VCV decoding rate. The decoding rate with MB weights or the multiple buffers
main advantage of this approach is to model more with multiple decoding rates solutions appear as good
closely the real decoding complexity of a given set of candidates for the VCV modeling. In the first case, the
ESs building a visual scene. However, the definition of impact of transparent MBs could be reduced by
meaningful MB weights is not a straightforward task. assigning them a lower MB weight, while for the
second case this could be done by defining a higher
Single buffer with multiple decoding rates - This
buffer size and higher decoding rate.
approach assumes also a FIFO decoding; however, here
each MB class has its own decoding rate. This
News C I F [ 4 V O s l 6’ 15 Hz
approach is equivalent to the previous approach when
450
the MB weights are the ratios between the different MB
400
class decoding rates and a reference decoding rate.
350
Multiple buffers with multiple decoding rates - This 300
VCV model approach assumes some degree of 2 250
parallelism in the decoder which may happen in Ii 200
hardware-based decoders with dedicated hardware for 150
decoding some types of MBs, e.g. a module for 100
decoding MBs without shape information or 50
completely opaque, and another module for decoding 0
MBs with shape information (i.e. boundary MBs). The 0 50 100 150 208 256 300
Frame
VCV model consists of N buffers, one for each MB
class, and the associated decoding rates. The decoding News C I F [ 4 V O s l @ IS HZ
time is determined by the last buffer to be emptied.
VCV B u r fer Occupancy -
MPEG-4 VCV model approach - The MPEG-4VCV VMV B u f f e r Occupancy
57
Authorized licensed use limited to: Qualcomm. Downloaded on June 25,2010 at 20:50:26 UTC from IEEE Xplore. Restrictions apply.
Skip one or more VOPs for that time instant. 0 Reactive mode - Whenever the coding decisions taken
Reduce the number of MBs with shape information (in by the encoder lead to a violation of the VBV
case this is the limiting factor), e.g. by changing the constraints, new coding decisions are adopted to avoid
shape of the objects or merging objects (if this is an this situation.
acceptable solution for the application in question) The reactive mode is typically more effective in
Decrease the size of some VOPs, e.g. by splitting an achieving proper VBV buffer control, since it usually
object into two or more objects it may be possible to involves choosing iteratively from multiple coding
reduce the total number of MBs in the resulting decisions the one that, fulfilling the VBV constraints, has
bounding boxes (if this is an acceptable solution for the the best tradeoff in terms of rate-distortion operation.
application in question). However, the reactive mode is not very suited for real-
time encoding since it may involLveextra delays that are
Notice that the overflow of one (or both) of the VCV not acceptable for real-time conditions. Besides being less
buffers may lead to the incomplete decoding of one or effective, the preventive mode cannot completely
more VOPs and thus to a coding desynchronization guarantee that the VBV will not be violated; the less
between encoder and decoder. severe the VBV thresholds to operate the preventive mode
are, the higher is the risk that a VBV violation happens.
3.5 Analysis of the VBV model Typically, the encoder rate control can take one of the
following actions to prevent or avoid VBV violation:
The encoder needs to shape the encoded data in order
0 Adjust the MB quantization parameters (texture
to guarantee that the encoded bits for each VOP are
available for decoding at the time corresponding to the losses/distortion).
VOP decoding time. This can be done by allocating the 0 Adjust the shape encoding losses (distortion).
available channel rate in a pre-defined or rigid way -@ed 0 Skip the encoding of the incoming VOP(s).
bandwidrh allocation, or dynamically, by allocating the
available channel rate among the several VOs in the scene 0 Introduce stuffing bits (increase the VBV buffer
according to the VO’s characteristics (e.g. size, activity, occupancy if underflow is the problem).
complexity, etc.) - dynamic bandwidth allocation. Both the overflow and underflow of the VBV buffer
As for the VMV and VCV models, MPEG-4 Visual must be avoided. Notice that the VBV buffer overflow
does not standardize any method for achieving proper may lead to a loss of data and thus to the incomplete
VBV buffer control. This freedom allows the decoding of one or more VOPs, while the VBV buffer
implementers to chose the best buffer control mechanism underflow may prevent the decoder to decode the
that guarantees proper VBV operation for each case. As incoming data on time and thus both may lead to a coding
shown in 131 and [4], joint rate control strategies, where desynchronization between encoder and decoder.
the available bit rate is dynamically allocated among the
several VOs in the scene can achieve better performance, 4 Finalremarks
when compared to independent rate control, where the
available resources are rigidly allocated. This paper analyzed the MPEG-4 Video Buffering
Although the MPEG-4 VBV specification states that in Verifier mechanism highlighting its major features and
the case of a scene composed by multiple VOs, each with drawbacks and compared the adopted MPEG-4 models
one or more VOLs, the VBV model should be applied with other alternative models. This analysis showed that
independently to each VOL [11, the MPEG-4 VBV model the MPEG-4 models can still be improved, notably the
does not prevent the dynamic allocation of resources and VMV and VCV models: the VMV to better reflect the fact
combined buffer control, provided that the sum of all that composition is not normative in MPEG-4, while the
individual buffers does not exceed the profile@level VCV to better reflect the real complexity of visual scenes
limits. containing a high percentage of transparent MBs.
58
Authorized licensed use limited to: Qualcomm. Downloaded on June 25,2010 at 20:50:26 UTC from IEEE Xplore. Restrictions apply.