libavcodec/eamad.c File Reference
Electronic Arts Madcow Video Decoder by Peter Ross <
pross@xvid.org>.  
More...
#include "avcodec.h"
#include "get_bits.h"
#include "dsputil.h"
#include "aandcttab.h"
#include "mpeg12.h"
#include "mpeg12data.h"
#include "libavutil/imgutils.h"
Go to the source code of this file.
 | 
 Data Structures | 
| struct   | MadContext | 
 Defines | 
| #define  | EA_PREAMBLE_SIZE   8 | 
| #define  | MADk_TAG   MKTAG('M', 'A', 'D', 'k') | 
| #define  | MADm_TAG   MKTAG('M', 'A', 'D', 'm') | 
| #define  | MADe_TAG   MKTAG('M', 'A', 'D', 'e') | 
 Functions | 
| static void  | bswap16_buf (uint16_t *dst, const uint16_t *src, int count) | 
| static av_cold int  | decode_init (AVCodecContext *avctx) | 
| static void  | comp (unsigned char *dst, int dst_stride, unsigned char *src, int src_stride, int add) | 
| static void  | comp_block (MadContext *t, int mb_x, int mb_y, int j, int mv_x, int mv_y, int add) | 
| static void  | idct_put (MadContext *t, DCTELEM *block, int mb_x, int mb_y, int j) | 
| static void  | decode_block_intra (MadContext *t, DCTELEM *block) | 
| static int  | decode_motion (GetBitContext *gb) | 
| static void  | decode_mb (MadContext *t, int inter) | 
| static void  | calc_intra_matrix (MadContext *t, int qscale) | 
| static int  | decode_frame (AVCodecContext *avctx, void *data, int *data_size, AVPacket *avpkt) | 
| static av_cold int  | decode_end (AVCodecContext *avctx) | 
 Variables | 
| AVCodec  | ff_eamad_decoder | 
Detailed Description
Electronic Arts Madcow Video Decoder by Peter Ross <
pross@xvid.org>. 
Technical details here: http://wiki.multimedia.cx/index.php?title=Electronic_Arts_MAD 
Definition in file eamad.c.
Define Documentation
      
        
          | #define EA_PREAMBLE_SIZE   8           | 
        
      
 
 
      
        
          | #define MADe_TAG   MKTAG('M', 'A', 'D', 'e')           | 
        
      
 
 
      
        
          | #define MADk_TAG   MKTAG('M', 'A', 'D', 'k')           | 
        
      
 
 
      
        
          | #define MADm_TAG   MKTAG('M', 'A', 'D', 'm')           | 
        
      
 
 
Function Documentation
      
        
          | static void bswap16_buf            | 
          ( | 
          uint16_t *  | 
           dst,  | 
        
        
           | 
           | 
          const uint16_t *  | 
           src,  | 
        
        
           | 
           | 
          int  | 
           count |   | 
        
        
           | 
          ) | 
           |  |  [static] | 
        
      
 
 
      
        
          | static void calc_intra_matrix            | 
          ( | 
          MadContext *  | 
           t,  | 
        
        
           | 
           | 
          int  | 
           qscale |   | 
        
        
           | 
          ) | 
           |  |  [static] | 
        
      
 
 
      
        
          | static void comp            | 
          ( | 
          unsigned char *  | 
           dst,  | 
        
        
           | 
           | 
          int  | 
           dst_stride,  | 
        
        
           | 
           | 
          unsigned char *  | 
           src,  | 
        
        
           | 
           | 
          int  | 
           src_stride,  | 
        
        
           | 
           | 
          int  | 
           add |   | 
        
        
           | 
          ) | 
           |  |  [inline, static] | 
        
      
 
Definition at line 74 of file eamad.c.
Referenced by av_image_fill_max_pixsteps(), av_read_image_line(), av_write_image_line(), bmp_decode_frame(), comp_block(), config_props(), do_audio_out(), ff_interleave_compare_dts(), fill_coding_method_array(), find_c_packed_planar_out_funcs(), vp5_parse_vector_adjustment(), vp5_parse_vector_models(), vp6_parse_vector_adjustment(), and vp6_parse_vector_models().
 
 
      
        
          | static void comp_block            | 
          ( | 
          MadContext *  | 
           t,  | 
        
        
           | 
           | 
          int  | 
           mb_x,  | 
        
        
           | 
           | 
          int  | 
           mb_y,  | 
        
        
           | 
           | 
          int  | 
           j,  | 
        
        
           | 
           | 
          int  | 
           mv_x,  | 
        
        
           | 
           | 
          int  | 
           mv_y,  | 
        
        
           | 
           | 
          int  | 
           add |   | 
        
        
           | 
          ) | 
           |  |  [inline, static] | 
        
      
 
 
      
        
          | static void decode_mb            | 
          ( | 
          MadContext *  | 
           t,  | 
        
        
           | 
           | 
          int  | 
           inter |   | 
        
        
           | 
          ) | 
           |  |  [static] | 
        
      
 
 
      
        
          | static void idct_put            | 
          ( | 
          MadContext *  | 
           t,  | 
        
        
           | 
           | 
          DCTELEM *  | 
           block,  | 
        
        
           | 
           | 
          int  | 
           mb_x,  | 
        
        
           | 
           | 
          int  | 
           mb_y,  | 
        
        
           | 
           | 
          int  | 
           j |   | 
        
        
           | 
          ) | 
           |  |  [inline, static] | 
        
      
 
 
Variable Documentation
Initial value:
Definition at line 319 of file eamad.c.