FFmpeg
|
Indeo Video Interactive version 4 decoder. More...
#include "avcodec.h"
#include "get_bits.h"
#include "ivi_dsp.h"
#include "ivi_common.h"
#include "indeo4data.h"
Go to the source code of this file.
Macros | |
#define | BITSTREAM_READER_LE |
#define | IVI4_PIC_SIZE_ESC 7 |
Enumerations | |
enum | { FRAMETYPE_INTRA = 0, FRAMETYPE_INTRA1 = 1, FRAMETYPE_INTER = 2, FRAMETYPE_BIDIR = 3, FRAMETYPE_INTER_NOREF = 4, FRAMETYPE_NULL_FIRST = 5, FRAMETYPE_NULL_LAST = 6 } |
Indeo 4 frame types. More... | |
Functions | |
static int | decode_plane_subdivision (GetBitContext *gb) |
Decode subdivision of a plane. More... | |
static int | scale_tile_size (int def_size, int size_factor) |
static int | decode_pic_hdr (IVI45DecContext *ctx, AVCodecContext *avctx) |
Decode Indeo 4 picture header. More... | |
static int | decode_band_hdr (IVI45DecContext *ctx, IVIBandDesc *band, AVCodecContext *avctx) |
Decode Indeo 4 band header. More... | |
static int | decode_mb_info (IVI45DecContext *ctx, IVIBandDesc *band, IVITile *tile, AVCodecContext *avctx) |
Decode information (block type, cbp, quant delta, motion vector) for all macroblocks in the current tile. More... | |
static void | switch_buffers (IVI45DecContext *ctx) |
Rearrange decoding and reference buffers. More... | |
static int | is_nonnull_frame (IVI45DecContext *ctx) |
static av_cold int | decode_init (AVCodecContext *avctx) |
Variables | |
struct { | |
InvTransformPtr * inv_trans | |
DCTransformPtr * dc_trans | |
int is_2d_trans | |
} | transforms [18] |
AVCodec | ff_indeo4_decoder |
Detailed Description
Indeo Video Interactive version 4 decoder.
Indeo 4 data is usually transported within .avi or .mov files. Known FOURCCs: 'IV41'
Definition in file indeo4.c.
Macro Definition Documentation
#define IVI4_PIC_SIZE_ESC 7 |
Definition at line 50 of file indeo4.c.
Referenced by decode_pic_hdr().
Enumeration Type Documentation
anonymous enum |
Indeo 4 frame types.
Function Documentation
|
static |
Decode Indeo 4 band header.
- Parameters
-
[in,out] ctx pointer to the decoder context [in,out] band pointer to the band descriptor [in] avctx pointer to the AVCodecContext
- Returns
- result code: 0 = OK, negative number = error
Definition at line 281 of file indeo4.c.
Referenced by decode_init().
|
static |
|
static |
Decode information (block type, cbp, quant delta, motion vector) for all macroblocks in the current tile.
- Parameters
-
[in,out] ctx pointer to the decoder context [in,out] band pointer to the band descriptor [in,out] tile pointer to the tile descriptor [in] avctx pointer to the AVCodecContext
- Returns
- result code: 0 = OK, negative number = error
Definition at line 451 of file indeo4.c.
Referenced by decode_init().
|
static |
Decode Indeo 4 picture header.
- Parameters
-
[in,out] ctx pointer to the decoder context [in] avctx pointer to the AVCodecContext
- Returns
- result code: 0 = OK, negative number = error
Definition at line 117 of file indeo4.c.
Referenced by decode_init().
|
static |
Decode subdivision of a plane.
This is a simplified version that checks for two supported subdivisions:
- 1 wavelet band per plane, size factor 1:1, code pattern: 3
- 4 wavelet bands per plane, size factor 1:4, code pattern: 2,3,3,3,3 Anything else is either unsupported or corrupt.
- Parameters
-
[in,out] gb the GetBit context
- Returns
- number of wavelet bands or 0 on error
Definition at line 88 of file indeo4.c.
Referenced by decode_pic_hdr().
|
static |
Definition at line 617 of file indeo4.c.
Referenced by decode_init().
|
inlinestatic |
Definition at line 105 of file indeo4.c.
Referenced by decode_pic_hdr().
|
static |
Rearrange decoding and reference buffers.
- Parameters
-
[in,out] ctx pointer to the decoder context
Definition at line 586 of file indeo4.c.
Referenced by decode_init().
Variable Documentation
DCTransformPtr* dc_trans |
AVCodec ff_indeo4_decoder |
InvTransformPtr* inv_trans |
Definition at line 54 of file indeo4.c.
Referenced by decode_band_hdr().
const { ... } transforms[18] |
Referenced by decode_band_hdr().
Generated on Mon Nov 18 2024 06:52:07 for FFmpeg by 1.8.11