xine-lib 1.2.11
|
#include "config.h"
#include <stdio.h>
#include <stdlib.h>
#include <inttypes.h>
#include "mpeg2_internal.h"
#include <xine/xineutils.h>
Macros | |
#define | W1 2841 /* 2048*sqrt (2)*cos (1*pi/16) */ |
#define | W2 2676 /* 2048*sqrt (2)*cos (2*pi/16) */ |
#define | W3 2408 /* 2048*sqrt (2)*cos (3*pi/16) */ |
#define | W5 1609 /* 2048*sqrt (2)*cos (5*pi/16) */ |
#define | W6 1108 /* 2048*sqrt (2)*cos (6*pi/16) */ |
#define | W7 565 /* 2048*sqrt (2)*cos (7*pi/16) */ |
#define | CLIP(i) ((clip_lut+384)[ (i)]) |
Functions | |
static void | idct_row (int16_t *block) |
static void | idct_col (int16_t *block) |
static void | mpeg2_idct_copy_c (int16_t *block, uint8_t *dest, int stride) |
static void | mpeg2_idct_add_c (int16_t *block, uint8_t *dest, int stride) |
static void | mpeg2_idct_c (int16_t *block) |
static void | mpeg2_zero_block_c (int16_t *wblock) |
void | mpeg2_idct_init (uint32_t mm_accel) |
Variables | |
void(* | mpeg2_idct_copy )(int16_t *block, uint8_t *dest, int stride) |
void(* | mpeg2_idct_add )(int16_t *block, uint8_t *dest, int stride) |
void(* | mpeg2_idct )(int16_t *block) |
void(* | mpeg2_zero_block )(int16_t *block) |
static uint8_t | clip_lut [1024] |
#define CLIP | ( | i | ) | ((clip_lut+384)[ (i)]) |
#define W1 2841 /* 2048*sqrt (2)*cos (1*pi/16) */ |
#define W2 2676 /* 2048*sqrt (2)*cos (2*pi/16) */ |
#define W3 2408 /* 2048*sqrt (2)*cos (3*pi/16) */ |
#define W5 1609 /* 2048*sqrt (2)*cos (5*pi/16) */ |
#define W6 1108 /* 2048*sqrt (2)*cos (6*pi/16) */ |
#define W7 565 /* 2048*sqrt (2)*cos (7*pi/16) */ |
|
inlinestatic |
References W1, W2, W3, W5, W6, and W7.
Referenced by mpeg2_idct_add_c(), mpeg2_idct_c(), and mpeg2_idct_copy_c().
|
inlinestatic |
References W1, W2, W3, W5, W6, and W7.
Referenced by mpeg2_idct_add_c(), mpeg2_idct_c(), and mpeg2_idct_copy_c().
|
static |
References CLIP, idct_col(), and idct_row().
Referenced by mpeg2_idct_init().
|
static |
References idct_col(), and idct_row().
Referenced by mpeg2_idct_init().
|
static |
References CLIP, idct_col(), and idct_row().
Referenced by mpeg2_idct_init().
void mpeg2_idct_init | ( | uint32_t | mm_accel | ) |
References clip_lut, MM_ACCEL_MLIB, MM_ACCEL_PPC_ALTIVEC, MM_ACCEL_X86_MMX, MM_ACCEL_X86_MMXEXT, mpeg2_idct, mpeg2_idct_add, mpeg2_idct_add_altivec(), mpeg2_idct_add_c(), mpeg2_idct_add_mlib(), mpeg2_idct_add_mlib_non_ieee(), mpeg2_idct_add_mmx(), mpeg2_idct_add_mmxext(), mpeg2_idct_altivec_init(), mpeg2_idct_c(), mpeg2_idct_copy, mpeg2_idct_copy_altivec(), mpeg2_idct_copy_c(), mpeg2_idct_copy_mlib_non_ieee(), mpeg2_idct_copy_mmx(), mpeg2_idct_copy_mmxext(), mpeg2_idct_mlib(), mpeg2_idct_mmx(), mpeg2_idct_mmx_init(), mpeg2_idct_mmxext(), mpeg2_zero_block, mpeg2_zero_block_c(), mpeg2_zero_block_mmx(), and NULL.
Referenced by mpeg2_accel(), and mpeg2_init().
|
static |
Referenced by mpeg2_idct_init().
|
static |
Referenced by mpeg2_idct_init().
void(* mpeg2_idct) (int16_t *block) | ( | int16_t * | block | ) |
Referenced by mpeg2_idct_init(), slice_xvmc_intra_DCT(), and slice_xvmc_non_intra_DCT().
void(* mpeg2_idct_add) (int16_t *block, uint8_t *dest, int stride) | ( | int16_t * | block, |
uint8_t * | dest, | ||
int | stride | ||
) |
Referenced by mpeg2_idct_init().
void(* mpeg2_idct_copy) (int16_t *block, uint8_t *dest, int stride) | ( | int16_t * | block, |
uint8_t * | dest, | ||
int | stride | ||
) |
Referenced by mpeg2_idct_init().
void(* mpeg2_zero_block) (int16_t *block) | ( | int16_t * | block | ) |
Referenced by mpeg2_idct_init(), slice_xvmc_intra_DCT(), and slice_xvmc_non_intra_DCT().