#include <stdlib.h>
#include <stdarg.h>
#include <string.h>
#include <assert.h>
#include <time.h>
#include <sys/timeb.h>
#include "win32.h"
#include "defines.h"
#include "ifunctions.h"
#include "parsetcommon.h"
#include "types.h"
#include "io_image.h"
#include "frame.h"
#include "distortion.h"
#include "io_video.h"

Go to the source code of this file.
Data Structures | |
| struct | pix_pos |
| struct | DecodingEnvironment |
| struct to characterize the state of the arithmetic coding engine More... | |
| struct | motion_params |
| definition of motion parameters More... | |
| struct | BiContextType |
| struct for context management More... | |
| struct | MotionInfoContexts |
| struct | TextureInfoContexts |
| struct | DecRefPicMarking_s |
| Buffer structure for decoded reference picture marking commands. More... | |
| struct | pic_motion_params2 |
| definition of pic motion parameters More... | |
| struct | MotionVector |
| Motion Vector structure. More... | |
| struct | macroblock |
| Macroblock. More... | |
| struct | syntaxelement |
| Syntaxelement. More... | |
| struct | Bitstream |
| Bitstream. More... | |
| struct | datapartition |
| DataPartition. More... | |
| struct | slice |
| Slice. More... | |
| struct | img_par |
| struct | snr_par |
| struct | inp_par |
| struct | old_slice_par |
| struct | decoder_params |
Defines | |
| #define | ET_SIZE 300 |
| #define | NUM_MB_TYPE_CTX 11 |
| #define | NUM_B8_TYPE_CTX 9 |
| #define | NUM_MV_RES_CTX 10 |
| #define | NUM_REF_NO_CTX 6 |
| #define | NUM_DELTA_QP_CTX 4 |
| #define | NUM_MB_AFF_CTX 4 |
| #define | NUM_TRANSFORM_SIZE_CTX 3 |
| #define | NUM_IPR_CTX 2 |
| #define | NUM_CIPR_CTX 4 |
| #define | NUM_CBP_CTX 4 |
| #define | NUM_BCBP_CTX 4 |
| #define | NUM_MAP_CTX 15 |
| #define | NUM_LAST_CTX 15 |
| #define | NUM_ONE_CTX 5 |
| #define | NUM_ABS_CTX 5 |
Typedefs | |
| typedef struct pix_pos | PixelPos |
| typedef DecodingEnvironment * | DecodingEnvironmentPtr |
| typedef struct motion_params | MotionParams |
| typedef BiContextType * | BiContextTypePtr |
| typedef struct DecRefPicMarking_s | DecRefPicMarking_t |
| typedef struct pic_motion_params2 | PicMotionParams2 |
| typedef struct macroblock | Macroblock |
| typedef struct syntaxelement | SyntaxElement |
| typedef struct datapartition | DataPartition |
| typedef struct slice | Slice |
| typedef struct img_par | ImageParameters |
| typedef struct snr_par | SNRParameters |
| typedef struct inp_par | InputParameters |
| typedef struct old_slice_par | OldSliceParams |
| typedef struct decoder_params | DecoderParams |
Enumerations | |
| enum | Color_Component { LumaComp = 0, CrComp = 1, CbComp = 2 } |
Functions | |
| void | error (char *text, int code) |
| int | init_global_buffers (ImageParameters *p_Img) |
| void | free_global_buffers (ImageParameters *p_Img) |
| int | RBSPtoSODB (byte *streamBuffer, int last_byte_pos) |
| int | EBSPtoRBSP (byte *streamBuffer, int end_bytepos, int begin_bytepos) |
| void | FreePartition (DataPartition *dp, int n) |
| DataPartition * | AllocPartition (int n) |
| void | tracebits (const char *trace_str, int len, int info, int value1) |
| void | tracebits2 (const char *trace_str, int len, int info) |
| unsigned | CeilLog2 (unsigned uiVal) |
| unsigned | CeilLog2_sf (unsigned uiVal) |
| void | change_plane_JV (ImageParameters *p_Img, int nplane) |
| void | make_frame_picture_JV (ImageParameters *p_Img) |
Variables | |
| int ** | PicPos |
| char | errortext [ET_SIZE] |
| DecoderParams * | p_Dec |
Telenor Satellite Services Keysers gt.13 tel.: +47 23 13 86 98 N-0130 Oslo,Norway fax.: +47 22 77 79 80
Rickard Sjoberg <rickard.sjoberg@era.ericsson.se>
Ericsson Radio Systems KI/ERA/T/VV 164 80 Stockholm, Sweden
Definition in file global.h.
| #define ET_SIZE 300 |
size of error text buffer
Definition at line 49 of file global.h.
Referenced by AllocPartition(), arideco_delete_decoding_environment(), Configure(), init_conf(), malloc_slice(), no_mem_exit(), OpenAnnexBFile(), OpenFiles(), OpenRTPFile(), read_next_nalu(), ReadFrameConcatenated(), and Report().
| typedef struct datapartition DataPartition |
DataPartition.
| typedef struct DecRefPicMarking_s DecRefPicMarking_t |
Buffer structure for decoded reference picture marking commands.
| typedef struct macroblock Macroblock |
Macroblock.
| typedef struct motion_params MotionParams |
definition of motion parameters
| typedef struct pic_motion_params2 PicMotionParams2 |
definition of pic motion parameters
| typedef struct syntaxelement SyntaxElement |
Syntaxelement.
| DataPartition* AllocPartition | ( | int | n | ) |
Allocates a stand-alone partition structure. Structure should be freed by FreePartition(); data structures.
Definition at line 900 of file ldecod.c.
References error(), errortext, ET_SIZE, MAX_CODED_FRAME_SIZE, and Bitstream::streamBuffer.
Referenced by malloc_slice().

| unsigned CeilLog2 | ( | unsigned | uiVal | ) |
calculate Ceil(Log2(uiVal))
Definition at line 39 of file header.c.
Referenced by interpret_motion_constrained_slice_group_set_info(), and RestOfSliceHeader().
| void change_plane_JV | ( | ImageParameters * | p_Img, | |
| int | nplane | |||
| ) |
change target plane for 4:4:4 Independent mode
Definition at line 5610 of file macroblock.c.
References slice::Co_located_JV.
Referenced by decode_one_slice(), and exit_picture().
| int EBSPtoRBSP | ( | byte * | streamBuffer, | |
| int | end_bytepos, | |||
| int | begin_bytepos | |||
| ) |
Converts Encapsulated Byte Sequence Packets to RBSP.
| streamBuffer | pointer to data stream | |
| end_bytepos | size of data stream | |
| begin_bytepos | Position after beginning |
Definition at line 85 of file nal.c.
Referenced by NALUtoRBSP().
| void error | ( | char * | text, | |
| int | code | |||
| ) |
Error handling procedure. Print error message to stderr and exit with supplied code.
| text | Error message | |
| code | Exit code |
Definition at line 93 of file ldecod.c.
References flush_dpb().
Referenced by adaptive_memory_management(), AllocPartition(), arideco_delete_decoding_environment(), buf2img_basic(), buf2img_bitshift(), buf2img_endian(), buffer2img(), check_num_ref(), conf_read_check(), Configure(), decode_one_component_b_slice(), decode_poc(), FmoGenerateMapUnitToSliceGroupMap(), free_mem1Dpel(), free_mem2D(), free_mem2Ddist(), free_mem2Ddouble(), free_mem2Dint(), free_mem2Dint64(), free_mem2Dlm(), free_mem2Dmp(), free_mem2Dmv(), free_mem2Dodouble(), free_mem2Doint(), free_mem2Dolm(), free_mem2Dpel(), free_mem2Dquant(), free_mem2Dshort(), free_mem2Duint16(), free_mem3D(), free_mem3Ddouble(), free_mem3Dint(), free_mem3Dint64(), free_mem3Dmp(), free_mem3Dmv(), free_mem3Dodouble(), free_mem3Doint(), free_mem3Dpel(), free_mem3Dquant(), free_mem3Dshort(), free_mem3Duint16(), free_mem4D(), free_mem4Dint(), free_mem4Dmv(), free_mem4Dpel(), free_mem4Dquant(), free_mem4Dshort(), free_mem4Duint16(), free_mem5Dint(), free_mem5Dmv(), free_mem5Dpel(), free_mem5Dquant(), free_mem5Dshort(), free_mem6Dshort(), free_mem7Dshort(), free_offset_mem2Dshort(), get_smallest_poc(), getDpbSize(), img2buf_endian(), init_conf(), init_dpb(), init_picture(), initBitsFile(), interpret_picture_timing_info(), intra16x16_hor_pred(), intra16x16_plane_pred(), intra16x16_vert_pred(), intrapred_chroma(), malloc_slice(), mm_assign_long_term_frame_idx(), no_mem_exit(), OpenAnnexBFile(), OpenFiles(), OpenRTPFile(), output_one_frame_from_dpb(), predict_nnz(), read_ipred_modes(), read_motion_info_from_NAL_b_slice(), read_new_slice(), read_next_nalu(), readCoeff4x4_CAVLC(), ReadFrameConcatenated(), ReadFrameSeparate(), ReadTIFFIFDEntry(), remove_frame_from_dpb(), reorder_ref_pic_list(), Report(), RestOfSliceHeader(), start_macroblock(), store_picture_in_dpb(), and write_out_picture().

