|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--jj2000.j2k.entropy.encoder.LayersInfo
This class stores the specification of a layer distribution in the bit stream. The specification is made of optimization points and a number of extra layers to add between the optimization points. Each optimization point creates a layer which is optimized by the rate allocator to the specified target bitrate. The extra layers are added by the rate allocator between the optimized layers, with the difference that they are not optimized (i.e. they have no precise target bitrate).
The overall target bitrate for the bit stream is always added as the last optimization point without any extra layers after it. If there are some optimization points whose target bitrate is larger than the overall target bitrate, the overall target bitrate will still appear as the last optimization point, even though it does not follow the increasing target bitrate order of the other optimization points. The rate allocator is responsible for eliminating layers that have target bitrates larger than the overall target bitrate.
Optimization points can be added with the addOptPoint() method. It takes the target bitrate for the optimized layer and the number of extra layers to add after it.
Information about the total number of layers, total number of optimization points, target bitrates, etc. can be obtained with the other methods.
Field Summary | |
(package private) int[] |
extralyrs
The number of extra layers to be added after an optimized layer. |
(package private) int |
nopt
The number of optimized layers, or optimization points, without counting the extra one coming from the overall target bitrate |
(package private) float[] |
optbrate
The target bitrate to which specified layers should be optimized. |
private static int |
SZ_INCR
The size increment for the arrays |
private static int |
SZ_INIT
The initial size for the arrays: 10 |
(package private) float |
totbrate
The overall target bitrate, for the whole bit stream |
(package private) int |
totlyrs
The total number of layers |
Constructor Summary | |
LayersInfo(float brate)
Creates a new LayersInfo object. |
Method Summary | |
void |
addOptPoint(float brate,
int elyrs)
Adds a new optimization point, with target bitrate 'brate' and with 'elyrs' (unoptimized) extra layers after it. |
int |
getExtraLayers(int n)
Returns the number of extra layers to add after the optimization point 'n', but before optimization point 'n+1'. |
int |
getNOptPoints()
Returns the number of layers to optimize, or optimization points, as specified by this object. |
float |
getTargetBitrate(int n)
Returns the target bitrate of the optmimization point 'n'. |
float |
getTotBitrate()
Returns the overall target bitrate for the entire bit stream. |
int |
getTotNumLayers()
Returns the total number of layers, according to the layer specification of this object and the overall target bitrate. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
private static final int SZ_INIT
private static final int SZ_INCR
int totlyrs
float totbrate
int nopt
float[] optbrate
int[] extralyrs
Constructor Detail |
public LayersInfo(float brate)
brate
- The overall target bitrate for the bit streamMethod Detail |
public float getTotBitrate()
public int getTotNumLayers()
public int getNOptPoints()
public float getTargetBitrate(int n)
n
- The optimization point index (starts at 0).
public int getExtraLayers(int n)
n
- The optimization point index (starts at 0).
public void addOptPoint(float brate, int elyrs)
brate
- The target bitrate for the optimized layer.elyrs
- The number of extra (unoptimized) layers to add after the
optimized layer.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |