diff options
author | Diego Biurrun <diego@biurrun.de> | 2012-08-26 09:57:19 +0200 |
---|---|---|
committer | Diego Biurrun <diego@biurrun.de> | 2012-08-26 14:03:56 +0200 |
commit | a6d9f9e60e090d3ef1be6c8497d3f5eaa7bd4e2e (patch) | |
tree | 1e1966f6816a51f8f8b6bc532361064857788570 /libavcodec | |
parent | ef07ac1e126b95ad7e1b56504c19b59901265c3e (diff) | |
download | ffmpeg-streaming-a6d9f9e60e090d3ef1be6c8497d3f5eaa7bd4e2e.zip ffmpeg-streaming-a6d9f9e60e090d3ef1be6c8497d3f5eaa7bd4e2e.tar.gz |
cavs: Move inline functions only used in one file out of the header
Diffstat (limited to 'libavcodec')
-rw-r--r-- | libavcodec/cavs.c | 9 | ||||
-rw-r--r-- | libavcodec/cavs.h | 48 | ||||
-rw-r--r-- | libavcodec/cavsdec.c | 39 |
3 files changed, 48 insertions, 48 deletions
diff --git a/libavcodec/cavs.c b/libavcodec/cavs.c index c3eebfa..1188974 100644 --- a/libavcodec/cavs.c +++ b/libavcodec/cavs.c @@ -328,6 +328,15 @@ static void intra_pred_lp_top(uint8_t *d,uint8_t *top,uint8_t *left,int stride) #undef LOWPASS +static inline void modify_pred(const int8_t *mod_table, int *mode) +{ + *mode = mod_table[*mode]; + if(*mode < 0) { + av_log(NULL, AV_LOG_ERROR, "Illegal intra prediction mode\n"); + *mode = 0; + } +} + void ff_cavs_modify_mb_i(AVSContext *h, int *pred_mode_uv) { /* save pred modes before they get modified */ h->pred_mode_Y[3] = h->pred_mode_Y[5]; diff --git a/libavcodec/cavs.h b/libavcodec/cavs.h index e18503b..8f5da54 100644 --- a/libavcodec/cavs.h +++ b/libavcodec/cavs.h @@ -229,25 +229,6 @@ extern const uint8_t ff_cavs_partition_flags[30]; extern const cavs_vector ff_cavs_intra_mv; extern const cavs_vector ff_cavs_dir_mv; -static inline void modify_pred(const int8_t *mod_table, int *mode) -{ - *mode = mod_table[*mode]; - if(*mode < 0) { - av_log(NULL, AV_LOG_ERROR, "Illegal intra prediction mode\n"); - *mode = 0; - } -} - -static inline void set_intra_mode_default(AVSContext *h) { - if(h->stream_revision > 0) { - h->pred_mode_Y[3] = h->pred_mode_Y[6] = NOT_AVAIL; - h->top_pred_Y[h->mbx*2+0] = h->top_pred_Y[h->mbx*2+1] = NOT_AVAIL; - } else { - h->pred_mode_Y[3] = h->pred_mode_Y[6] = INTRA_L_LP; - h->top_pred_Y[h->mbx*2+0] = h->top_pred_Y[h->mbx*2+1] = INTRA_L_LP; - } -} - static inline void set_mvs(cavs_vector *mv, enum cavs_block size) { switch(size) { case BLK_16X16: @@ -262,35 +243,6 @@ static inline void set_mvs(cavs_vector *mv, enum cavs_block size) { } } -static inline void set_mv_intra(AVSContext *h) { - h->mv[MV_FWD_X0] = ff_cavs_intra_mv; - set_mvs(&h->mv[MV_FWD_X0], BLK_16X16); - h->mv[MV_BWD_X0] = ff_cavs_intra_mv; - set_mvs(&h->mv[MV_BWD_X0], BLK_16X16); - if(h->pic_type != AV_PICTURE_TYPE_B) - h->col_type_base[h->mbidx] = I_8X8; -} - -static inline int dequant(AVSContext *h, DCTELEM *level_buf, uint8_t *run_buf, - DCTELEM *dst, int mul, int shift, int coeff_num) { - int round = 1 << (shift - 1); - int pos = -1; - const uint8_t *scantab = h->scantable.permutated; - - /* inverse scan and dequantization */ - while(--coeff_num >= 0){ - pos += run_buf[coeff_num]; - if(pos > 63) { - av_log(h->s.avctx, AV_LOG_ERROR, - "position out of block bounds at pic %d MB(%d,%d)\n", - h->picture.poc, h->mbx, h->mby); - return -1; - } - dst[scantab[pos]] = (level_buf[coeff_num]*mul + round) >> shift; - } - return 0; -} - void ff_cavs_filter(AVSContext *h, enum cavs_mb mb_type); void ff_cavs_load_intra_pred_luma(AVSContext *h, uint8_t *top, uint8_t **left, int block); diff --git a/libavcodec/cavsdec.c b/libavcodec/cavsdec.c index 8dae891..e70dad0 100644 --- a/libavcodec/cavsdec.c +++ b/libavcodec/cavsdec.c @@ -511,6 +511,26 @@ static inline int get_ue_code(GetBitContext *gb, int order) { return get_ue_golomb(gb); } +static inline int dequant(AVSContext *h, DCTELEM *level_buf, uint8_t *run_buf, + DCTELEM *dst, int mul, int shift, int coeff_num) { + int round = 1 << (shift - 1); + int pos = -1; + const uint8_t *scantab = h->scantable.permutated; + + /* inverse scan and dequantization */ + while(--coeff_num >= 0){ + pos += run_buf[coeff_num]; + if(pos > 63) { + av_log(h->s.avctx, AV_LOG_ERROR, + "position out of block bounds at pic %d MB(%d,%d)\n", + h->picture.poc, h->mbx, h->mby); + return -1; + } + dst[scantab[pos]] = (level_buf[coeff_num]*mul + round) >> shift; + } + return 0; +} + /** * decode coefficients from one 8x8 block, dequantize, inverse transform * and add them to sample block @@ -597,6 +617,15 @@ static inline int decode_residual_inter(AVSContext *h) { * ****************************************************************************/ +static inline void set_mv_intra(AVSContext *h) { + h->mv[MV_FWD_X0] = ff_cavs_intra_mv; + set_mvs(&h->mv[MV_FWD_X0], BLK_16X16); + h->mv[MV_BWD_X0] = ff_cavs_intra_mv; + set_mvs(&h->mv[MV_BWD_X0], BLK_16X16); + if(h->pic_type != AV_PICTURE_TYPE_B) + h->col_type_base[h->mbidx] = I_8X8; +} + static int decode_mb_i(AVSContext *h, int cbp_code) { GetBitContext *gb = &h->s.gb; unsigned pred_mode_uv; @@ -664,6 +693,16 @@ static int decode_mb_i(AVSContext *h, int cbp_code) { return 0; } +static inline void set_intra_mode_default(AVSContext *h) { + if(h->stream_revision > 0) { + h->pred_mode_Y[3] = h->pred_mode_Y[6] = NOT_AVAIL; + h->top_pred_Y[h->mbx*2+0] = h->top_pred_Y[h->mbx*2+1] = NOT_AVAIL; + } else { + h->pred_mode_Y[3] = h->pred_mode_Y[6] = INTRA_L_LP; + h->top_pred_Y[h->mbx*2+0] = h->top_pred_Y[h->mbx*2+1] = INTRA_L_LP; + } +} + static void decode_mb_p(AVSContext *h, enum cavs_mb mb_type) { GetBitContext *gb = &h->s.gb; int ref[4]; |