#include "avcodec.h"
#include "get_bits.h"
#include "dsputil.h"
#include "ivi_dsp.h"
#include "ivi_common.h"
#include "indeo4data.h"
Go to the source code of this file.
Defines | |
| #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.   | |
| 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.   | |
| static int | decode_band_hdr (IVI45DecContext *ctx, IVIBandDesc *band, AVCodecContext *avctx) | 
| Decode Indeo 4 band header.   | |
| 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.   | |
| static void | switch_buffers (IVI45DecContext *ctx) | 
| Rearrange decoding and reference buffers.   | |
| 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 | 
Indeo 4 data is usually transported within .avi or .mov files. Known FOURCCs: 'IV41'
Definition in file indeo4.c.
| #define IVI4_PIC_SIZE_ESC 7 | 
| anonymous enum | 
Indeo 4 frame types.
| static int decode_band_hdr | ( | IVI45DecContext * | ctx, | |
| IVIBandDesc * | band, | |||
| AVCodecContext * | avctx | |||
| ) |  [static] | 
        
Decode Indeo 4 band header.
| [in,out] | ctx | pointer to the decoder context | 
| [in,out] | band | pointer to the band descriptor | 
| [in] | avctx | pointer to the AVCodecContext | 
Definition at line 281 of file indeo4.c.
Referenced by decode_init().
| static av_cold int decode_init | ( | AVCodecContext * | avctx | ) |  [static] | 
        
| static int decode_mb_info | ( | IVI45DecContext * | ctx, | |
| IVIBandDesc * | band, | |||
| IVITile * | tile, | |||
| AVCodecContext * | avctx | |||
| ) |  [static] | 
        
Decode information (block type, cbp, quant delta, motion vector) for all macroblocks in the current tile.
| [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 | 
Definition at line 441 of file indeo4.c.
Referenced by decode_init().
| static int decode_pic_hdr | ( | IVI45DecContext * | ctx, | |
| AVCodecContext * | avctx | |||
| ) |  [static] | 
        
Decode Indeo 4 picture header.
| [in,out] | ctx | pointer to the decoder context | 
| [in] | avctx | pointer to the AVCodecContext | 
Definition at line 118 of file indeo4.c.
Referenced by decode_init().
| static int decode_plane_subdivision | ( | GetBitContext * | gb | ) |  [static] | 
        
Decode subdivision of a plane.
This is a simplified version that checks for two supported subdivisions:
| [in,out] | gb | the GetBit context | 
Definition at line 89 of file indeo4.c.
Referenced by decode_pic_hdr().
| static int is_nonnull_frame | ( | IVI45DecContext * | ctx | ) |  [static] | 
        
| static void switch_buffers | ( | IVI45DecContext * | ctx | ) |  [static] | 
        
Rearrange decoding and reference buffers.
| [in,out] | ctx | pointer to the decoder context | 
Definition at line 576 of file indeo4.c.
Referenced by decode_init().
Initial value:
 {
    .name           = "indeo4",
    .type           = AVMEDIA_TYPE_VIDEO,
    .id             = AV_CODEC_ID_INDEO4,
    .priv_data_size = sizeof(IVI45DecContext),
    .init           = decode_init,
    .close          = ff_ivi_decode_close,
    .decode         = ff_ivi_decode_frame,
    .long_name      = NULL_IF_CONFIG_SMALL("Intel Indeo Video Interactive 4"),
}
struct { ... }   transforms[18] [static]           | 
        
Referenced by decode_band_hdr().
 1.5.8