Dirac - A Video Codec
Created by the British Broadcasting Corporation.
common.h File Reference
#include <libdirac_common/arrays.h>
#include <libdirac_common/common_types.h>
#include <libdirac_common/dirac_assertions.h>
#include <vector>
#include <cmath>
Include dependency graph for common.h:
This graph shows which files directly or indirectly include this file:
Go to the source code of this file.
Namespaces
Classes
Enumerations
- enum PredMode {
INTRA,
REF1_ONLY,
REF2_ONLY,
REF1AND2,
UNDEFINED
}
- Prediction modes for blocks. More...
- enum CompSort { Y_COMP,
U_COMP,
V_COMP
}
- Types of picture component. More...
- enum AddOrSub { ADD,
SUBTRACT
}
- Addition or subtraction. More...
- enum Direction { FORWARD,
BACKWARD
}
- Forward or backward. More...
- enum CtxAliases {
SIGN0_CTX,
SIGN_POS_CTX,
SIGN_NEG_CTX,
Z_FBIN1z_CTX,
Z_FBIN1nz_CTX,
Z_FBIN2_CTX,
Z_FBIN3_CTX,
Z_FBIN4_CTX,
Z_FBIN5_CTX,
Z_FBIN6plus_CTX,
NZ_FBIN1z_CTX,
NZ_FBIN1nz_CTX,
NZ_FBIN2_CTX,
NZ_FBIN3_CTX,
NZ_FBIN4_CTX,
NZ_FBIN5_CTX,
NZ_FBIN6plus_CTX,
INFO_CTX,
BLOCK_SKIP_CTX,
Q_OFFSET_FOLLOW_CTX,
Q_OFFSET_INFO_CTX,
Q_OFFSET_SIGN_CTX,
TOTAL_COEFF_CTXS
}
- Contexts used for coefficient coding. More...
- enum MvCtxAliases {
DC_FBIN1_CTX,
DC_FBIN2plus_CTX,
DC_INFO_CTX,
DC_SIGN_CTX,
MV_FBIN1_CTX,
MV_FBIN2_CTX,
MV_FBIN3_CTX,
MV_FBIN4_CTX,
MV_FBIN5plus_CTX,
MV_INFO_CTX,
MV_SIGN_CTX,
PMODE_BIT0_CTX,
PMODE_BIT1_CTX,
MB_SPLIT_BIN1_CTX,
MB_SPLIT_BIN2_CTX,
MB_SPLIT_INFO_CTX,
TOTAL_MV_CTXS
}
- Contexts used for MV data coding. More...
Functions
Detailed Description
This file contains common classes used throughout the encoder and decoder. The main classes are the encoder and decoder parameters for controlling the encode and decode processes. These are passed throughout the codec. There are also parameter classes for sequences and frames.
Enumeration Type Documentation
|
- Enumeration values:
-
SIGN0_CTX |
|
SIGN_POS_CTX |
|
SIGN_NEG_CTX |
|
Z_FBIN1z_CTX |
|
Z_FBIN1nz_CTX |
|
Z_FBIN2_CTX |
|
Z_FBIN3_CTX |
|
Z_FBIN4_CTX |
|
Z_FBIN5_CTX |
|
Z_FBIN6plus_CTX |
|
NZ_FBIN1z_CTX |
|
NZ_FBIN1nz_CTX |
|
NZ_FBIN2_CTX |
|
NZ_FBIN3_CTX |
|
NZ_FBIN4_CTX |
|
NZ_FBIN5_CTX |
|
NZ_FBIN6plus_CTX |
|
INFO_CTX |
|
BLOCK_SKIP_CTX |
|
Q_OFFSET_FOLLOW_CTX |
|
Q_OFFSET_INFO_CTX |
|
Q_OFFSET_SIGN_CTX |
|
TOTAL_COEFF_CTXS |
|
|
|
- Enumeration values:
-
DC_FBIN1_CTX |
|
DC_FBIN2plus_CTX |
|
DC_INFO_CTX |
|
DC_SIGN_CTX |
|
MV_FBIN1_CTX |
|
MV_FBIN2_CTX |
|
MV_FBIN3_CTX |
|
MV_FBIN4_CTX |
|
MV_FBIN5plus_CTX |
|
MV_INFO_CTX |
|
MV_SIGN_CTX |
|
PMODE_BIT0_CTX |
|
PMODE_BIT1_CTX |
|
MB_SPLIT_BIN1_CTX |
|
MB_SPLIT_BIN2_CTX |
|
MB_SPLIT_INFO_CTX |
|
TOTAL_MV_CTXS |
|
|
|
- Enumeration values:
-
INTRA |
|
REF1_ONLY |
|
REF2_ONLY |
|
REF1AND2 |
|
UNDEFINED |
|
|
Function Documentation
|
- Parameters:
-
| aspect_ratio_idx | Integer corresponding to a aspect-ratio in the spec table |
- Returns:
- Valid AspectRatioType (returns ASPECT_RATIO_UNDEFINED if no valid aspect-ratio found)
|
|
- Parameters:
-
| chroma_format | Integer corresponding to a format |
- Returns:
- Valid chroma-format (returns formatNK if no valid format found)
|
|
- Parameters:
-
| frame_rate_idx | Integer corresponding to a frame-rate in the spec table |
- Returns:
- Valid FrameRateType (returns FRAMERATE_UNDEFINED if no valid frame-rate found)
|
|
- Parameters:
-
| mv_prec | Integer corresponding to a valid motion-vector precision |
- Returns:
- Valid MVPrecisionType (returns SIGNAL_RANGE_UNDEFINED if no valid precision found)
|
|
- Parameters:
-
| signal_range_idx | Integer corresponding to a signal-range in the spec table |
- Returns:
- Valid SignalRangeType (returns SIGNAL_RANGE_UNDEFINED if no valid signal-ratio found)
|
|
- Parameters:
-
| video_format | Integer corresponding to a format |
- Returns:
- Valid video-format (returns VIDEO_FORMAT_UNDEFINED if no valid format found)
|
© 2004 British Broadcasting Corporation.
Dirac code licensed under the Mozilla Public License (MPL) Version 1.1.
HTML documentation generated by Dimitri van Heesch's
excellent Doxygen tool.