Libav
Data Structures | Defines | Typedefs | Functions | Variables

libavcodec/mace.c File Reference

MACE decoder. More...

#include "avcodec.h"

Go to the source code of this file.

Data Structures

struct  ChannelData
struct  MACEContext

Defines

#define QT_8S_2_16S(x)   (((x) & 0xFF00) | (((x) >> 8) & 0xFF))

Typedefs

typedef struct ChannelData ChannelData
typedef struct MACEContext MACEContext

Functions

static int16_t mace_broken_clip_int16 (int n)
 MACE version of av_clip_int16().
static int16_t read_table (ChannelData *chd, uint8_t val, int tab_idx)
static void chomp3 (ChannelData *chd, int16_t *output, uint8_t val, int tab_idx, uint32_t numChannels)
static void chomp6 (ChannelData *chd, int16_t *output, uint8_t val, int tab_idx, uint32_t numChannels)
static av_cold int mace_decode_init (AVCodecContext *avctx)
static int mace_decode_frame (AVCodecContext *avctx, void *data, int *data_size, AVPacket *avpkt)

Variables

static const int16_t MACEtab1 [] = {-13, 8, 76, 222, 222, 76, 8, -13}
static const int16_t MACEtab3 [] = {-18, 140, 140, -18}
static const int16_t MACEtab2 [][4]
static const int16_t MACEtab4 [][2]
struct {
   const int16_t *   tab1
   const int16_t *   tab2
   int   stride
tabs []
AVCodec mace3_decoder
AVCodec mace6_decoder

Detailed Description

MACE decoder.

Definition in file mace.c.


Define Documentation

#define QT_8S_2_16S (   x)    (((x) & 0xFF00) | (((x) >> 8) & 0xFF))

Definition at line 149 of file mace.c.

Referenced by chomp3(), and chomp6().


Typedef Documentation

typedef struct ChannelData ChannelData
typedef struct MACEContext MACEContext

Function Documentation

static void chomp3 ( ChannelData chd,
int16_t *  output,
uint8_t  val,
int  tab_idx,
uint32_t  numChannels 
) [static]

Definition at line 188 of file mace.c.

Referenced by mace_decode_frame().

static void chomp6 ( ChannelData chd,
int16_t *  output,
uint8_t  val,
int  tab_idx,
uint32_t  numChannels 
) [static]

Definition at line 201 of file mace.c.

Referenced by mace_decode_frame().

static int16_t mace_broken_clip_int16 ( int  n) [inline, static]

MACE version of av_clip_int16().

We have to do this to keep binary identical output to the binary decoder.

Definition at line 163 of file mace.c.

Referenced by chomp3(), and chomp6().

static int mace_decode_frame ( AVCodecContext avctx,
void *  data,
int *  data_size,
AVPacket avpkt 
) [static]

Definition at line 237 of file mace.c.

static av_cold int mace_decode_init ( AVCodecContext avctx) [static]

Definition at line 229 of file mace.c.

static int16_t read_table ( ChannelData chd,
uint8_t  val,
int  tab_idx 
) [static]

Definition at line 173 of file mace.c.

Referenced by chomp3(), and chomp6().


Variable Documentation

Initial value:
 {
    "mace3",
    AVMEDIA_TYPE_AUDIO,
    CODEC_ID_MACE3,
    sizeof(MACEContext),
    mace_decode_init,
    NULL,
    NULL,
    mace_decode_frame,
    .long_name = NULL_IF_CONFIG_SMALL("MACE (Macintosh Audio Compression/Expansion) 3:1"),
}

Definition at line 282 of file mace.c.

Initial value:
 {
    "mace6",
    AVMEDIA_TYPE_AUDIO,
    CODEC_ID_MACE6,
    sizeof(MACEContext),
    mace_decode_init,
    NULL,
    NULL,
    mace_decode_frame,
    .long_name = NULL_IF_CONFIG_SMALL("MACE (Macintosh Audio Compression/Expansion) 6:1"),
}

Definition at line 294 of file mace.c.

const int16_t MACEtab1[] = {-13, 8, 76, 222, 222, 76, 8, -13} [static]

Definition at line 35 of file mace.c.

const int16_t MACEtab2[][4] [static]

Definition at line 39 of file mace.c.

const int16_t MACEtab3[] = {-18, 140, 140, -18} [static]

Definition at line 37 of file mace.c.

const int16_t MACEtab4[][2] [static]

Definition at line 106 of file mace.c.

int stride

Definition at line 142 of file mace.c.

Referenced by aasc_decode_frame(), apply_loop_filter(), avg_no_rnd_vc1_chroma_mc8_c(), avg_tpel_pixels_mc01_c(), avg_tpel_pixels_mc02_c(), avg_tpel_pixels_mc10_c(), avg_tpel_pixels_mc11_c(), avg_tpel_pixels_mc12_c(), avg_tpel_pixels_mc20_c(), avg_tpel_pixels_mc21_c(), avg_tpel_pixels_mc22_c(), avs_decode_frame(), bink_decode_plane(), bitplane_decoding(), biweight_h264_WxH_altivec(), block_cmp(), cavs_idct8_add_c(), cdg_copy_rect_buf(), cdg_scroll(), cdg_tile_block(), check_bidir_mv(), cmp_direct_inline(), cmp_inline(), copy_picture_attributes(), copy_region_enc(), DECLARE_ALIGNED(), DECLARE_ASM_CONST(), decode(), decode_13(), decode_frame(), decode_i2_frame(), decode_i_frame(), decode_p_block(), decode_p_frame(), decode_rowskip(), DEF(), deInterlaceBlendLinear_SSE2(), deInterlaceFF_SSE2(), deInterlaceInterpolateCubic_SSE2(), deInterlaceInterpolateLinear_SSE2(), deInterlaceL5_SSE2(), deInterlaceMedian_SSE2(), dequant(), dering_SSE2(), diff_pixels_altivec(), diff_pixels_c(), diff_pixels_mmx(), diff_pixels_mvi(), do_a_deblock_C(), doHorizDefFilter_C(), doHorizLowPass_C(), doVertDefFilter_SSE2(), doVertLowPass_altivec(), doVertLowPass_SSE2(), draw_line(), draw_n_color(), duplicate_SSE2(), encode_block(), encode_frame(), ff_apply_vector_2x2(), ff_apply_vector_4x4(), ff_ccitt_unpack(), ff_gmc_c(), ff_h263_decode_mb(), ff_h264_biweight_WxH_mmx2(), ff_h264_idct8_add_c(), ff_h264_idct8_dc_add_c(), ff_h264_idct8_dc_add_mmx2(), ff_h264_idct_add_altivec(), ff_h264_idct_add_mmx(), ff_h264_idct_dc_add_c(), ff_h264_idct_dc_add_mmx2(), ff_h264_weight_WxH_mmx2(), ff_init_me(), ff_jpegls_decode_picture(), ff_vp3_h_loop_filter_c(), ff_vp3_h_loop_filter_mmx2(), ff_vp3_idct_add_altivec(), ff_vp3_idct_put_altivec(), ff_vp3_v_loop_filter_c(), ff_vp3_v_loop_filter_mmx2(), ff_vp6_filter_diag4_c(), ff_vp6_filter_diag4_mmx(), ff_vp6_filter_diag4_sse2(), fillPlane(), filter181(), filter_mb_mbaff_edgecv(), filter_mb_mbaff_edgev(), fraps2_decode_plane(), get_dc(), get_frame_mb(), get_intra_count(), get_visual_weight(), gmc1_altivec(), gmc1_c(), gmc_c(), gmc_mmx(), guess_dc(), h261_loop_filter_c(), h263_mv4_search(), h263_v_loop_filter_c(), h263_v_loop_filter_mmx(), H264_CHROMA_MC4_TMPL(), H264_CHROMA_MC8_TMPL(), h264_h_loop_filter_luma_mmx2(), h264_idct_dc_add_internal(), h264_loop_filter_chroma_intra_mmx2(), h264_loop_filter_chroma_mmx2(), h264_loop_filter_luma_mmx2(), h_block_filter(), hadamard8_diff16_altivec(), horizX1Filter(), hpel_motion(), hpel_motion_lowres(), idct(), idct_add_altivec(), idct_internal(), idct_put(), idct_put_altivec(), init_mv4_ref(), init_ref(), interlaced_search(), ir2_decode_plane(), ir2_decode_plane_inter(), isHorizDC_C(), isHorizMinMaxOk_C(), isVertDC_C(), isVertMinMaxOk_C(), loco_decode_plane(), loco_predict(), ls_decode_line(), ls_encode_line(), main(), MC_avg_no_round_o_16_vis(), MC_avg_no_round_o_8_vis(), MC_avg_no_round_x_16_vis(), MC_avg_no_round_x_8_vis(), MC_avg_no_round_xy_16_vis(), MC_avg_no_round_xy_8_vis(), MC_avg_no_round_y_16_vis(), MC_avg_no_round_y_8_vis(), MC_avg_o_16_vis(), MC_avg_o_8_vis(), MC_avg_x_16_vis(), MC_avg_x_8_vis(), MC_avg_xy_16_vis(), MC_avg_xy_8_vis(), MC_avg_y_16_vis(), MC_avg_y_8_vis(), mc_block(), MC_put_no_round_o_16_vis(), MC_put_no_round_o_8_vis(), MC_put_no_round_x_16_vis(), MC_put_no_round_x_8_vis(), MC_put_no_round_xy_16_vis(), MC_put_no_round_xy_8_vis(), MC_put_no_round_y_16_vis(), MC_put_no_round_y_8_vis(), MC_put_o_16_vis(), MC_put_o_8_vis(), MC_put_x_16_vis(), MC_put_x_8_vis(), MC_put_xy_16_vis(), MC_put_xy_8_vis(), MC_put_y_16_vis(), MC_put_y_8_vis(), mca(), mcdc(), mpeg4_decode_partition_a(), msvideo1_decode_16bit(), msvideo1_decode_8bit(), nsse16_c(), nsse8_c(), paint_raw(), paint_rect(), pcx_decode_frame(), postProcess_SSE2(), pp_get_context(), pred16x16_128_dc_c(), pred16x16_dc_c(), pred16x16_horizontal_c(), pred16x16_left_dc_c(), pred16x16_plane_compat_c(), pred16x16_top_dc_c(), pred4x4_128_dc_c(), pred4x4_dc_c(), pred4x4_down_left_c(), pred4x4_down_left_rv40_c(), pred4x4_down_left_rv40_nodown_c(), pred4x4_down_left_svq3_c(), pred4x4_down_right_c(), pred4x4_horizontal_add_c(), pred4x4_horizontal_down_c(), pred4x4_horizontal_up_c(), pred4x4_horizontal_up_rv40_c(), pred4x4_horizontal_up_rv40_nodown_c(), pred4x4_left_dc_c(), pred4x4_top_dc_c(), pred4x4_vertical_add_c(), pred4x4_vertical_left_c(), pred4x4_vertical_left_rv40(), pred4x4_vertical_right_c(), pred8x8_128_dc_c(), pred8x8_dc_c(), pred8x8_dc_rv40_c(), pred8x8_horizontal_c(), pred8x8_left_dc_c(), pred8x8_left_dc_rv40_c(), pred8x8_plane_c(), pred8x8_top_dc_c(), pred8x8_top_dc_rv40_c(), pred8x8l_horizontal_add_c(), pred8x8l_vertical_add_c(), pred8x8l_vertical_c(), prefetch_ppc(), preview_obmc(), ptx_decode_frame(), put_cursor(), put_no_rnd_vc1_chroma_mc8_c(), put_obmc(), put_tpel_pixels_mc01_c(), put_tpel_pixels_mc02_c(), put_tpel_pixels_mc10_c(), put_tpel_pixels_mc11_c(), put_tpel_pixels_mc12_c(), put_tpel_pixels_mc20_c(), put_tpel_pixels_mc21_c(), put_tpel_pixels_mc22_c(), qpeg_decode_inter(), qpeg_decode_intra(), read_table(), reallocBuffers(), render_slice(), rl2_rle_decode(), rpza_decode_stream(), rv30_weak_loop_filter(), rv34_pred_4x4_block(), rv40_adaptive_loop_filter(), sad16_sse2(), sad8_1_mmx2(), sad8_4_mmx(), sad8_4_mmx2(), sad8_x2a_mmx2(), sad8_y2a_mmx2(), sad_hpel_motion_search(), skip_check(), smc_decode_stream(), spatial_compose53i_dy(), spatial_compose53i_init(), spatial_compose97i_dy(), spatial_compose97i_init(), spatial_decompose53i(), spatial_decompose97i(), sse(), sunrast_decode_frame(), svq1_encode_plane(), tempNoiseReducer_SSE2(), tiff_unpack_strip(), tm2_apply_deltas(), tm2_high_chroma(), txd_decode_frame(), v_block_filter(), vc1_filter_line(), vc1_h_overlap_c(), vc1_inv_trans_8x4_altivec(), vc1_v_overlap_c(), vertClassify_altivec(), vertX1Filter_SSE2(), vp56_mc(), vp56_size_changed(), vp6_block_variance(), vp6_filter(), vp6_filter_diag2(), vp6_filter_hv4(), vsad16_c(), vsse16_c(), w_c(), weight_h264_WxH_altivec(), xan_wc3_copy_pixel_run(), and xan_wc3_output_pixel_run().

const int16_t* tab1

Definition at line 142 of file mace.c.

Referenced by compute_stereo(), dequant(), and main().

const int16_t* tab2

Definition at line 142 of file mace.c.

Referenced by main().

struct { ... } tabs[] [static]

Referenced by read_table(), and very_broken_op().