Mercurial > libavcodec.hg
comparison mpegvideo_enc.c @ 5789:a40edc95456d libavcodec
export convert_matrix and add ff_ prefix
author | bcoudurier |
---|---|
date | Mon, 08 Oct 2007 09:14:46 +0000 |
parents | e5b6e68deadc |
children | 4e3c522ca492 |
comparison
equal
deleted
inserted
replaced
5788:a3a2968e16ad | 5789:a40edc95456d |
---|---|
64 static uint8_t default_mv_penalty[MAX_FCODE+1][MAX_MV*2+1]; | 64 static uint8_t default_mv_penalty[MAX_FCODE+1][MAX_MV*2+1]; |
65 static uint8_t default_fcode_tab[MAX_MV*2+1]; | 65 static uint8_t default_fcode_tab[MAX_MV*2+1]; |
66 | 66 |
67 enum PixelFormat ff_yuv420p_list[2]= {PIX_FMT_YUV420P, -1}; | 67 enum PixelFormat ff_yuv420p_list[2]= {PIX_FMT_YUV420P, -1}; |
68 | 68 |
69 static void convert_matrix(DSPContext *dsp, int (*qmat)[64], uint16_t (*qmat16)[2][64], | 69 void ff_convert_matrix(DSPContext *dsp, int (*qmat)[64], uint16_t (*qmat16)[2][64], |
70 const uint16_t *quant_matrix, int bias, int qmin, int qmax, int intra) | 70 const uint16_t *quant_matrix, int bias, int qmin, int qmax, int intra) |
71 { | 71 { |
72 int qscale; | 72 int qscale; |
73 int shift=0; | 73 int shift=0; |
74 | 74 |
714 } | 714 } |
715 | 715 |
716 /* precompute matrix */ | 716 /* precompute matrix */ |
717 /* for mjpeg, we do include qscale in the matrix */ | 717 /* for mjpeg, we do include qscale in the matrix */ |
718 if (s->out_format != FMT_MJPEG) { | 718 if (s->out_format != FMT_MJPEG) { |
719 convert_matrix(&s->dsp, s->q_intra_matrix, s->q_intra_matrix16, | 719 ff_convert_matrix(&s->dsp, s->q_intra_matrix, s->q_intra_matrix16, |
720 s->intra_matrix, s->intra_quant_bias, avctx->qmin, 31, 1); | 720 s->intra_matrix, s->intra_quant_bias, avctx->qmin, 31, 1); |
721 convert_matrix(&s->dsp, s->q_inter_matrix, s->q_inter_matrix16, | 721 ff_convert_matrix(&s->dsp, s->q_inter_matrix, s->q_inter_matrix16, |
722 s->inter_matrix, s->inter_quant_bias, avctx->qmin, 31, 0); | 722 s->inter_matrix, s->inter_quant_bias, avctx->qmin, 31, 0); |
723 } | 723 } |
724 | 724 |
725 if(ff_rate_control_init(s) < 0) | 725 if(ff_rate_control_init(s) < 0) |
726 return -1; | 726 return -1; |
2859 for(i=1;i<64;i++){ | 2859 for(i=1;i<64;i++){ |
2860 int j= s->dsp.idct_permutation[i]; | 2860 int j= s->dsp.idct_permutation[i]; |
2861 | 2861 |
2862 s->intra_matrix[j] = av_clip_uint8((ff_mpeg1_default_intra_matrix[i] * s->qscale) >> 3); | 2862 s->intra_matrix[j] = av_clip_uint8((ff_mpeg1_default_intra_matrix[i] * s->qscale) >> 3); |
2863 } | 2863 } |
2864 convert_matrix(&s->dsp, s->q_intra_matrix, s->q_intra_matrix16, | 2864 ff_convert_matrix(&s->dsp, s->q_intra_matrix, s->q_intra_matrix16, |
2865 s->intra_matrix, s->intra_quant_bias, 8, 8, 1); | 2865 s->intra_matrix, s->intra_quant_bias, 8, 8, 1); |
2866 s->qscale= 8; | 2866 s->qscale= 8; |
2867 } | 2867 } |
2868 | 2868 |
2869 //FIXME var duplication | 2869 //FIXME var duplication |