| void free_global_buffers | ( | ImageParameters * | p_Img | ) |
Free allocated memory of frame size related global buffers buffers are defined in global.h, allocated memory is allocated in int init_global_buffers().
Definition at line 1142 of file ldecod.c.
References free_mem2D(), free_mem2Dint(), free_mem2Dpel(), free_mem3Dpel(), and free_mem4D().
Referenced by init_global_buffers(), and main().

| void FreePartition | ( | DataPartition * | dp, | |
| int | n | |||
| ) |
Frees a partition structure (array).
Definition at line 951 of file ldecod.c.
References Bitstream::streamBuffer.
Referenced by free_slice().
| int init_global_buffers | ( | ImageParameters * | p_Img | ) |
Dynamic memory allocation of frame size related global buffers buffers are defined in global.h, allocated memory must be freed in void free_global_buffers().
Helper array to access macroblock positions. We add 1 to also consider last MB.
Definition at line 1066 of file ldecod.c.
References free_global_buffers(), get_mem2D(), get_mem2Dint(), get_mem2Dpel(), get_mem3Dpel(), get_mem4D(), init_qp_process(), no_mem_exit(), and YUV400.
Referenced by activate_sps().

| void make_frame_picture_JV | ( | ImageParameters * | p_Img | ) |
make frame picture from each plane data for 4:4:4 Independent mode
Definition at line 5626 of file macroblock.c.
References free_storable_picture().
Referenced by exit_picture().

| int RBSPtoSODB | ( | byte * | streamBuffer, | |
| int | last_byte_pos | |||
| ) |
Converts RBSP to string of data bits.
| streamBuffer | pointer to buffer containing data | |
| last_byte_pos | position of the last byte containing data. |
Definition at line 34 of file nal.c.
Referenced by read_new_slice().
| char errortext[ET_SIZE] |
buffer for error message for exit with error()
Definition at line 50 of file global.h.
Referenced by AllocPartition(), arideco_delete_decoding_environment(), Configure(), init_conf(), malloc_slice(), no_mem_exit(), OpenAnnexBFile(), OpenFiles(), OpenRTPFile(), read_next_nalu(), ReadFrameConcatenated(), and Report().